Компонент EasyStore - расширение электронной коммерции для Joomla от студии JoomShaper

Ну это точно не компонент
 
а русификатора нет случайно ни у кого ?
 
Российских платёжных систем нет и едва ли появятся.
 
Доброго времени суток. Обновите, пожалуйста.
 
EasyStore v2.0.1 (Pro version)
(22 June 2026)
Updates
  • Dirty state detection now triggers before editing product variants to prevent accidental data loss.
Fixes
  • Fixed a syntax error in root color definitions.
  • Addressed integration issues with the USPS shipping carrier plugin.
  • Attribute creation service now correctly writes entries to the database.
  • Resolved product stock control issue affecting inventory management.
  • Fixed incorrect price display on products when tax is enabled.
 
Тема: [Решение] Фильтр категорий EasyStore выводит все корневые папки (Исправление логики)

Всем привет!

Многие, кто использует EasyStore, после недавних обновлений (когда разработчики перевели базу на Nested Sets в версии 2.0) столкнулись с неприятным багом: модуль фильтра категорий на фронтенде перестал понимать контекст.

Теперь он всегда вываливает абсолютно все корневые категории магазина. Если у вас на сайте несколько непересекающихся разделов (например, "Одежда" и "Запчасти"), фильтр покажет их все в одной куче, что ломает навигацию.

Пока мы ждем официального патча от JoomShaper, предлагаю небольшое и универсальное исправление в коде компонента. Этот код делает фильтр «умным»:

  1. Если пользователь зашел в конкретную категорию — фильтр покажет только её подкатегории.
  2. Если пользователь находится на главной странице магазина (где нет выбранной категории), вы можете задать ID нужной вам папки, чтобы фильтр показал только её внутренности, спрятав остальные корневые разделы сайта.

Как применить фикс:​

Шаг 1: Через FTP или панель хостинга откройте файл:
components/com_easystore/src/Helper/FilterHelper.php

Шаг 2: Найдите метод getCategories() (примерно 50-я строка). Внутри него найдите вот этот кусок кода:

Код:
$rootId = self::getRootCategoryId();
$selectedCategories = $app->input->get('filter_categories', '', 'STRING');
$selectedCategories = $selectedCategories ? explode(',', $selectedCategories) : [];

$query->where($db->quoteName('id') . ' <> ' . (int) $rootId);

$query->order($db->quoteName('lft') . ' ASC');

Шаг 3: Замените этот блок на следующий код:

Код:
$rootId = self::getRootCategoryId();
$selectedCategories = $app->input->get('filter_categories', '', 'STRING');
$selectedCategories = $selectedCategories ? explode(',', $selectedCategories) : [];

// --- ИСПРАВЛЕНИЕ КОНТЕКСТА КАТЕГОРИЙ ---
// Укажите ID вашей главной категории каталога, если хотите скрыть другие корневые папки на главной странице магазина.
// Оставьте 0, если хотите сохранить стандартное поведение на главной странице.
// Пример: $defaultCategoryId = 15;
$defaultCategoryId = 0;

if ($catid > 0 && $catid != $rootId) {
// 1. Мы внутри категории -> показываем только её подкатегории
$query->where($db->quoteName('parent_id') . ' = ' . (int) $catid);
} elseif ($defaultCategoryId > 0) {
// 2. Мы на главной -> показываем подкатегории выбранной категории по умолчанию
$query->where($db->quoteName('parent_id') . ' = ' . (int) $defaultCategoryId);
} else {
// 3. Стандартное поведение EasyStore (выводит всё)
$query->where($db->quoteName('id') . ' <> ' . (int) $rootId);
}
// --- КОНЕЦ ИСПРАВЛЕНИЯ ---

$query->order($db->quoteName('lft') . ' ASC');

Шаг 4: Сохраните файл и обязательно очистите кэш Joomla.

Пара советов:

  • В коде выше обратите внимание на переменную $defaultCategoryId = 0;. Вместо 0 вы можете вписать ID нужной вам категории (посмотреть можно в админке в списке категорий).
  • Если после применения кода вы хотите получить просто ровный плоский список чекбоксов (как было в старых версиях), зайдите в настройки аддона Filter в SP Page Builder и отключите опцию Show Hierarchy.
⚠️ Важно: Поскольку это хак ядра (core hack), при следующем обновлении EasyStore этот файл перезапишется на стандартный. Сохраните этот код себе в блокнот, чтобы можно было быстро вернуть его на место, если в обновлении разработчики так и не починят эту проблему.

Надеюсь, это сэкономит кому-то пару часов нервов!
 
Этот компонент имеет много ограничений и не подходит для Европейского Союза.
 
EasyStore v2.0.3 (Pro version)
(23 July 2026)
Fixes
  • Resolving invalid HTML syntax that resulted from an extra wrapper div matching dynamic heading tags.
 
Доброго времени суток.
Обновите, плз.
 
EasyStore v2.1.0 (Pro version)
(05 August 2026)
New
  • Introduced native multilingual support across EasyStore.
  • Added AI-powered translation via the new EasyStore Multilingual system plugin.
  • Added multilingual Smart Search indexing for translated product titles, descriptions, and metadata.
  • Added translation support for attributes, variants, checkout content, emails, shipping, payments, and store settings.
  • Added translation status indicators.
Fixes
  • Corrected faulty conditional logic that broke base unit display.
  • Fixed broken relative image URLs in product details by prepending the correct root base path.
 
Назад
Сверху