Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 0 Ответов
  • 3152 Просмотров
*

Hronos

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Id материала в URL ZOO
« : 05.04.2013, 21:29:03 »
Здравствуйте, есть код(расположен ниже) который выводит id в url site.ru/category/id/name, а надо так site.ru/category/name-id.
Подскажите что подправить, чтобы так было.
Стоит Zoo 3.0.11
Joomla 3.0
php 5.4.12

Код
case 'item':
if (!isset($item_id))
$item_id = intval($menuparams->get('item_id', 0));
$item = $zooapp->table->item->get($item_id);

if (!isset($item)) {
$dosef = false;
$title = null;
break;
}

if (ZOO_SEF_SHOW_APP) {
$app_alias = $alias->application->translateIDToAlias($item->application_id);
$title[] = $app_alias;
}
if (ZOO_SEF_SHOW_TYPE) {
$title[] = $item->getType()->identifier;
}
$title[] = ZOO_SEF_ITEM;
if (in_array($item->getType()->identifier,explode (",", ZOO_SEF_DATE))) {
$language = & JFactory::getLanguage();
$oldLang = $language->setLanguage(JComponentHelper::getParams('com_languages')->get('site', 'en-GB'));
// $language->load();
$config =& JFactory::getConfig();
            $tzoffset = $data['config.offset'] = $config->get('config.offset');  
$date = $zooapp->date->create($item->created, $tzoffset);
foreach (explode ("-",ZOO_SEF_DATE_FORMAT) as $format) {
if(strpos($format, '%i')!== false) {
$format = str_replace('%i', sprintf("%03d",$item_id), $format);
}
$title[] = $zooapp->string->sluggify($date->Format($format));
}
$language->setLanguage($oldLang);
// $language->load();
} else {

if (ZOO_SEF_SHOW_PRIMARY && $item->getPrimaryCategoryId()) {
if (ZOO_SEF_CATEGORY_ALIAS) {
$title[] = $alias->category->translateIDToAlias((int)$item->getPrimaryCategoryId());
} else {
$category = $zooapp->table->category->get($item->getPrimaryCategoryId());
$title[] = $zooapp->string->sluggify($category->name);
}
}
if (isset($category_id)&&ZOO_SEF_SHOW_CATEGORY) {
if (ZOO_SEF_CATEGORY_ALIAS) {
$title[] = $alias->category->translateIDToAlias((int)$category_id);
} else {
$category = $zooapp->table->category->get($category_id);
$title[] = $zooapp->string->sluggify($category->name);
}
}
}


if (ZOO_SEF_ITEM_ALIAS) {
$title[] = $alias->item->translateIDToAlias((int)$item_id);
} else {
$title[] = $zooapp->string->sluggify($item->name);
}

shRemoveFromGETVarsList('category_id');
shRemoveFromGETVarsList('layout');
break;
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться