Доработка фильтра товаров
Сайт на движке opencart, на сайта установлен фильтр товаров OCFilter
///* Общая информация, описание существующего алгоритма формирования урлов *///
1) Для формирования урлов отфильтрованных категорий внедрен алгоритм, который формирует путь в виде:
домен/категория_1/категория_2/Фильтр_1/Значение_1_1/Значение_1_2/.../Фильтр_2/Значение_2_1/Значение_2_2/.../Значение_2_5
2) В качестве названия фильтра и значений фильтра в УРЛ-ах используются значения "URL-Key".
"url-key" Названия Фильтра записывается вручную или генерируется, если пусто в самом модуле OCFilter
"url-key" Значений фильтра копируется из источника (Атрибутов) или генерируется, если в источнике пусто
///* Суть проблемы *///
Функция "Копирование фильтров" - она кривая. Каждый раз она ломает мне урлы. Имеет 2 косяка, которые не удалось отремонтировать даже разработчику.
1) Имеет одну важную настройку, которая работает непонятным для меня образом - "Очистить существующие фильтры OCFilter".
По задумке автора она должна целиком очищать таблицу фильтров либо только добавлять в неё новые записи. Я пробовал оба варианта и оба дают кривой результат.
2) Она должна копировать url-key Значений Атрибутов в таблицу значений фильтра, но вместо этого он рандомно то копирует их то генерирует по своему алгоритму.
///* Нужно сделать *///
Чтобы не вмешиваться в код автора и не ломать голову над его алгоритмом лучше всего сделать свою функцию копирования с нуля. Для этого предлагаю в модуле вообще не трогать существующую функцию копирования, а вместо неё создать собственную таким образом:
1) В модуле на странице "Фильтры" открываем любой из существующих там фильтров (или создаём новый через кнопку "Добавить") и там на вкладке "Основное" в самом верху добавляем параметр "Источник" в виде выпадающего списка, который будет отображать список всех существующих Атрибутов. Рядом нужно расположить кнопки "Копировать из источника" и "Создать SEO-псевдоним".
Таким образом в будущем мы не будем копировать массово все фильтры, чтобы избежать проблем, а будем работать с каждым отдельно - выбираем источник и жмём "Копировать из источника" - эта функция должна скопировать из источника Название фильтра Рус + Укр (из oc_attribute_description) и заполнить Категории (я не разобрался, откуда они заполняются, из какой таблицы). "SEO-псевдоним" копировать не нужно, поскольку в таблице Атрибутов их нету для названий Атрибутов. Его мы будем генерировать кнопкой "Создать SEO-псевдоним". Он должен создаваться из Русского названия общепринятым алгоритмом. Обязательно нужна защита от случайного нажатия - проверка и предупреждение, если поле "SEO-псевдоним" уже заполнено: "Значение уже заполнено. Перезаписать? [ДА] / ]НЕТ]".
Все остальные параметры не трогать, их мы будем устанавливать вручную (Тип, Сортировка, Статус).
2) Тут же переходим на вкладку "Значения" и добавляем кнопку "Копировать из источника". По сути она сделает тоже самое, но только для Значений фильтра - она заполнит свою таблицу из источника (из Атрибтов) - URL-Key (из oc_dae_attribute_value) + Название Рус + Название Укр (oc_dae_attribute_value_description). При этом существующие значения в таблице должны быть перезаписаны из источника, если они там есть, либо удалены, если их уже нет в источнике, а новые значения из источника - добавлены.
Если в источнике какому-то значению Атрибута не присвоено url-key, то и в фильтре оставляем это поле пустым (генерировать не нужно).
3) После этого нужно внести правку в код, который формирует урлы и задать там правило: если url-key Значения Фильтра незаполнен, то используем вместо него его же ID.
Актуальные фриланс-проекты в категории PHP
Сделать так, чтобы письма о заказах из магазина не попадали в спамСейчас есть магазин на опенкарт, письма о заказах попадают в спам, нужно сделать так, чтобы они попадали во Входящие (ukr.net gmail), проверьте. Хостинг написал: Плохая доставка электронной почты может быть связана с низкой репутацией отправителя - IP или домена. В таком… PHP, Веб-программирование ∙ 22 часа 50 минут назад ∙ 46 ставок |
Перенести полностью готовую адаптивную HTML5-структуру в WordPress.
12 000 UAH
Я ищу опытного WordPress-разработчика, который сможет преобразовать наш тщательно подготовленный статический HTML5/CSS3 код в высокопроизводимую кастомную WordPress-тему. Фронтенд уже практически готов (примерно 99%): семантическая разметка, метаданные и мультиязычная структура… CMS, PHP ∙ 4 дня назад ∙ 69 ставок |
Интеграция GoPosПривет, делал кто нибудь интеграцию GoPos с кастомным сайтом для ресторана в Польше? Нужна помощь, у них очень скудная документация, есть только swagger и тот без описаний https://app.gopos.io/doc/swagger-ui/index.html Суть такая, использовали от них сайт для онлайн заказов,… PHP, Веб-программирование ∙ 4 дня 16 часов назад ∙ 26 ставок |
Прописать мета данные АЛЬТ при помощи ИИСайт на Laravel , на сайте много изображений, для которых нужно прописать корректные по семантики и релевантные для странице АЛЬТ описание изображения в автоматическом режиме, с возможностью проверки AI и машинное обучение, PHP ∙ 5 дней 13 часов назад ∙ 35 ставок |
Нужен разработчик для завершения и интеграции проекта по автоматическому сбору и обработке данных
700 UAH
Основная часть парсера уже реализована. Парсер работает на Windows-среде через Microsoft Edge: сайт имеет антибот-защиту, поэтому сбор данных выполняется не прямыми HTTP-запросами, а через живую браузерную сессию. Скрипты управляют открытой вкладкой Edge через Chrome DevTools… PHP, Веб-программирование ∙ 5 дней 19 часов назад ∙ 26 ставок |