2 вопроса по созданию плагина

dirdir

Постоялец
Регистрация
19 Мар 2012
Сообщения
112
Реакции
16
Подскажите как правильно реализовать плагин в котором происходит 2 действия

1) установка заголовка в методе onBeforeCompileHead()
2) и второе действие происходит при компоновке страницы.

Надо создать 2 метода в 1 классе?

PHP:
class plgSystemMyPlygin extends JPlugin {

function onBeforeCompileHead()
{
...  // устанавливаем куки
}

function onBeforeRender()
{
... // проверяем куки и выдаём информацию на страницу
}

}


Подскажите пожалуйста как правильно установить своё значение куки из плагина.
Запихнул в триггер. Или есть специальный метод джумалы для установки значений?


PHP:
function onBeforeCompileHead()
{
setcookie("test","Hello",time()+3600);
}
 
хммм. не совсем понял, но роде,судя по коду эта функция не установит мне куки в заголовках.
 
хммм. не совсем понял, но роде,судя по коду эта функция не установит мне куки в заголовках.
как это не установит?
Код:
case 'COOKIE' :
                        $_COOKIE[$name] = $value;
                        $_REQUEST[$name] = $value;

Есть ещё событие
onBeforeRender
 
к сожалению не устанавливается... Куки не появляется

PHP:
defined('_JEXEC') or die;
jimport('joomla.plugin.plugin');
jimport( 'joomla.environment.request' );
class plgSystemMyMeta extends JPlugin {

    function onBeforeCompileHead()
    {
    $name = 'vcount';
    $value = 100;
    $hash = 'COOKIE';
    JRequest::setVar($name, $value, $hash, true);
     }

}
 
Прям в фаерфоксе проверяю .

Setcookie() - нормально устанавливает из function onBeforeCompileHead()

А вот JRequest::setVar($name, $value, $hash, true); - никак.

Просто хотелось бы выяснить раз и навсегда как это нужно делать. Я уверен на 100% что в джумале для того есть метод.

Е ищё, всёж таки каким должен быть плагин в моём случае??? System или Content?

В книге Марк Декстера написано что мол суте плагины в нужную папку и всё будет ок... Но как быть если одна часть плагина для контента, а вторая вроде как по его книге в папке System оказывается
 
Назад
Сверху