Новости Joomla

Joomla 6: Автоматические обновления ядра в Joomla

Joomla 6: Автоматические обновления ядра в Joomla

👩‍💻 Joomla 6: Автоматические обновления ядра в Joomla. В октябрьском номере официального журнала Joomla - Joomla Community Magazine вышла статья David Jardin, где рассказывается о внедрении функционала автоматического обновления ядра Joomla.❓Почему сейчас? Joomla же жила как-то 20 лет без автоматических обновлений?Это оказалась самая востребованная за последнее время от пользователей Joomla функция. Но, основная причина внедрения - проблемы безопасности. Всякий раз, когда в новой версии Joomla устраняется уязвимость, злоумышленники начинают анализировать код, чтобы выяснить, какая именно уязвимость была исправлена. И как только они это выясняют - начинается разработка автоматизированных скриптов для взлома как можно большего количества сайтов. Затем доступы к автоматически взломанным сайтам продаются в профильных чатах и ресурсах "пачками" по несколько сотен тысяч или миллионов сайтов. Ваш сайт могли взломать несколько лет назад, но воспользоваться уязвимостью могут не сразу, а тогда, когда у злоумышленников возникнет необходимость. И только после этого вы может быть узнаете об этом.Анализ патча, понимание проблемы и разработка скрипта требуют времени. И если владелец сайта не обновит его до истечения этого срока, сайт может быть взломан. А хакеры действуют быстро! Для критических, легко эксплуатируемых уязвимостей речь идёт о временном окне в 10–12 часов — и этого времени явно недостаточно, чтобы все успели обновить свои сайты.Здесь выходят на первый план автоматизированные обновления: проект Joomla теперь может активно устанавливать обновления (и, следовательно, исправления безопасности) на сайты, чтобы гарантировать, что сайты действительно обновляются вовремя.🕘 От первых идей до реализации прошло 5 лет. И здесь можно вспомнить, как в Joomla 5.1 внедрили TUF - The Update Framework, позволяющий устанавливать защищённое соединение между сайтом и сервером обновлений и исключает возможность supply chain attack (атаки на цепочку поставок).Об особенностях реализации и требованиях к сайту читаем подробнее в статье на JCM.@joomlafeed#joomla #secutiry #jcm

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™. Интервью с волонтёрами 🎈Ну что, друзья, вот и настал этот долгожданный момент. Мы выпустили первое издание собственного журнала под эгидой NorrNext, который включает в себя интервью с видными деятелями сообщества из разных стран и континентов.Общий нарратив: показать, что нас объединяет (Joomla) и узнать больше о людях, которые вносят свой вклад в развитие платформы в своих сообществах. 20 лет — это много. Давайте же узнаем о коллегах 🎁 Первый цикл включает такие страны, как Австрия, Испания, Латвия, Россия, Румыния, Тайланд, Черногория, Чехия.⚙️ С кем интервью: ✔️ Владимир Елисеев 🇷🇺✔️ Дмитрий Рекун 🇱🇻✔️ Дмитрий Цымбал 🇷🇺✔️ Евгений Сивоконь 🇷🇺 ✔️ Сергей Толкачёв 🇷🇺✔️ Dénes Székely 🇷🇴✔️ Jan Pavelka 🇨🇿✔️ Miljan Vujosevic 🇲🇪✔️ Sergio Iglesias 🇪🇸✔️ Sigrid Gramlinger 🇦🇹✔️ Pisan Chueatchatchai 🇹🇭‼️ Новые интервью будут добавляться до конца декабря 2025. Заходите по ссылке время от времени💡👉 Читать далее

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

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
В JoomShopping 4.18.2 + аддон 1.7 с сайта NEVIGEN, работает. Может быть конфликт с addon joomshoping cartajax.
« Последнее редактирование: 26.11.2018, 11:01:48 от intcorp »
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
У меня работает на нескольких сайтах. Ищите ошибку у себя. Скорее всего в шаблоне или конфликт скриптов.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
У меня работает на нескольких сайтах. Ищите ошибку у себя. Скорее всего в шаблоне или конфликт скриптов.
Да, оказалось, что конфликт с addon_joomshoping_cartajax_3.5.3
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
доброго вечера

поставил плагин JoomShopping Plus and Minus Count Product всё супер.

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

весь день сижу разбираюсь, так и не нашел решения


*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
поставил плагин JoomShopping Plus and Minus Count Product всё супер.
но при работе сторонних фильтров товаров, которые используют этот же шаблон, поля ввода количества не появляются (само собой)
весь день сижу разбираюсь, так и не нашел решения
И Вам доброго вечера. Ну что на такой пост можно ответить... Печалька...  >:(

А если серьезно, то что такое - "при работе сторонних фильтров товаров, которые используют этот же шаблон" только Вам наверно известно.

Для ускорения помощи (если Вам она конечно нужна и предыдущий пост был не риторическим), неплохо бы посмотреть, что Вы делали, ну и на сайт на котором "поля ввода количества не появляются (само собой)".
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
есть сторонний фильтр js_extended_filter_v1.4.4_J3.x_unzipfirst_b0004 (очень удобный кстати), в нем есть возможность использовать шаблон листа товаров joomshopping'а. (components\com_jshopping\templates\default\list_products\product.php). После применения фильтра загружается лист вида обычного списка товаров с _tmp_var_buttons, но плагин в этом месте не работает.

http://xn--b1adbp2adre.xn--p1ai/index.php/cat
« Последнее редактирование: 16.10.2019, 07:31:57 от DOS »
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
Не увидел в коде указанной страницы кнопок "+" и "-"
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
да, пардон, забыл, они не были нужны, только поле ввода количества
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
Скорее всего плагин кнопок "плюс/минус" не заработает с фильтром. Потому что у фильтра свой плагин и он группы (system, плагины этой группы срабатывают раньше других плагинов), а плагин кнопок "плюс/минус" находиться в другой группе плагинов (которые срабатывают позже).

Если бы они были в одной группе, то проблему бы решило скорее всего изменения порядка в списке плагинов. Но по причине описанной выше это не возможно.

Поэтому единственное решение - взять нужный код из плагина и напрямую разместить в нужных файлах шаблона JoomShopping.

Ну или попробовать изменить группу плагина кнопок "плюс/минус" на группу system и разместить его в списке плагинов этой группы выше чем плагин фильтра.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
вот как раз с интеграцией кода в шаблон я и провозился весь день, окно ввода появилось, но нет связи с кнопкой купить, всё равно добавляется по 1 единице

подскажете что я делаю не так?
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
подскажете что я делаю не так?
Просто вставьте весь код, вместе с кнопками

А если не нужны кнопки - скройте их стилями CSS
« Последнее редактирование: 16.10.2019, 09:56:26 от kit2m2 »
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
в этом случае включенные плагины не нужны?
я добавляю, появляется ошибка Fatal error: Cannot declare class plgJshoppingProductsPlus_Minus_Count_Product, because the name is already in use in....
если отключить плагин - не работает просто
если изменить класс на что угодно, тоже не работает(

и я не совсем понимаю куда нужно код добавлять, в

components\com_jshopping\templates\default\category\products.php
components\com_jshopping\templates\default\list_products\list_products.php
com_jshopping\templates\default\list_products\product.php
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Этот модуль может выводить свой шаблон списка товаров. Как вы используете настройки?
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
шаблон для результатов поиска - шаблон категории, можно сделать дефолтный, будет показывать свой шаблон
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Попробуйте измените групу плагина, как вам советовали. Только переустановите его
Цитировать
Ну или попробовать изменить группу плагина кнопок "плюс/минус" на группу system и разместить его в списке плагинов этой группы выше чем плагин фильтра.
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
как бы это еще реализовать)
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
как бы это еще реализовать)
Какой аддон используете?

Этот (от @nevigen ) или Этот (от @Brooksus)?
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
невиген

два часа правлю, ставится, но пока не работает
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
Со сменой группы ничего не выйдет. Найдите файл jsfilter.php в плагине фильтра и замените его код полностью на следующий код:
Код
<?php

/*------------------------------------------------------------------------
# jsfilter - Extended Filter for JoomShopping
# ------------------------------------------------------------------------
# author    Andrey Miasoedov
# copyright Copyright (C) 2012 Joomcar.net All Rights Reserved.
# @license - http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
# Websites: http://joomcar.net
# Technical Support: http://joomcar.net
-------------------------------------------------------------------------*/

// no direct access
defined('_JEXEC') or die('Restricted access');

jimport('joomla.plugin.plugin');
jimport('joomla.html.parameter');
jimport('joomla.application.component.controller');
jimport('joomla.filesystem.file');

if(!class_exists("JshoppingControllerBase") && JRequest::getInt("extended") == 1 && JRequest::getVar("option") == "com_jshopping" && JFile::exists(JPATH_COMPONENT_SITE.'/controllers/base.php')) { //fix JS 4.11 compatibility
if (!defined('DS')) define( 'DS', DIRECTORY_SEPARATOR);
if (!defined('JPATH_COMPONENT')) define( 'JPATH_COMPONENT', JPATH_BASE.DS.'components'.DS.'com_jshopping');
if (!defined('JPATH_COMPONENT_SITE')) define( 'JPATH_COMPONENT_SITE', JPATH_SITE.DS.'components'.DS.'com_jshopping');
if (!defined('JPATH_COMPONENT_ADMINISTRATOR')) define( 'JPATH_COMPONENT_ADMINISTRATOR', JPATH_ADMINISTRATOR.DS.'components'.DS.'com_jshopping');

jimport('joomla.application.component.model');
JModelLegacy::addIncludePath(JPATH_COMPONENT_SITE.'/models');
require_once(JPATH_COMPONENT_SITE."/lib/factory.php");
require_once(JPATH_COMPONENT_SITE.'/controllers/base.php');
$controller = getJsFrontRequestController();
require(JPATH_COMPONENT_SITE."/loadparams.php");
}

class plgSystemJSFilter extends JPlugin {
function onAfterRoute() {
if(!JFile::exists(JPATH_ROOT."/components/com_jshopping/lib/factory.php")) {
echo "Joomshopping does not installed. ";
return;
}

ini_set("memory_limit", "400M");
ini_set("max_execution_time", "300");
ini_set("display_errors", "On");
error_reporting(E_ALL & ~E_STRICT & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED);

// Define the DS constant under Joomla! 3.0
if (!defined('DS')) define('DS', DIRECTORY_SEPARATOR);

$option = JRequest::getVar("option");
$controller = JRequest::getVar("controller");
$task = JRequest::getVar("task");

if($option == "com_jshopping" && $controller == "search" && $task == "result" && JRequest::getInt("extended") == 1) {

if (!defined('JPATH_COMPONENT')) define( 'JPATH_COMPONENT', JPATH_BASE.DS.'components'.DS.'com_jshopping');
if (!defined('JPATH_COMPONENT_SITE')) define( 'JPATH_COMPONENT_SITE', JPATH_SITE.DS.'components'.DS.'com_jshopping');
if (!defined('JPATH_COMPONENT_ADMINISTRATOR')) define( 'JPATH_COMPONENT_ADMINISTRATOR', JPATH_ADMINISTRATOR.DS.'components'.DS.'com_jshopping');

$pluginPath = JPATH_BASE.DS.'plugins'.DS.'system'.DS.'jsfilter'.DS.'jsfilter';

require_once (JPATH_SITE.DS.'components'.DS.'com_jshopping'.DS.'controllers'.DS.'search.php');
$controller = new JshoppingControllerSearch;

$config['name'] =  "search";
$config['default_task'] =  "display";
$config['base_path'] =  $pluginPath;
$config['model_path'] =  $pluginPath.DS."models";
$config['view_path'] =  $pluginPath.DS."views";
$config['template_path'] = JPATH_COMPONENT."/templates/".$this->getJShopTemplate()."/category";

$controller->__construct($config);

$format = JRequest::getVar("tmpl", "");
switch($format) {
case "count" :
$view = $controller->getView("search", "count", "", $config);
break;

default :
$view = $controller->getView("search", "html", "", $config);
}

}

} // onAfterRoute

function onBeforeDisplayProductListView($view) {
if($view->results_template == "category") {
$filterLang = JFactory::getLanguage();
$filterLang->load("mod_jshopping_extended_filter");

require_once (JPATH_SITE.DS.'modules'.DS.'mod_jshopping_extended_filter'.DS.'helper.php');
$moduleId = JRequest::getVar("moduleId");
$moduleParams = modJShopExtendedFilterHelper::getModuleParams($moduleId);

if (count($view->rows)) {
echo "<div class='results-text'><p>" . $moduleParams->search_results_text . "(" . $view->results_total . ") :</p></div>";
}
else {
echo "<div class='results-text'><p>" . $moduleParams->text_no_results . "</p></div>";
}

// код из addon_jshopping_plus_minus_count_product_1.7_for_3.7
foreach($view->rows as $key => $product){
if($view->rows[$key]->buy_link){
$view->rows[$key]->_tmp_var_buttons = '<br>
<input class = "product_minus" type = "button" onclick = "
var qty_el = document.getElementById(\'quantity'.$product->product_id.'\');
var qty = qty_el.value;
if( !isNaN( qty ) && qty > 1) qty_el.value--;
var url_el = document.getElementById(\'productlink'.$product->product_id.'\');
url_el.href=\''.$view->rows[$key]->buy_link.'&quantity=\'+qty_el.value;reloadPriceInList('.$product->product_id.',qty_el.value);return false;" />
<input type = "text" name = "quantity'.$product->product_id.'" id = "quantity'.$product->product_id.'"
style = "min-width:20px; max-width:100px;" class = "inputbox" value = "1" onkeyup="
var qty_el = document.getElementById(\'quantity'.$product->product_id.'\');
var url_el = document.getElementById(\'productlink'.$product->product_id.'\');
url_el.href=\''.$view->rows[$key]->buy_link.'&quantity=\'+qty_el.value;reloadPriceInList('.$product->product_id.',qty_el.value);return false;" />
<input class = "product_plus" type = "button" onclick = "
var qty_el = document.getElementById(\'quantity'.$product->product_id.'\');
var qty = qty_el.value;
if( !isNaN( qty )) qty_el.value++;
var url_el = document.getElementById(\'productlink'.$product->product_id.'\');
url_el.href=\''.$view->rows[$key]->buy_link.'&quantity=\'+qty_el.value;reloadPriceInList('.$product->product_id.',qty_el.value);return false;" />
<script>
function reloadPriceInList(product_id, qty){
var data = {};
data["change_attr"] = 0;
data["qty"] = qty;
if (prevAjaxHandler){
prevAjaxHandler.abort();
}
prevAjaxHandler = jQuery.getJSON(
"index.php?option=com_jshopping&controller=product&task=ajax_attrib_select_and_price&product_id=" + product_id + "&ajax=1",
data,
function(json){
jQuery(".product.productitem_"+product_id+" .jshop_price span").html(json.price);
}
);
}
</script>';
$view->rows[$key]->buy_link .= "\" Id = \"productlink".$product->product_id;
}
}
// код из addon_jshopping_plus_minus_count_product_1.7_for_3.7
}
}

function onBeforeQueryGetProductList($view, &$adv_result, &$adv_from, &$adv_query, &$order_query, &$filters) {
if(JRequest::getInt("extended") == 1) {
$adv_query = '';
}
}

function getJShopTemplate() {
$db = JFactory::getDBO();
$query = "SELECT template FROM #__jshopping_config";
$db->setQuery($query);

$result = $db->loadResult();
if($result == "") {
return "default";
}
return $result;
}

} // class
?>

добавил в него следующий код, вот отдельно:

Код
			
// код из addon_jshopping_plus_minus_count_product_1.7_for_3.7
foreach($view->rows as $key => $product){
if($view->rows[$key]->buy_link){
$view->rows[$key]->_tmp_var_buttons = '<br>
<input class = "product_minus" type = "button" onclick = "
var qty_el = document.getElementById(\'quantity'.$product->product_id.'\');
var qty = qty_el.value;
if( !isNaN( qty ) && qty > 1) qty_el.value--;
var url_el = document.getElementById(\'productlink'.$product->product_id.'\');
url_el.href=\''.$view->rows[$key]->buy_link.'&quantity=\'+qty_el.value;reloadPriceInList('.$product->product_id.',qty_el.value);return false;" />
<input type = "text" name = "quantity'.$product->product_id.'" id = "quantity'.$product->product_id.'"
style = "min-width:20px; max-width:100px;" class = "inputbox" value = "1" onkeyup="
var qty_el = document.getElementById(\'quantity'.$product->product_id.'\');
var url_el = document.getElementById(\'productlink'.$product->product_id.'\');
url_el.href=\''.$view->rows[$key]->buy_link.'&quantity=\'+qty_el.value;reloadPriceInList('.$product->product_id.',qty_el.value);return false;" />
<input class = "product_plus" type = "button" onclick = "
var qty_el = document.getElementById(\'quantity'.$product->product_id.'\');
var qty = qty_el.value;
if( !isNaN( qty )) qty_el.value++;
var url_el = document.getElementById(\'productlink'.$product->product_id.'\');
url_el.href=\''.$view->rows[$key]->buy_link.'&quantity=\'+qty_el.value;reloadPriceInList('.$product->product_id.',qty_el.value);return false;" />
<script>
function reloadPriceInList(product_id, qty){
var data = {};
data["change_attr"] = 0;
data["qty"] = qty;
if (prevAjaxHandler){
prevAjaxHandler.abort();
}
prevAjaxHandler = jQuery.getJSON(
"index.php?option=com_jshopping&controller=product&task=ajax_attrib_select_and_price&product_id=" + product_id + "&ajax=1",
data,
function(json){
jQuery(".product.productitem_"+product_id+" .jshop_price span").html(json.price);
}
);
}
</script>';
$view->rows[$key]->buy_link .= "\" Id = \"productlink".$product->product_id;
}
}
// код из addon_jshopping_plus_minus_count_product_1.7_for_3.7


Попробуйте может быть сработает...
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
1. как раз сообразил как сделать установщик плагина в систем - не работает
2. добавил код в jsfilter.php - не изменилось ничего(

*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
2. добавил код в jsfilter.php - не изменилось ничего(
Нужно не добавить, а полностью его заменить на первый код

И как Вы его проверили, если хостинг у Вас закончился?
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
само собой, пардон, неправильно выразился, полностью заменил, ничего не появилось
на локалке проверял, сейчас хостинг запущу, туда продублирую
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
Что же, тогда обратитесь к разработчику фильтра, может он поможет. Или откажитесь от его использования.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

DOS

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
спасибо
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
Есть еще третий вариант - коммерческий раздел.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

shop-user

  • Захожу иногда
  • 112
  • 0 / 0
Плагин Plus and Minus Count Product для Сопутствующих товаров
Я поставил Plus and Minus Count Product - все  работает, как для списка товаров,
 так и для страницы товара
Но на странице товара, под ним Сопутствующие товары, и там ПЛЮС-МИНУС не появляются.
Пожалуйста напишите как исправить.
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
и не должно.
и в модулях не появится.
это все делается на уровне шаблонов.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

kit2m2

  • Живу я здесь
  • 3370
  • 276 / 0
  • Беру сайты на полное сопровождение
и не должно.

А что нельзя в плагин добавить цикл с массивом $view->related_prod? Не будет работать? Сам не проверял...

Цитировать
foreach($view->related_prod as $key => $product){
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
А что нельзя в плагин добавить цикл с массивом $view->related_prod? Не будет работать?
Можно- проверил работает.

*

shop-user

  • Захожу иногда
  • 112
  • 0 / 0
Большое спасибо за ответы !
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод товаров из всех подкатегорий на странице категории

Автор Faina

Ответов: 355
Просмотров: 68235
Последний ответ 11.10.2025, 08:48:34
от kit2m2
[Решено] Вывод 3-х первых картинок в списке товаров категории

Автор rudoy24

Ответов: 30
Просмотров: 12300
Последний ответ 19.07.2024, 11:41:28
от juleczka
Определить расширение. pop_description для списка товаров

Автор Alex_gs

Ответов: 3
Просмотров: 2144
Последний ответ 24.09.2023, 12:18:34
от kit2m2
Смена фото при наведении в списке товаров категории

Автор Taatshi

Ответов: 57
Просмотров: 6369
Последний ответ 15.06.2023, 15:53:25
от Akeksandr
Шаблон фильтрации товаров

Автор Prevergenec

Ответов: 1
Просмотров: 2475
Последний ответ 23.01.2023, 18:13:43
от kit2m2