Пошук не дає результатів


9

Як я описав у назві, я не отримую жодних результатів, коли шукаю товар. Я намагався поки що:

  1. Перевірка наочності виробів
  2. Моя продукція є на складі
  3. Я також встановив кількість у 100, щоб бути впевненим
  4. Я оновив атрибути продуктів у каталозі-> керуйте продуктами-> виберіть усі продукти.
  5. Я призначив усі продукти на головному веб-сайті для певного перегляду магазину.
  6. Атрибут імені може бути використаний для пошуку.

Я також намагався здійснити пошук, skuале знову нічого не відбувається. Не дивно, що розширений пошук з іменем, і skuпрацює.

І моя проблема залишається .. Будь-які ідеї, як зробити так, щоб мої продукти з’являлися при пошуку ??


будь то простий чи налаштований? ви переосмислили?
Shyam Krishna Sreekumar

У мене є 2 прості продукти, а решта налаштовується. Я переосмислював багато разів досі.
vasilisdmr

Чи видно товари в каталозі?
Мілан Симек

що ти маєш на увазі? Ви маєте на увазі, якщо я можу побачити їх під каталогом-> керувати продуктами? Якщо це ваше питання, то так, я можу їх побачити.
vasilisdmr

Я маю на увазі, чи їх видно під час перегляду каталогу на передній частині?
Мілан Симек

Відповіді:


9

Відкрийте файл Mage_CatalogSearch_Model_Layerі в методі

public function prepareProductCollection($collection)

раніше return $this;

Додайте наступні рядки:

Mage::log($collection->getSelectSQL(1), false, 'search.log', true);
Mage::log((array)Mage::getConfig()->getNode()->global->models->catalogsearch, false, 'search.log', true)

(це для налагодження, щоб зрозуміти вашу проблему).

Потім відкрийте свій var/log/search.logі поставте результат у свою першу публікацію (має бути довгий запит sql та масив, де ми можемо бачити переписування).


я спробую вранці та скажу вам результати.
vasilisdmr

5

Я пережив це. Моє виправлення полягало в тому, щоб перейти Manage Productsі вибрати всі продукти та виконати "Update Attributes"спадне меню над сіткою. На екрані "Оновлення атрибутів" перейдіть на Websitesвкладку та повторіть зв'язок із належним веб-сайтом, встановивши прапорець під пунктом Add Products To Website.

Після цього може знадобитися інша перебудова пошукового індексу.


У мене також була ця проблема, і для мене працювали атрибути оновлення.
Пол Доннеллі

Прочитайте пт. №4 і №5 Він уже зробив це, і його продукція розміщена на необхідному веб-сайті
жартаунік

@zhartaunik У №4 ОП не вказала, які атрибути були змінені, і в №5 ОП використовується термін "Перегляд магазину", який відрізняється від "Веб-сайт".
Джон Орман

я спробую це через деякий час.
vasilisdmr

Я пробував це і нічого, я пам’ятав, що робив це ще раз і отримав те саме, нічого взамін.
vasilisdmr

3

йти до

admin->attributs->manage attribute-> search sku - open it -> Frontend Properties-> Use in Quick Search (YES )

, Використовувати в розширеному пошуку (ТАК). Це воно.


Я зробив це, але нічого не відбулося.
vasilisdmr

2

Чи створювали ви зовнішні модулі, які потребували використання пошуку? Подивіться на файли компонування для чогось подібного

<mdg_giftregistry_search_index>
    <reference name="content">
        <block name="giftregistry.search" type="core/template" template="mdg/search.phtml" as="giftregistry_search"/>
    </reference>
</mdg_giftregistry_search_index>

Я не використовував жодного зовнішнього модуля, який потребував пошуку.
vasilisdmr

2

Ще одна можливість, яка працювала для мене, - це зробити повторне виведення даних !

Для цього перейдіть на Панель адміністратора> Система> Управління індексами , натисніть "Вибрати все", у полі "Дія" виберіть "Дані повторного виведення" та натисніть "Надіслати".

=)

Мир!


1

Багато запитань атрибутів Можливі продукти встановлюють помилку. тобі потрібно введіть тут опис зображення

Перевірте кожен.


1

Ви можете налагоджувати об’єкт колекції на класі Mage_CatalogSearch_Model_Layer нижче функції.

public function getProductCollection()
    {
        if (isset($this->_productCollections[$this->getCurrentCategory()->getId()])) {
            $collection = $this->_productCollections[$this->getCurrentCategory()->getId()];
        } else {
            $collection = Mage::getResourceModel('catalogsearch/fulltext_collection');
            $this->prepareProductCollection($collection);
            $this->_productCollections[$this->getCurrentCategory()->getId()] = $collection;
        }

echo $ collection-> getSelect (); die ('тест');

        return $collection;
    }

цей фрагмент коду, де я повинен його поставити?
vasilisdmr

app / code / core / Mage / CatalogSearch / Model / Layer.php Після рядка № 44 echo $ collection-> getSelect (); die ('test');
санджі

і результат буде? я маю на увазі, я побачу, чи додаються товари до колекції $?
vasilisdmr

1

Я також зіткнувся з тією ж проблемою кілька днів тому. Моя проблема полягала в тому, що я перекрила функцію magento за замовчуванням для одного розширення. Тож у мене були конфлікти з результатами пошуку. Перевірте всі розширення один раз, чи може виникнути конфлікт.


Я зроблю це, і буду інформувати вас
vasilisdmr

Ви можете зробити кеш, оновити індекс? це потрібно в цьому.
Пратік Камані

localhost /.../ index.php / catalogsearch / Advanced спробуйте, покладіть на свій сайт посилання та після цього searchsearch / Advanced /, якщо ви отримаєте якусь підказку.
Пратік Камані

0

У мене була така ж проблема, і я спробував усі вищенаведені пропозиції, і жодна з них не працювала, тому я здійснив пошук у Google за кожним моїм питанням і нічого не отримав, тоді я гуглив, як зробити так, щоб мої продукти були в пошуку в магазині Magento, і я натрапив " Умови пошуку ", який знаходиться в каталозі, але не в каталозі в системній конфігурації, а в каталозі, коли ви додаєте новий або редагуєте продукт. У пошуковому запиті ви додаєте заголовок, якому ви хочете надати цей пошук, а в переадресацію ви вводите всю URL-адресу продукту або продуктів, які ви хочете придумати це ім'я. Я продаю секс-іграшки, тому, наприклад, я набрав у моєму розділі пошуку Magento Vibrator, і жоден не з’явився, хоча у мене є маса різних моделей, тому я створив пошуковий запит під назвою Vibrator і скопіював URL з категорії вібратора &


0

У мене теж є ця проблема.

Перейдіть до керування продуктами та виберіть усі продукти та виконайте "Оновити атрибути" зі спадного меню над сіткою. На екрані "Оновлення атрибутів" перейдіть на вкладку "Веб-сайти" та повторіть зв'язок із належним веб-сайтом, встановивши прапорець "Додати продукти на веб-сайт".

  • це рішення працює для мене, але у мене буквально тисячі продуктів, і це займе кілька днів. Чи є інший спосіб зробити це чи команда бази даних, яку я міг би використовувати для цього? Дякую

Ласкаво просимо до MSE Ви можете додати нове запитання, і ця частина призначена лише для публікації відповідей. Сподіваюся, що це допомагає
Джай

-5

Я припускаю, що ви дотримувались всіх вище коментарів, окрім цього, будь ласка, дотримуйтесь і наступного:

  1. Спочатку переконайтеся, що у вас є максимальний час виконання або запишіть у index.php, ini_set('max_execution_time', 1800)або встановіть його в php.inimax_execution_time= 1600
  2. Збільшити ліміт пам’яті ini_set('memory_limit','512M')або встановити його в php.inimemory_limit=16M

як 16M відноситься до збільшення ... Magento - це 256 / 512M ... спам-відповідь?
FlorinelChis

вибачте відредагував це
magegaga.com
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.