Задать вопрос о товаре из карточки товара.


mdmax
 Поделиться

Рекомендуемые сообщения

Добрый день. Возникла потребность реализовать возможность задавать вопрос о товаре из его карточки. При этом, админу должно приходить письмо с вопросом, в теле которого была бы ссылка на интересующий покупателя товар.


Было решено попробовать вот такой модуль Ask a Question V3 (http://www.opencart.com/index.php?route=extension/extension/info&extension_id=7868&filter_search=product%20question&filter_license=0&page=1), реализован через VQMod.


После установки появился желаемый таб в карточке товара, но при переходе на него появляется строка с предупреждением-ссылкой "Notice: Undefined variable: product_info in /home/u530754742/public_html/vqmod/vqcache/vq2-catalog_view_theme_rubber_template_product_product.tpl on line 470" При этом модуль работает исправно: на почту приходит письмо с текстом вопроса, картинокй товара и ссылкой на этот товар, но текст ссылки содержит не название, а вот такое предупреждение-ссылку "<b>Notice</b>: Undefined variable: product_info in <b>/home/u530754742/public_html/vqmod/vqcache/vq2-catalog_view_theme_rubber_template_product_product.tpl</b> on line <b>476</b>:" При клике на это предупреждение происходит переход именно на тот товар о котором спрашивает посетитель.


Установлена сборка 1.5.6.4.1 с шаблоном Rubber.


Надеюсь на вашу помощь в решении вопроса.


 


Скрин ошибки:


post-656-0-53283300-1424251492_thumb.png


Ссылка на комментарий
Поделиться на других сайтах

Смотрите файл плагина .xml, а также файл контролера catalog/controller/product/product.php"


Там у вас не определенная переменая text_intro


Ссылка на комментарий
Поделиться на других сайтах

Смотрите файл плагина .xml, а также файл контролера catalog/controller/product/product.php"

Там у вас не определенная переменая text_intro

Если я не ошибаюсь, text_intro - это перемення тянет текст из языкового файла. Если добавить её в языковой файл, то будет выводиться заданный текст. Здесь, скорее всего, проблема в формировании текста гипперссылки - не получается взять название товара, а сама ссылка на товар формируется парвильно.

Подозреваю, что проблема где-то в этой вот строке в .xml контролера:

<div id="tab-extra" class="tab-extra"><p><?php echo $text_intro; ?><a href="<?php echo $link_product; ?>"><?php echo $product_info['name']; ?></a></p>

Ссылка на комментарий
Поделиться на других сайтах

 

без определения переменой в контролере ничего не выйдет

 

$this->data['text_intro'] = $this->language->get('text_intro');

Даже после руссификации данного контроллера, когда я прописал некий текст

$_['text_intro']     = 'Пожалуйста, задайте свой вопрос по данному товару: ';

ничего не поменялось. После текста "Пожалуйста, задайте свой вопрос по данному товару:" идет гипперссылка с тем же текстом "Notice: Undefined variable: product_info in /home/u530754742/public_html/vqmod/vqcache/vq2-catalog_view_theme_rubber_template_product_product.tpl on line 470"

Ссылка на комментарий
Поделиться на других сайтах

Замените переменную

<?php echo $product_info['name']; ?> 

на эту

<?php echo $heading_title; ?>

Она там в двух местах если не ошибаюсь

Огромное спасибо за совет, помогло )

Ссылка на комментарий
Поделиться на других сайтах


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


сборка 1.5.6.4. ( Rubber )


из журнала ошибок:


  id        : Ask a Question


   version   : 3

   vqmver    : 1.0.8

   author    : Salvatore D. Testoni (Original: Allen Shea)

VQModObject::parseMods - Could not resolve path for [catalog/language/spanish/product/product.php] (SKIPPED)

Ссылка на комментарий
Поделиться на других сайтах

Could not resolve path for [catalog/language/spanish/product/product.php]

 

 

Не удается найти такой путь! Видимо из за того что у вас нет испанской локализации.

Но я не думаю что это должно влиять на работу модуля, так у него в комплекте есть и язык который есть по умолчанию, английский.

 

Причина может быть в том что у вас есть модификация шаблона product.tpl....

Ссылка на комментарий
Поделиться на других сайтах

 

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

сборка 1.5.6.4. ( Rubber )

из журнала ошибок:

  id        : Ask a Question

   version   : 3

   vqmver    : 1.0.8

   author    : Salvatore D. Testoni (Original: Allen Shea)

VQModObject::parseMods - Could not resolve path for [catalog/language/spanish/product/product.php] (SKIPPED)

 

Если вы используете шаблон Rubber, в файле контроллера, в 269 строке откорректируйте путь к вашему шаблону. Он должен быть таким: catalog/view/theme/rubber/template/product/product.tpl

Ссылка на комментарий
Поделиться на других сайтах

Если вы используете шаблон Rubber, в файле контроллера, в 269 строке откорректируйте путь к вашему шаблону. Он должен быть таким: catalog/view/theme/rubber/template/product/product.tpl

Да помогло, спасибо.

Но вот второй вопрос как его русифицировать, после того как переписываю строчку 

$_['text_intro'] = 'Пожалуйста, задайте свой вопрос по данному товару:';

модуль  не работает,

в описании в vqmod менеджера под названием AskQuestion.xml такая вот надпись:

Warning: VQMod script XML syntax is invalid! Please contact the Автор for support.

Ссылка на комментарий
Поделиться на других сайтах

модуль заточен под 2 языка испанский и английский, вам же нужно по аналогии с одним из, сделать для русского.


 


а перестает работать потому что надо пересохранить файл в кодировке UTF-8 если уж вы в нем пишите кириллицей


Ссылка на комментарий
Поделиться на других сайтах

Кодировку поменял модуль теперь не вылетает.


Но русифицировать не удалось.



<![CDATA[
$_['text_intro'] = 'Пожалуйста, задайте свой вопрос по данному товару: ';
$_['text_message'] = '<p>Your enquiry has been successfully sent to the store owner!</p>';
$_['text_subject'] = 'Question about the product: ';
$_['heading_title'] = 'Enquiry about product';
$_['entry_email'] = 'E-Mail Address:';
$_['entry_enquiry'] = 'Enquiry:';
$_['email_subject'] = 'Question about the product %s from %s';
$_['tab_extra'] = 'Задать вопрос';
$_['error_email'] = 'E-Mail Address does not appear to be valid!';
$_['error_enquiry'] = 'Вопрос должен быть между 10 и 3000 знаков!';

post-1240-0-48364000-1424468835_thumb.jp

Ссылка на комментарий
Поделиться на других сайтах

а адрес файла прописали в котором должны появиться эти русские значения переменных?



<file name="catalog/language/russian/product/product.php">
Ссылка на комментарий
Поделиться на других сайтах

Ну я так понял нужно прописать в место английского на русский.  



<file name="catalog/language/russian/product/product.php">
<operation>
<search position="after">
<![CDATA[
$_['text_error'] = 'Product not found!';
]]></search>
<add>
<![CDATA[
$_['text_intro'] = 'Пожалуйста, задайте свой вопрос по данному товару: ';
$_['text_message'] = '<p>Your enquiry has been successfully sent to the store owner!</p>';
$_['text_subject'] = 'Question about the product: ';
$_['heading_title'] = 'Enquiry about product';
$_['entry_email'] = 'E-Mail Address:';
$_['entry_enquiry'] = 'Enquiry:';
$_['email_subject'] = 'Question about the product %s from %s';
$_['tab_extra'] = 'Задать вопрос';
$_['error_email'] = 'E-Mail Address does not appear to be valid!';
$_['error_enquiry'] = 'Вопрос должен быть между 10 и 3000 знаков!';
]]></add>
</operation>
</file>

Но тогда таб не появляется в карточке товара.


Ссылка на комментарий
Поделиться на других сайтах

из журнала ошибок: 


 id        : Ask a Question

   version   : 3

   vqmver    : 1.0.8

   author    : Salvatore D. Testoni (Original: Allen Shea)

 

File Name    : catalog/language/russian/product/product.php(0)

VQModObject::applyMod - SEARCH NOT FOUND (ABORTING MOD): $_['text_error']        = 'Product not found!';

Ссылка на комментарий
Поделиться на других сайтах

в русском файле нет такой строчки



$_['text_error'] = 'Product not found!';


вы ведь поймите то что вы делаете


 


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


Ссылка на комментарий
Поделиться на других сайтах

Ну,  Вы простите меня, вот понимаю что делаю что то не так, а что нужно сделать не пойму.

 

Ну вы уже с этим разобрались или нет? 

Ссылка на комментарий
Поделиться на других сайтах

нет. :(

В языковом файле product.php, который расположен по пути catalog/language/russian/product, в разделе Error добавьте строку

$_['text_error'] = 'Product not found!';

Должно помочь.

Ссылка на комментарий
Поделиться на других сайтах

В языковом файле product.php, который расположен по пути catalog/language/russian/product, в разделе Error добавьте строку

$_['text_error'] = 'Product not found!';

Должно помочь.

 

Правильнее будет в файле плагина XML заменить эту строчку на

$_['text_error'] = 'Товар не найден!';

Ссылка на комментарий
Поделиться на других сайтах

 

Правильнее будет в файле плагина XML заменить эту строчку на

$_['text_error'] = 'Товар не найден!';

Сейчас точно не вспомню, но по-моему, без добавления этой строки еще и в языковой файл таб не появится.

Ссылка на комментарий
Поделиться на других сайтах

Сейчас точно не вспомню, но по-моему, без добавления этой строки еще и в языковой файл таб не появится.

 

Эта сточка взята из того же языкового файла

Ссылка на комментарий
Поделиться на других сайтах

 

Правильнее будет в файле плагина XML заменить эту строчку на

$_['text_error'] = 'Товар не найден!';

Да, помогло. Спасибо.

Еще вопрос, как убрать, поменять надпись "Новый отзыв ожидает одобрения."

post-1240-0-04063200-1424874971_thumb.jp

Ссылка на комментарий
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сейчас и зарегистрироваться позже. Если у вас есть учётная запись, войдите, чтобы публиковать под своей учётной записью.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Показать вместо этого как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Нельзя вставлять изображения напрямую. Загрузите или вставьте изображения по URL.

 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу