Новости Joomla

Вышла версия 2

Вышла версия 2.0 плагина Revo Converter для Yootheme ProПлагин преобразует HTML код материала в простой макет Yootheme Pro.Это специализированное решение позволяет быстро переключаться с макета обычной страницы в редакторе Joomla на простой макет в Yootheme Pro, что позволяет перейти к макету в Page Builder за один клик, не теряя предыдущее содержание страницы (как это бывает в текущем режиме при попытке создании макета поверх существующей статьи).В настройках плагина можно включить добавление в макет элементов Хлебных крошек и Заголовка статьи. Таким образом после конвертации вы получите макет с тремя элементами: Хлебные крошки, Заголовок (с заголовком статьи), HTML (с html кодом материала как есть).Далее статью можно будет редактировать и разбирать на части уже внутри конструктора. Более сложные преобразования можно заказать у автора плагина.Разработчик - участник нашего сообщества @alexrevoСкачать и установить плагин можно бесплатно через каталог расширений Joomla Совмарт.#расширения #joomla #yootheme

Вышел JoomShoppping 5.7.0Один из популярных компонентов интернет-магазина на Joomla

Вышел JoomShoppping 5.7.0Один из популярных компонентов интернет-магазина на Joomla.30 апреля вышел релиз 5.6.2, а 15 мая его догнал релиз 5.7.0. В целом можно отметить, что команда разработки взяла курс на развитие собственного установщика расширений для JoomShopping, а так же на удобство администрирования магазина в панели администратора.👩‍💻 v.5.7.0. Что нового?- Добавлено управление платными расширениями (установка / обновление / получение ключа).- Возможность изменять позиции для аддонов. Других подробностей нет, но возможно это означает что для вывода данных аддонов стало возможно переключать позиции вывода в шаблоне JoomShopping вида
_tmp_var_bottom_price и т.д.- Улучшена форма создания клиента для администратора – введенные данные сохраняются после ошибки проверки.- Новый параметр конфигурации admin_products_search_by_prod_id_range (поиск по диапазону идентификаторов товаров (x-y)). В интерфейсе настроек его нет. Нужно включать в файле
user_config.php.- для разработки аддонов - новый метод
getAddonParam().- Добавлены новые триггеры для плагинов- Исправления ошибок.👉 v.5.6.2 (30.04.2025)- Атрибуты, характеристики - добавлена иконка в списке с подсказкой о том, что этот элемент не используется- Атрибуты, характеристики - подсчет количества товаров, где используется данная характеристика / атрибут- Библиотека обработки изображений: - - добавлена поддержка avif- - исправлена ошибка с обработкой прозрачности для webp- Добавлена новая настройка: поиск товаров администратором по коду атрибута- Добавлена кнопка "Копировать" в списке способов оплаты (опции / способы оплаты)- Шаблон товара - оптимизирована загрузка шаблона - block_image_middle, блокировка изображения с помощью большого пальца- Все поля mysql имеют значения по умолчанию- Исправления ошибок- Добавлены новые триггеры для плагинов
Скачать JoomShopping#JoomShopping #расширения

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

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Я использую модуль, чтобы выводить в статье ссылки на статьи, которые схожи за тематикой, как бы создавая перелинковку между статьями и образуя своеобразный "семантический кокон", как его называют. Полезно и логично для SEO.

Модуль подбирает 15 статей, я из них вытягиваю эти ссылки по 1-й и вставляю через каждые 10 абзацев в виде "Читайте также". Очень даже неплохо получается, если правильно статьям присваивать метки.

Есть разный способ получения этого списка. Брать статьи только у которых совпадают ВСЕ метки, или только половина, или хотя бы одна.
Так же и вывод - либо в случайном порядке, либо по количеству совпадений меток у материалов, либо же комбинация этих двух.

Если поставить в случайном порядке – ссылки будут каждый раз выводиться разные на одной и той же странице. Т.е. обновил - ссылки поменялись. А если поставить по количеству совпадений – ссылки не будут меняться, но... всех статей. Т.е. в любой статье с одинаковыми метками ссылки будут сверху вниз по статье идти одни и те же. Что тоже не прикольно.

В чём вопрос. Как бы его так сделать, чтобы модуль работал по принчипу, что ссылки подбираются не случайно, но при этом для каждой статьи они брались только из статей, которые были опубликованы ДО этой статьи.

Т.е. есть статьи А1, А2, А3,... А20. Публиковались они в таком же порядке. У всех у них одинаковые метки.

Как сделать, чтобы в статье А4 показывались только ссылки на статьи А3, А2 и А1. В статье А10, только А9, А8 и ниже (более раннеопубликованные).

 ^-^
*

sivers

  • Живу я здесь
  • 2573
  • 355 / 0
Взять ИД текущего материала, по нему вытянуть дату публикации материала. Далее, либо добавить условие в запрос модуля, либо добавить проверку по дате в цикл вывода материалов.

Если сможете поправить запрос модуля, то можно и не вытаскивать дату на первом этапе, а вставить подзапрос.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Я так понимаю, что если делать это в запросе модуля, то это где-то тут

Код
$db         = JFactory::getDbo();
$user       = JFactory::getUser();
$groups     = implode(',', $user->getAuthorisedViewLevels());
$matchtype  = $params->get('matchtype', 'all');
$maximum    = $params->get('maximum', 5);
$ordering   = $params->get('ordering', 'count');
$tagsHelper = new JHelperTags;
$prefix     = $option . '.' . $view;
$id         = $app->input->getInt('id');
$now        = JFactory::getDate()->toSql();
$nullDate   = $db->getNullDate();

$tagsToMatch = $tagsHelper->getTagIds($id, $prefix);

if (!$tagsToMatch || $tagsToMatch === null)
{
return array();
}

$tagCount = substr_count($tagsToMatch, ',') + 1;

$query = $db->getQuery(true)
->select(
array(
$db->quoteName('m.core_content_id'),
$db->quoteName('m.content_item_id'),
$db->quoteName('m.type_alias'),
'COUNT( ' . $db->quoteName('tag_id'). ') AS ' . $db->quoteName('count'),
$db->quoteName('ct.router'),
$db->quoteName('cc.core_title'),
$db->quoteName('cc.core_alias'),
$db->quoteName('cc.core_catid'),
$db->quoteName('cc.core_language'),
$db->quoteName('cc.core_params'),
)
);

$query->from($db->quoteName('#__contentitem_tag_map', 'm'));

$query->join('INNER', $db->quoteName('#__tags', 't'). ' ON m.tag_id = t.id')
->join('INNER', $db->quoteName('#__ucm_content', 'cc'). ' ON m.core_content_id = cc.core_content_id')
->join('INNER', $db->quoteName('#__content_types', 'ct'). ' ON m.type_alias = ct.type_alias');

$query->where($db->quoteName('m.tag_id'). ' IN (' . $tagsToMatch . ')');
$query->where('t.access IN (' . $groups . ')');
$query->where('(cc.core_access IN (' . $groups . ') OR cc.core_access = 0)');

// Don't show current item
$query->where('(' . $db->quoteName('m.content_item_id'). ' <> ' . $id
. ' OR ' . $db->quoteName('m.type_alias'). ' <> ' . $db->quote($prefix). ')'
);

// Only return published tags
$query->where($db->quoteName('cc.core_state'). ' = 1 ')
->where('(' . $db->quoteName('cc.core_publish_up'). '=' . $db->quote($nullDate). ' OR '
. $db->quoteName('cc.core_publish_up'). '<=' . $db->quote($now). ')'
)
->where('(' . $db->quoteName('cc.core_publish_down'). '=' . $db->quote($nullDate). ' OR '
. $db->quoteName('cc.core_publish_down'). '>=' . $db->quote($now). ')'
);

Не поможете з правкой запроса, пожалуйтса?
*

sivers

  • Живу я здесь
  • 2573
  • 355 / 0
Попробуйте заменить это:
Код
. $db->quoteName('cc.core_publish_up'). '<=' . $db->quote($now). ')'

на это:
Код
. $db->quoteName('cc.core_publish_up'). '<=(SELECT `core_publish_up` FROM `#__ucm_content` WHERE `core_content_id` = cc.core_content_id AND `core_content_item_id` = ' . $db->quote($id). '))'

тестить мне это не на чем, так что работоспособность не проверял
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Хм. Так вообще ничего не отображается...
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Если предположить, что более поздняя дата публикации подразумевает у документа больший ID. Если публикации на сайте идут подряд.

Тогда в этом коде можно было бы просто "<>" поменять на "<". Что скажете?
Код
// Don't show current item
$query->where('(' . $db->quoteName('m.content_item_id'). ' <> ' . $id
. ' OR ' . $db->quoteName('m.type_alias'). ' <> ' . $db->quote($prefix). ')'
);

*

sivers

  • Живу я здесь
  • 2573
  • 355 / 0
иногда очередность публикации может не совпадать с очередностью ИД. Если вы создаете материалы с отложенной публикацией, например.

кроме замены знака надо еще удалить строку с ' OR ' . иначе никакого эффекта не будет

Код
// Don't show current item
$query->where('(' . $db->quoteName('m.content_item_id'). ' < ' . $id
. ')'
);
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывести модуль в модуле

Автор jimka

Ответов: 2
Просмотров: 314
Последний ответ 18.04.2025, 15:39:36
от fbr
Radical Multi Field создаёт папку для каждой статьи

Автор Missile

Ответов: 7
Просмотров: 747
Последний ответ 25.11.2024, 15:22:12
от Missile
Как установить header Cache-Control только для одной страницы по URL?

Автор Slava77

Ответов: 0
Просмотров: 668
Последний ответ 23.03.2024, 00:16:36
от Slava77
Как вставить модуль в код нужной страницы php?

Автор zvi

Ответов: 9
Просмотров: 4475
Последний ответ 21.02.2024, 11:03:08
от saynez
Убрать из модуля новостей ссылку на статью, на которой выводится модуль

Автор zeus07

Ответов: 3
Просмотров: 1032
Последний ответ 08.11.2023, 21:17:26
от GrayAn