Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

"Product name" брать из поля "HTML-тег H1"


Recommended Posts

Возможно ли такое сделать? Модуль 1С генерирует метаданные для каждого товара по шаблону [Название категории]+[Имя товара], получается для примера "Протеин Level Up", при этом название товара в магазине просто "Level Up" при просмотре товаров в категории человек не понимает что за товар перед ним, и при поиске вбив "протеин" результатов человек не получит.

Можно ли в контроллере заменить, чтобы название товара бралось и поля "HTML-тег H1", которое генерирует модуль 1С? и будет ли при этом название отображаться в категориях и работать поиск товаров?

 

Надіслати
Поділитися на інших сайтах


ну замените в контроллере

'name'        => $result['name'],

на HTML-тег H1 котоый вам генерирует 1с

'name'        => $result['HTML-тег H1'],

 

  • +1 1
Надіслати
Поділитися на інших сайтах


то что вы сейчас заменили на поиск не как не повлияло

Надіслати
Поділитися на інших сайтах


в модели замените

catalog\model\catalog\product.php

для того что бы поиск был по meta_h1

$implode[] = "pd.name LIKE '%" . $this->db->escape($word) . "%'";

на

$implode[] = "pd.meta_h1 LIKE '%" . $this->db->escape($word) . "%'";

 

Змінено користувачем php
  • +1 1
Надіслати
Поділитися на інших сайтах


получил вот такую ошибку после изменения поиска 

Цитата

 Uncaught exception 'Exception' with message 'Error: Unknown column 'pd.meta_h1' in 'where clause'<br />Error No: 1054<br />SELECT p.product_id, (SELECT AVG(rating) AS total FROM oc_review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT price FROM oc_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_i in /home/p498265/www/мой_сайт.ру/system/library/db/mysqli.php on line 40

 

Змінено користувачем Vladislavchik1989
Надіслати
Поділитися на інших сайтах


так вроде сложил ума, все таки я что-то упустил, вроде в 2 места поменял сначала, но не работало, теперь все ок.

 

маленький момент остался. хз как правильно называется это  "умный поиск" или как то так, т.е. начинаешь вводить часть фразы, а в выпадающем списке под строкой поиска предлагает миниатюры товаров с совпадениями. 

 

так как там еще выдает по критерию "name"

 

Прикрепил изображение.

poisk.png

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.