Solution specialforce22 Posted January 23, 2023 at 07:03 PM Solution Share Posted January 23, 2023 at 07:03 PM Скрыть товары, если их количество 0 шт Добавил specialforce22 Добавлено 23.01.2023 Категория Администрирование , Seo оптимизация, Карта сайта, Теги Просмотр файла Товар закончился? Его можно скрыть из видимой части сайта, не потеряв действующую ссылку (по прямой ссылке, из поиска товар будет открываться). SEO friendly - ссылки в поисковых системах не бьются, поведенческий фактор генерится! Модификатор поможет скрыть товар в категориях, на странице поиска сайта, в производителях и модуле "Рекомендуемых". Чтобы скрывать в модуле "Рекомендуемые", сделана отдельная функция. Совместимость: Default Unishop2 (протестировано ver v2.8.2.1) - добавлено скрытие в модуле поиска. Обратите внимание, что в модуле 5в1 предусмотрены настройки скрытие товаров. Остальные темы - для каталога и товаров высокая вероятность, при наличии отдельных модулей нужно смотреть. 2 Quote Link to comment Share on other sites More sharing options...
AlexDW Posted January 24, 2023 at 09:22 AM Share Posted January 24, 2023 at 09:22 AM за старания плюс! только реализация подкачала, разрешите до@ться - чтобы не допускать подобных ошибок в будущем 1. добавляемый запрос с SELECT DISTINCT *, pd.name AS name, p.image, p.noindex AS noindex, будет работать только на ocStore, где есть нестандартное поле noindex и превратит оригинальный Opencart в тыкву если это поле в выборке необходимо - нужно учитывать его наличие/отсутствие в БД 2. <search index='1,2,3,4,5,6,7,8,9,10'> такое вообще нужно избегать любой мод, вносящий правки в этот же файл - собъет всю последовательность и приведет к непредсказуемым результатам 3. <operation error="abort"> в свое время сам на эти грабли наступил это в vqmod директива abort работала как нужно, т.е. при отсутствии совпадения отменяла текущий модификатор в ocmod же, из-за неверной логики - при отсутствии совпадения прервет работу всех последующих модификаторов, а не только текущего лучше не использовать abort вообще 2 Quote модули для удобной работы с Opencart Link to comment Share on other sites More sharing options...
specialforce22 Posted January 24, 2023 at 10:06 AM Author Share Posted January 24, 2023 at 10:06 AM Благодарю!) Приятно внимание и полезная наука! 1. добавляемый запрос с SELECT DISTINCT *, pd.name AS name, p.image, p.noindex AS noindex, будет работать только на ocStore Упс...Это да, работал в OcStore - скопировал функцию из product, для featured....Посмотреть оригинальный Opencart сочканул, получается :( 2. <search index='1,2,3,4,5,6,7,8,9,10'> такое вообще нужно избегать любой мод, вносящий правки в этот же файл - собъет всю последовательность и приведет к непредсказуемым результатам Мне нужно было пропустить первое искомое вхождение, остальное поменять, а то товар будет скрываться и по прямой ссылке недоступен. В документации - https://opencart.club/doc/doc-developer-ocmod/ прочел, что можно пронумеровать index - указывает, в каком по порядку найденном тексте внести изменения. Т.е. если в файле искомый текст встречается несколько раз, тогда index позволяет указать номер найденного по порядку текста (0 всегда первый найденный текст, 1 - второй и т.д.) Можно также указать несколько номеров через запятую. Тогда для пропуска первого вхождения будет ли достаточно указать и так надежней? <search index="0" trim="true"> Спасибо) 1 Quote Link to comment Share on other sites More sharing options...
AlexDW Posted January 24, 2023 at 02:03 PM Share Posted January 24, 2023 at 02:03 PM 3 часа назад, specialforce22 сказал: Упс...Это да, работал в OcStore - скопировал функцию из product, для featured....Посмотреть оригинальный Opencart сочканул, получается если делать не только под себя, а универсальное и для всех - лучше сразу в тестовом окружении добавить граничные версии оригинального Opencart + наиболее популярных сборок, и проверять на них для платных решений - в обязательном порядке 3 часа назад, specialforce22 сказал: Тогда для пропуска первого вхождения будет ли достаточно указать и так надежней? <search index="0" trim="true"> это как раз выберет только первое вхождение можно пойти от обратного - выбрать более конкретно первое вхождение, чуть поправить его, например убрать пробел после знака = p.status = '1' > p.status ='1' а к последующим p.status = '1' применить нужный код без указания индекса 1 Quote модули для удобной работы с Opencart Link to comment Share on other sites More sharing options...
specialforce22 Posted January 24, 2023 at 03:18 PM Author Share Posted January 24, 2023 at 03:18 PM 1 час назад, AlexDW сказал: лучше сразу в тестовом окружении добавить граничные версии оригинального Понял. Спасибо. Бум улучшаться. 2 Quote Link to comment Share on other sites More sharing options...
specialforce22 Posted January 25, 2023 at 12:51 PM Author Share Posted January 25, 2023 at 12:51 PM Обновил: 1. Улучшение совместимости 2. Разделение модификатора для сборок: - OcStore 3 - hide-products-if-0-ocstore.3х.ocmod; - Opencart 3 Русская Сборка / Opencart 3 Club Edition - hide-products-if-0-opencart.3х.ocmod 3. Правки недочетов 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.