101 (2013-02-21 15:19:13 отредактировано KANekT)

Re: Вопросы по написанию плагинов

Awilum пишет:

Нужно зарелизить новую монстру, новый сайт, доработать документацию, репозиторий плагинов. много времени блин надо...

ну в какой нить онлайн блокнотик записывайте, что такая информация будет интересна разработчикам и потом когда нить выложить в документации )

я кроме разработки плагинов время от времени ни чем не могу помочь. Не тот уровень умений php
скоро будет платная версия каталога (там дерево с неограниченными уровнем вложенности), буду % перечислять от покупок... если будут сами покупки smile

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

102

Re: Вопросы по написанию плагинов

уже и без меня ответили.
для описаний 250 символов за глаза и в общий хмл их можно сувать без опасений.

Страдание фигнёй на рабочем месте развивает боковое зрение, слух, скорость реакции и бдительность в целом.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.

Поделиться

103 (2013-03-03 16:08:35 отредактировано KANekT)

Re: Вопросы по написанию плагинов

можно как то сделать так чтобы несколько переменных были доступны на всех страницах без правки ядра?

в плагине подключается

include ('client_api.php');
Plug::$api = new client_api();

потом каталог заполняется данными

Plug::$catalog = Plug::$api->exec_request('catalog')->get_responce();

нужно сделать чтобы этот объект (Plug::$catalog) был доступен на всех страницах (используется в снипетах)

если вызываются при работе Plug, то все работает. но на Pages, естественно не хочет.

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

104

Re: Вопросы по написанию плагинов

а через экшены пробовали?

Страдание фигнёй на рабочем месте развивает боковое зрение, слух, скорость реакции и бдительность в целом.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.

Поделиться

105

Re: Вопросы по написанию плагинов

El'Drako пишет:

а через экшены пробовали?

то есть ?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

106 (2013-03-03 16:51:06 отредактировано El'Drako)

Re: Вопросы по написанию плагинов

в смысле это в темплате цмс были экшены, а тут только шорткоды.
зарегить шорткод и выводить через него - код вывода будет же в классе плагина.

Страдание фигнёй на рабочем месте развивает боковое зрение, слух, скорость реакции и бдительность в целом.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.

Поделиться

107

Re: Вопросы по написанию плагинов

В новой Монстре (2.2.0) можно сделать вот так:

Registry::set('var', 'value');

и потом использовать вот так

echo Registry::get('var');

записать и запросить переменную-данные из регистра smile

Registry Class -> https://github.com/Monstra/gelato/blob/ … gistry.php

p.s. Экшены так и остались, как это было и в Template CMS

Сайт Awilum

Поделиться

108

Re: Вопросы по написанию плагинов

Установка в регистр происходит при обращению к плагину
А если к не у ни разу не обращались то будет пусто
Или я не понимаю как работает эта фича

Что такое экшены в тмс не знаю не работал

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

109 (2013-03-03 20:02:58 отредактировано El'Drako)

Re: Вопросы по написанию плагинов

премеры в коде цмс.
например, в моём плагине по работе с мускулем сделано так:
1. регим экшен dblink

Action::add('dblink', 'SIbase::goDB',1);

этот экшен вызывает функцию класса плагина:

public static function goDB() {
            
            $config = array(
                'host'    => Option::get('sib_host'),
                'username' => Option::get('sib_username'),
                'passwd' => Option::get('sib_passwd'),
                'dbname' => Option::get('sib_dbname'),
                'port' => Option::get('sib_port'),
                'socket' => Option::get('sib_socket'),
                'prefix' => Option::get('sib_prefix'),
                'charset'  => 'utf8',
                'debug' => Option::get('sib_debug'));
            if (!isset($sidb)) {
                $sidb = new goDB($config);
                goDB::setDB($sidb, "SIDB");
            }
        }

функция вешает неймспейс на класс работы с базой данных, лежащий в хелперах.
2. В любом другом плагине/классе, подключенном после первого плагина я вызываю экшен выше:

            Action::run('dblink');
            $db = goDB::getDB("SIDB");

и подключаюсь к ранее созданному классу. таким образом у меня одно подключение к базе на все плагины.

это просто иллюстрация принципа.

Страдание фигнёй на рабочем месте развивает боковое зрение, слух, скорость реакции и бдительность в целом.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.

Поделиться

110

Re: Вопросы по написанию плагинов

А как сделать привязку удаления к событию Удаления временных файлов?

нужно чтобы очищал и временные файлы расширения.

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

111

Re: Вопросы по написанию плагинов

Для сайта нужно отредактировать view из плагинов ядра.

Есть какой то гуманный способ, чтобы не следить за случайностью перезаписи отредактированных вьюшек при обновлении монстры?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

112 (2013-04-22 12:56:54 отредактировано KANekT)

Re: Вопросы по написанию плагинов

пока работает вроде бы.

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

113

Re: Вопросы по написанию плагинов

Awilum пишет:

В новой Монстре (2.2.0) можно сделать вот так:

Registry::set('var', 'value');

и потом использовать вот так

echo Registry::get('var');

записать и запросить переменную-данные из регистра smile

Registry Class -> https://github.com/Monstra/gelato/blob/ … gistry.php

ссылка битая.

а какова видимость Registry ?
Можно ли установить какое то значение в одном плагине и это где эта переменная будет видна в другом?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

114

Re: Вопросы по написанию плагинов

>>а какова видимость Registry ?
Глобальная.

>>Можно ли установить какое то значение в одном плагине и это где эта переменная будет видна в другом?
плагин должен быть загружен первым

Сайт Awilum

Поделиться

115 (2013-05-24 04:04:56 отредактировано KANekT)

Re: Вопросы по написанию плагинов

Awilum пишет:

плагин должен быть загружен первым

есть для этого какой то инструмент?

как сказать плагину чтобы он загружался первым или вторым?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

116

Re: Вопросы по написанию плагинов

есть для этого какой то инструмент?
как сказать плагину чтобы он загружался первым или вторым?

https://github.com/Awilum/monstra-cms/b … est.xml#L5

Сайт Awilum

Поделиться

117

Re: Вопросы по написанию плагинов

Awilum пишет:

есть для этого какой то инструмент?
как сказать плагину чтобы он загружался первым или вторым?

https://github.com/Awilum/monstra-cms/b … est.xml#L5

максимум как то ограничен?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

118

Re: Вопросы по написанию плагинов

>>максимум как то ограничен?
нет

Сайт Awilum

Поделиться

119

Re: Вопросы по написанию плагинов

Всем привет.
Решил допилить один плагин, но впал в ступор перед markitup'ом, а именно, хочу добавить кнопку в панель редактирования,
делаю так:

<script>
    var cust = {
        nameSpace:"paginator",

        markupSet: [
            {name:"page", key:"", openWith:"[page]" },
        ]
    }
    $(document).ready(function(){$("#editor_area").markItUp(cust);});
</script>

В принципе, всё работает, но кнопка оборачивается в кучу дивов. Это так и должно быть?
И ещё, как стилизовать "[page]" в textarea, чтоб выводилось не "[page]"(текстом), а тонкая полоска(типа more в wordpress)?

Поделиться

120 (2013-05-30 20:46:15 отредактировано AlxBuk)

Re: Вопросы по написанию плагинов

Поковыряй мой мод http://ru.forum.monstra.org/topic/508/m … rusextmod/ там надо просто в JS файл set.js добавить новые кнопки, и все просто

Сайт AlxBuk

Поделиться

121

Re: Вопросы по написанию плагинов

Как сделать так чтобы можно было в карту сайта из плагинов добавлять информацию?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

122

Re: Вопросы по написанию плагинов

дописать в плагине функцию. отдающую все пути.
переписать плагин sitemap, чтобы он обрабатывал эту функцию.

Страдание фигнёй на рабочем месте развивает боковое зрение, слух, скорость реакции и бдительность в целом.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.

Поделиться

123

Re: Вопросы по написанию плагинов

и как это сделать ?

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться

124

Re: Вопросы по написанию плагинов

сначала надо с Awilum обсудить - у меня тоже есть пара мест, где бы не помешало подобное.

предлагаю сделать что-то типа static function Plugin::Tree () { return array(uri1' => 'Название страницы', 'uri2' => 'Название страницы'); }
а sitemap соответственно подставит в выдачу дерева.

Страдание фигнёй на рабочем месте развивает боковое зрение, слух, скорость реакции и бдительность в целом.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.

Поделиться

125

Re: Вопросы по написанию плагинов

Добавил https://github.com/Awilum/monstra-cms/issues/120

думаю стоит обсуждать дальнейшею реализацию на гит хабе.

Site | GitHub | Создание форумов/решений на базе PunBB/Monstra/OGMA

Плагины распространяются по Creative Commons Attribution-NonCommercial 3.0

Сайт KANekT

Поделиться