Форум русской поддержки Joomla!® CMS
03.12.2016, 08:42:23 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Не выводятся значения настраиваемых полей на странице категории VirtueMart 3

 (Прочитано 740 раз)
0 Пользователей и 1 Гость смотрят эту тему.
andrey222
Осваиваюсь на форуме
***

Репутация: +0/-1
Offline Offline

Сообщений: 45



« : 24.09.2015, 19:36:10 »

Всем привет! Версия Joomla 3.4.1, VirtueMart 3.0.10. САЙТ

Проблема заключается в том, что при выводе настраиваемых полей на странице категории VirtueMart названия есть, а значений - нет.

Правлю файл /public_html/templates/jsn_venture_free/html/com_virtuemart/sublayouts/products.php


По умолчанию настраиваемые поля не выводятся. Нашел в сети такой код и вставил его ниже артикула:

Код:
<?php if($product->customfields){
foreach ($product->customfields as $customfield) {
echo "<p><strong>".$customfield->custom_title.":</strong> ".$customfield->display."</p>";
}
} ?>

С ним и наблюдается данная проблема.

Пробовал и другое решение (в админке прописал в поле позиции настраиваемого поля custom), но оно вообще не выводит даже названий:

Код:
<?php
echo shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$product,'position'=>'custom'));
?>


Прошу знающих людей подсказать, что нужно исправить. Заранее благодарю!
« Последнее редактирование: 22.11.2016, 17:34:32 от fsv » Записан
denis2008
Захожу иногда
**

Репутация: +2/-0
Offline Offline

Сообщений: 20


« Ответ #1 : 28.09.2015, 15:43:49 »

По умолчанию поля с типом "Атрибут Корзины" должны выводиться.
А в Virtuemart-Конфигурация-Внешний вид включено "Показывать произвольные поля товаров в представлении списков"?
« Последнее редактирование: 28.09.2015, 16:03:59 от denis2008 » Записан
NewUsers
Давно я тут
****

Репутация: +32/-0
Online Online

Пол: Мужской
Сообщений: 393


« Ответ #2 : 28.09.2015, 16:23:53 »

Вместо кода который ты вставил под артикул поставь вот этот
Код:
<?php print_r($product->customfields); ?>

Что будет выводить на страницу?
Записан
andrey222
Осваиваюсь на форуме
***

Репутация: +0/-1
Offline Offline

Сообщений: 45



« Ответ #3 : 29.09.2015, 22:05:40 »

Вот что появляется, если заменить на указанный.

Код:
Array ( [0] => stdClass Object ( [virtuemart_custom_id] => 6 [custom_parent_id] => 0 [virtuemart_vendor_id] => 1 [custom_jplugin_id] => 0 [custom_element] => [admin_only] => 0 [custom_title] => Производитель [show_title] => 1 [custom_tip] => [custom_value] => [custom_desc] => [field_type] => S [is_list] => 0 [is_hidden] => 0 [is_cart_attribute] => 0 [is_input] => 0 [layout_pos] => [custom_params] => addEmpty="0"|selectType="0"| [shared] => 0 [published] => 1 [ordering] => 0 [virtuemart_customfield_id] => 2593 [virtuemart_product_id] => 783 [customfield_value] => Zitrek [customfield_price] => [customfield_params] => [fpublished] => 0 [override] => 0 [disabler] => 0 [_varsToPushParamCustom] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParamCustomField] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParam] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [addEmpty] => 0 [selectType] => 0 [_xParams] => customfield_params ) [1] => stdClass Object ( [virtuemart_custom_id] => 107 [custom_parent_id] => 0 [virtuemart_vendor_id] => 1 [custom_jplugin_id] => 0 [custom_element] => [admin_only] => 0 [custom_title] => Нормативная поверхностная нагрузка, (кг/м2): [show_title] => 1 [custom_tip] => [custom_value] => [custom_desc] => [field_type] => S [is_list] => 0 [is_hidden] => 0 [is_cart_attribute] => 0 [is_input] => 0 [layout_pos] => [custom_params] => 0 [shared] => 0 [published] => 1 [ordering] => 1 [virtuemart_customfield_id] => 2594 [virtuemart_product_id] => 783 [customfield_value] => 250 [customfield_price] => [customfield_params] => [fpublished] => 0 [override] => 0 [disabler] => 0 [_varsToPushParamCustom] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParamCustomField] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParam] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [addEmpty] => 0 [selectType] => 0 [_xParams] => customfield_params ) [2] => stdClass Object ( [virtuemart_custom_id] => 108 [custom_parent_id] => 0 [virtuemart_vendor_id] => 1 [custom_jplugin_id] => 0 [custom_element] => [admin_only] => 0 [custom_title] => Размеры рабочей площадки, (м): [show_title] => 1 [custom_tip] => [custom_value] => [custom_desc] => [field_type] => S [is_list] => 0 [is_hidden] => 0 [is_cart_attribute] => 0 [is_input] => 0 [layout_pos] => [custom_params] => 0 [shared] => 0 [published] => 1 [ordering] => 2 [virtuemart_customfield_id] => 2595 [virtuemart_product_id] => 783 [customfield_value] => 0,7х1,6 [customfield_price] => [customfield_params] => [fpublished] => 0 [override] => 0 [disabler] => 0 [_varsToPushParamCustom] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParamCustomField] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParam] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [addEmpty] => 0 [selectType] => 0 [_xParams] => customfield_params ) [3] => stdClass Object ( [virtuemart_custom_id] => 109 [custom_parent_id] => 0 [virtuemart_vendor_id] => 1 [custom_jplugin_id] => 0 [custom_element] => [admin_only] => 0 [custom_title] => Максимальная высота рабочей площадки, (м): [show_title] => 1 [custom_tip] => [custom_value] => [custom_desc] => [field_type] => S [is_list] => 0 [is_hidden] => 0 [is_cart_attribute] => 0 [is_input] => 0 [layout_pos] => [custom_params] => 0 [shared] => 0 [published] => 1 [ordering] => 3 [virtuemart_customfield_id] => 2596 [virtuemart_product_id] => 783 [customfield_value] => 4,0 [customfield_price] => [customfield_params] => [fpublished] => 0 [override] => 0 [disabler] => 0 [_varsToPushParamCustom] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParamCustomField] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParam] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [addEmpty] => 0 [selectType] => 0 [_xParams] => customfield_params ) [4] => stdClass Object ( [virtuemart_custom_id] => 110 [custom_parent_id] => 0 [virtuemart_vendor_id] => 1 [custom_jplugin_id] => 0 [custom_element] => [admin_only] => 0 [custom_title] => Максимальная высота вышки, (м): [show_title] => 1 [custom_tip] => [custom_value] => [custom_desc] => [field_type] => S [is_list] => 0 [is_hidden] => 0 [is_cart_attribute] => 0 [is_input] => 0 [layout_pos] => [custom_params] => 0 [shared] => 0 [published] => 1 [ordering] => 4 [virtuemart_customfield_id] => 2597 [virtuemart_product_id] => 783 [customfield_value] => 4,8 [customfield_price] => [customfield_params] => [fpublished] => 0 [override] => 0 [disabler] => 0 [_varsToPushParamCustom] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParamCustomField] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [_varsToPushParam] => Array ( [addEmpty] => Array ( [0] => 0 [1] => int ) [selectType] => Array ( [0] => 0 [1] => int ) ) [addEmpty] => 0 [selectType] => 0 [_xParams] => customfield_params ) )
Записан
andrey222
Осваиваюсь на форуме
***

Репутация: +0/-1
Offline Offline

Сообщений: 45



« Ответ #4 : 29.09.2015, 22:11:04 »

В этом списке нашел строчку "customfield_value" и вписал дополнительно. Вот какой код заработал:

Код:
<?php if($product->customfields){
foreach ($product->customfields as $customfield) {
echo "<p><strong>".$customfield->custom_title."</strong> ".$customfield->customfield_value."</p>";
}
} ?>

Благодарю!


P.S.: denis2008, пробовал назначать атрибут корзины полям - сами по себе не выводились на страницу категории. На страницу с подробным описанием - да.
Попробовал включить "Показывать произвольные поля товаров в представлении списков" - без внедрённого вышеуказанного кода нужные поля на странице категории не выводятся. Вместе с вышеуказанным кодом - тоже. Поэтому отключил и теперь пользуюсь верхним решением.
« Последнее редактирование: 29.09.2015, 22:21:59 от andrey222 » Записан
mex
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 11


« Ответ #5 : 22.10.2015, 19:15:02 »

Убил кучу времени решая эту проблему!
Искал даже на англоязычных источниках, ломая глаза и голову!
Каким-то непонятный чудом наткнулся на эту ветку.
Я использую вот этот код на J3, VM3.0.10.

Код:
<?php if($product->customfields[0]->virtuemart_custom_id == 3){
       echo '<span class="product-field-display">';
       echo $product->customfields[0]->customfield_value;
       echo '</span>';
}?>
id==3 ID поля, выводится только значение.
Реализовано в шаблоне по типу таблицы с множеством столбиков, в каждом продублирован данный код со своим ID

только вот отображается ПЕРВОЕ заполненное поле из товара О_о
вдруг кто знает, почему так
« Последнее редактирование: 26.10.2015, 15:09:45 от mex » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet