Расширение ннтернет-магазина для Joomla 3.
Отображение атрибутов товара в поле заказа и письме
- Алексей
- Автор темы
- Не в сети
- Новый участник
Less
Больше
- Сообщений: 5
- Спасибо получено: 0
4 года 6 мес. назад #9110
от Алексей
Алексей создал тему: Отображение атрибутов товара в поле заказа и письме
Здравствуйте!
Проблема заключается в следующем: атрибуты товара из настраиваемых полей отображаются в корзине товаров, но не отображаются в таблице формы заказа, которая появляется после нажатия кнопки "Оформить заказ", и письме, которое отсылается покупателю и продавцу.
Настроек в админке не нашел. Копался в php файлах и методом научного тыка определил, что некорректно выполняется
function plgVmDisplayInOrderFE(&$item, $productCustom, &$html) в файле textinput.php ("site"\plugins\vmcustom\textinput\).
Дальше отследить не могу.
com_virtuemart.3.6.10.10211
Joomla_3.9.16-Stable
Прошу помочь в данном вопросе.
Благодарю.
Проблема заключается в следующем: атрибуты товара из настраиваемых полей отображаются в корзине товаров, но не отображаются в таблице формы заказа, которая появляется после нажатия кнопки "Оформить заказ", и письме, которое отсылается покупателю и продавцу.
Настроек в админке не нашел. Копался в php файлах и методом научного тыка определил, что некорректно выполняется
function plgVmDisplayInOrderFE(&$item, $productCustom, &$html) в файле textinput.php ("site"\plugins\vmcustom\textinput\).
Дальше отследить не могу.
com_virtuemart.3.6.10.10211
Joomla_3.9.16-Stable
Прошу помочь в данном вопросе.
Благодарю.
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
Less
Больше
- Сообщений: 2868
- Спасибо получено: 659
4 года 6 мес. назад #9111
от Wedal
Wedal ответил в теме Отображение атрибутов товара в поле заказа и письме
Алексей, для таких полей в настройках должна стоять опция "Атрибут корзины" в настройках поля. Вероятно, если вы видите значения полей в корзине, то она у вас стоит, но всё-таки проверьте.
После оформления заказа таблицы с товарами в стандартных макетах вообще нет. Возможно вы имеете ввиду письмо или просмотр заказа. За них отвечают отдельные макеты в VM. Вам нужно посмотреть код, который выводит значения полей в корзине, в макете корзины, а затем попробовать добавить его в макеты письма и просмотра заказа.
Найти нужные макеты поможет эта статья:
wedal.ru/rasshireniya-joomla/nastrojka-shablona-virtuemart-3.html
После оформления заказа таблицы с товарами в стандартных макетах вообще нет. Возможно вы имеете ввиду письмо или просмотр заказа. За них отвечают отдельные макеты в VM. Вам нужно посмотреть код, который выводит значения полей в корзине, в макете корзины, а затем попробовать добавить его в макеты письма и просмотра заказа.
Найти нужные макеты поможет эта статья:
wedal.ru/rasshireniya-joomla/nastrojka-shablona-virtuemart-3.html
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Алексей
- Автор темы
- Не в сети
- Новый участник
Less
Больше
- Сообщений: 5
- Спасибо получено: 0
4 года 6 мес. назад #9112
от Алексей
Алексей ответил в теме Отображение атрибутов товара в поле заказа и письме
В админке обе опции "Атрибут корзины" включены.
Да, я имел в виду письмо и просмотр заказа.
Подставлять код из корзины - логично. Уже пытался, но результат никакой. И потом - в PHP я не на "ты", так что скорее всего корректировка кода была с ошибками.
Хотелось бы точно знать: была ли такая проблема с отображением атрибутов раньше и конкретный метод ее устранения.
Возможно ли, что это происходит из-за конфликта кодов Virtuemart и шаблона Joomla (стандартный Beez3)?
Да, я имел в виду письмо и просмотр заказа.
Подставлять код из корзины - логично. Уже пытался, но результат никакой. И потом - в PHP я не на "ты", так что скорее всего корректировка кода была с ошибками.
Хотелось бы точно знать: была ли такая проблема с отображением атрибутов раньше и конкретный метод ее устранения.
Возможно ли, что это происходит из-за конфликта кодов Virtuemart и шаблона Joomla (стандартный Beez3)?
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Алексей
- Автор темы
- Не в сети
- Новый участник
Less
Больше
- Сообщений: 5
- Спасибо получено: 0
4 года 6 мес. назад #9113
от Алексей
Алексей ответил в теме Отображение атрибутов товара в поле заказа и письме
Нет, конфликта кодов точно нет. Проверил нестандартным шаблоном.
Хотел бы еще раз проследить логику кода и узнать Ваше мнение.
Итак, начало идет в "site"\components\com_virtuemart\views\invoice\tmpl\mail_html_pricelist.php:
В строке 64 основная функция, выводящая информацию в письмо и печать в PDF - VirtueMartModelCustomfields.
Строка 86 - добавляет переменную атрибутов и присваивает ему выполнение ф-ции VirtueMartModelCustomfields с ссылкой на ф-ю CustomsFieldOrderDisplay($item,'FE'), которая описана в файле "site"\administrator\components\com_virtuemart\models\customfields.php, строка 911.
Тут идет проверка на заполненность данных, декодирование и вызов ф-ции в строке 875:
displayProductCustomfieldSelected. в которую подставляются параметры ($item, '<div class="vm-customfield-cart">', 'plgVmDisplayInOrder' . $view).
А дальше непонятно что ломается: либо переменная $item, либо триггер 'plgVmDisplayInOrder' . $view, который описан в файле:
"site"\plugins\vmcustom\textinput\textinput.php, строка 122.
Хотел бы еще раз проследить логику кода и узнать Ваше мнение.
Итак, начало идет в "site"\components\com_virtuemart\views\invoice\tmpl\mail_html_pricelist.php:
В строке 64 основная функция, выводящая информацию в письмо и печать в PDF - VirtueMartModelCustomfields.
Строка 86 - добавляет переменную атрибутов и присваивает ему выполнение ф-ции VirtueMartModelCustomfields с ссылкой на ф-ю CustomsFieldOrderDisplay($item,'FE'), которая описана в файле "site"\administrator\components\com_virtuemart\models\customfields.php, строка 911.
Тут идет проверка на заполненность данных, декодирование и вызов ф-ции в строке 875:
displayProductCustomfieldSelected. в которую подставляются параметры ($item, '<div class="vm-customfield-cart">', 'plgVmDisplayInOrder' . $view).
А дальше непонятно что ломается: либо переменная $item, либо триггер 'plgVmDisplayInOrder' . $view, который описан в файле:
"site"\plugins\vmcustom\textinput\textinput.php, строка 122.
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
Less
Больше
- Сообщений: 2868
- Спасибо получено: 659
4 года 6 мес. назад #9114
от Wedal
Wedal ответил в теме Отображение атрибутов товара в поле заказа и письме
Алексей, так, подождите. Что-то вы уже слишком глубоко закопались. В макете заказа есть перебор товаров в цикле. Пусть объект товара, это переменная $item. Первым делом попробуйте вывести данные в виде:
<pre><?php print_r $item ?></pre>
Далее посмотрите, если в объекте информация о настраиваемых полях. Если да, то просто выведите ее. Если нет, тогда уже нужно копать то, что вы написали выше.
<pre><?php print_r $item ?></pre>
Далее посмотрите, если в объекте информация о настраиваемых полях. Если да, то просто выведите ее. Если нет, тогда уже нужно копать то, что вы написали выше.
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Алексей
- Автор темы
- Не в сети
- Новый участник
Less
Больше
- Сообщений: 5
- Спасибо получено: 0
4 года 6 мес. назад #9115
от Алексей
Алексей ответил в теме Отображение атрибутов товара в поле заказа и письме
Попробовал.
Ломается шаблон и пишет ошибку:
#0 syntax error, unexpected '$item' (T_VARIABLE)
Ломается шаблон и пишет ошибку:
#0 syntax error, unexpected '$item' (T_VARIABLE)
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
Less
Больше
- Сообщений: 2868
- Спасибо получено: 659
4 года 6 мес. назад #9116
от Wedal
Wedal ответил в теме Отображение атрибутов товара в поле заказа и письме
Алексей, $item - это для примера. Смотрите в коде правильную переменную. И поместите ее в скобки, вот так:
<pre><?php print_r($item) ?></pre>
<pre><?php print_r($item) ?></pre>
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Алексей
- Автор темы
- Не в сети
- Новый участник
Less
Больше
- Сообщений: 5
- Спасибо получено: 0
4 года 6 мес. назад #9121
от Алексей
Алексей ответил в теме Отображение атрибутов товара в поле заказа и письме
Проблему решил.
Отписался тут joomla-support.ru/thread/48837/#post-193581
Благодарю за отзывчивость!
Отписался тут joomla-support.ru/thread/48837/#post-193581
Благодарю за отзывчивость!
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.