В последнее время приходится работать с большим кол-вом разнообразных cms, поэтому решил для себя оставлять маленькие простенькие подсказочки..
Работа с БД
Вставка элемента в БД:
$db =& JFactory::getDBO();
$obj = new stdClass();
$obj->param1 = $param1;
$obj->param2 = $param2;
$db->insertObject('#__table_name', $obj);
Работа с сессиями
Описывать тут нечего ![]()
$sess = JFactory::getSession();
$sess->set('param', true);
$sess->get('param');
Работа с почтой
$mailer =& JFactory::getMailer();
$config =& JFactory::getConfig();
$sender = array(
$config->getValue( 'config.mailfrom' ),
$config->getValue( 'config.fromname' )
);
$mailer->setSender($sender);
$mailer->addRecipient($_POST['email']);
$mailer->setSubject('Order details');
$mailer->isHTML(true);
$mailer->Encoding = 'base64';
$mailer->setBody($body);
$send =& $mailer->Send();
if ( $send !== true )
{
echo 'Error sending email! Please contact wish us.';
}
else
{
echo 'Order details sent to your e-mail';
}
Примечание: в качестве получателей можно указывать массив с перечнем e-mail.
Меню
Получаем название текущего пункта меню :
<?php $currentMenuName = JSite::getMenu()->getActive()->name; ?>
Получаем ID текущего пункта меню:
<?php $currentMenuId = JSite::getMenu()->getActive()->id; ?>
Получаем статус публикации текущего пункта меню, если опубликован то возвращается значение «1»:
<?php $currentMenuStatus = JSite::getMenu()->getActive()->published; ?>
Доставляем URL (не SEF) для текущего пункта меню:
<?php $currentMenuLink = JSite::getMenu()->getActive()->link ;?>
Получаем ID родителя текущего пункта меню (для верхнего уровня и на домашней странице значение будет 0):
<?php $currentMenuParent = JSite::getMenu()->getActive()->parent; ?>
Получаем значение уровня доступа для текущего пункта меню (Public = 0, Registered = 1, Special= 2):
<?php $currentMenuAccess = JSite::getMenu()->getActive()->access; ?>
Разное
Вставка визуального редактора в любом компоненте админ. панели:
$editor =& JFactory::getEditor();
echo $editor->display('content', $this->content, '550', '400', '60', '20', false);
Получение данных текущего пользователя
$user =& JFactory::getUser();
Загружаем модель того или иного компонента в файле view.html.php:
$model = $this->getModel();
эт правильно 🙂