Page 1 of 1

Выбор типа плагина

Posted: Wed Aug 27, 2014 12:42 pm
by kuronokei
В общем, я не до конца понял как правильно выбирать тип создаваемого расширения.

Чем с технической точки зрения будет отличаться плагин System от Content?

По сути, создавая плагин, в классе могу определяться любые методы, как относящиеся к контенту, так и к системным функциям?
В свою очередь эти функции(методы) будут вызваны при срабатывании триггеров на эти события.

Так что 2 кода будут работать одинаково???

1 Плагин Content

Code: Select all

    class plgContentMysPlugin extends JPlugin {
     
    function onBeforeCompileHead()
       {
             }
     
    public function onContentAfterDisplay($context, &$row, &$params, $page = 0)
       {
             }
2 Плагин System

Code: Select all

    class plgSystemMysPlugin extends JPlugin {
     
    function onBeforeCompileHead()
       {
             }
     
    public function onContentAfterDisplay($context, &$row, &$params, $page = 0)
       {
             }



разница будет только
1) В какой папке будет находится плагин.
2) Очерёдность его обработки. Плагины системы - первые, плагины, контента потом, и в каких-то глубинных свойствах джумалы.

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

Есть ёщё что-то что надо знать?

Re: Выбор типа плагина

Posted: Sun Dec 14, 2014 7:18 pm
by beagler
вот здесь очень подробно о создании плагина - http://www.informit.com/articles/articl ... 8&seqNum=8

Re: Выбор типа плагина

Posted: Sun Dec 14, 2014 7:56 pm
by AlexSmirnov
Поддержка Joomla 2.5 заканчивается через две недели. Какой смысл тратить энергию на приобретение навыков разработки для версии, которая фактически прекратила жизнь?

Re: Выбор типа плагина

Posted: Sun Dec 14, 2014 8:16 pm
by beagler
Технология разработки плагинов в 3 версии практически не отличается от версии 2.5.
И Вы будете смеятся - но у меня много клиентов, которые до сих пор сидят на joomla1.5. И даже есть клиент на первой joomla - pilnikov.ru
У него она уже настолько перепилена, что он просто боится мигрировать.
И опять же, какой смысл мне переводить мой работающий проект http://aloris.ru на третью joomla?
Для новых проектов - я с Вами согласен - нужно строить на третьей

Re: Выбор типа плагина

Posted: Sun Dec 14, 2014 8:49 pm
by AlexSmirnov
beagler wrote: ...И Вы будете смеятся - но у меня много клиентов, которые до сих пор сидят на joomla1.5. И даже есть клиент на первой joomla - pilnikov.ru
У него она уже настолько перепилена, что он просто боится мигрировать.
И опять же, какой смысл мне переводить мой работающий проект http://aloris.ru на третью joomla?
Для новых проектов - я с Вами согласен - нужно строить на третьей
Вы аболютно правы. Если речь идет о клиенте на написанных под версию 2.5 костылях, то одним меньше или одним больше - роли не играет. Я ответил предположив, что автор темы спрашивает о том, как разработать плагин для массового производства в будущем, который, к примеру, можно выложить на JED и продавать на своем сайте, нацеливаясь на его установку на новых сайтах.
beagler wrote: ...Технология разработки плагинов в 3 версии практически не отличается от версии 2.5....
Судя по паре меток "since 3.1"/"начиная с 3.1" в этой вики на https://docs.joomla.org/J3.x:Creating_a ... for_Joomla, a именно
$this->db: the db object (since Joomla 3.1)
$this->app: the application object (since Joomla 3.1)
отличия имеются, но насколько этих два новых объекта важны судить Вам.

Re: Выбор типа плагина

Posted: Sun Dec 14, 2014 9:01 pm
by beagler
пока при адаптации своих расширений под J3 меняю только Jrequest на Jinput
Jrequest больше не поддерживается.