freebsd_admin 0 Опубликовано 5 октября, 2011 Жалоба Share Опубликовано 5 октября, 2011 код для вывода доп полей товаров: {if $extra_fields_data} {foreach name=aussen item=extra_fields from=$extra_fields_data} {$extra_fields.NAME}: {$extra_fields.VALUE}<br /> {/foreach} {/if} [/CODE] Как вывести конкретное поле? например есть 2 закладки на странице товара и нужно разместить часть полей в одну закладку и часть в другую. Заранее благодарен! Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 5 октября, 2011 Жалоба Share Опубликовано 5 октября, 2011 Наверное как-то так: {$extra_fields_data[0].NAME}: {$extra_fields[0].VALUE}<br />{$extra_fields_data[1].NAME}: {$extra_fields[1].VALUE}<br /> [/code] Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 5 октября, 2011 Автор Жалоба Share Опубликовано 5 октября, 2011 Супер! Спасибо! Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 5 октября, 2011 Жалоба Share Опубликовано 5 октября, 2011 Не за что. Надеюсь, что разобрались. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 12 октября, 2011 Автор Жалоба Share Опубликовано 12 октября, 2011 Еще такой вопрос. Как сделать чтобы доп поле товара выводилось в листинге товаров? Я так понимаю что в /includes/modules/product_info.php за доп поля отвечает код include (DIR_WS_MODULES.FILENAME_GRADUATED_PRICE); $extra_fields_query = vamDBquery(" SELECT pef.products_extra_fields_status as status, pef.products_extra_fields_name as name, ptf.products_extra_fields_value as value FROM ". TABLE_PRODUCTS_EXTRA_FIELDS ." pef LEFT JOIN ". TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS ." ptf ON ptf.products_extra_fields_id=pef.products_extra_fields_id WHERE ptf.products_id=". $product->data['products_id'] ." and ptf.products_extra_fields_value<>'' and (pef.languages_id='0' or pef.languages_id='".$_SESSION['languages_id']."') ORDER BY products_extra_fields_order"); while ($extra_fields = vam_db_fetch_array($extra_fields_query,true)) { if (! $extra_fields['status']) // show only enabled extra field continue; $extra_fields_data[] = array ( 'NAME' => $extra_fields['name'], 'VALUE' => $extra_fields['value'] ); } $info->assign('extra_fields_data', $extra_fields_data); [/CODE] Можно его как то прикрутить к product_listing.php? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 12 октября, 2011 Жалоба Share Опубликовано 12 октября, 2011 По умолчанию выводятся. В шаблонах /templates/vamshop/module/product_listing/ есть такой код: {if $module_data.EXTRA_FIELDS} <dd class="itemDescription"> {foreach item=extra_fields from=$module_data.EXTRA_FIELDS} {$extra_fields.NAME}: {$extra_fields.VALUE}<br /> {/foreach} </dd> {/if} [/code] Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 12 октября, 2011 Автор Жалоба Share Опубликовано 12 октября, 2011 в данной папке только файлы product_listing_columns.html и product_listing_list.html. Там этого кода нету, он есть в /templates/vamshop/module.product_info/product_info_v1.html А я пытаюсь сделать чтобы одно доп поле товаров отображалось в списке товаров категории. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 12 октября, 2011 Автор Жалоба Share Опубликовано 12 октября, 2011 Вроде нашел решение на osCommerce. Буду тестить :) Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 12 октября, 2011 Автор Жалоба Share Опубликовано 12 октября, 2011 Не знаю можно ли выкладывать ссылки, вот решение, может кому нибудь поможет. http://oscomm.biz/index.php?showtopic=17452 Спасибо за помощь! Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 12 октября, 2011 Жалоба Share Опубликовано 12 октября, 2011 Можно конечно. У Вас наверное старая версия магазина, в текущей версии работает, по умолчанию есть уже код для вывода доп. полей. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 12 октября, 2011 Автор Жалоба Share Опубликовано 12 октября, 2011 Может быть) Версия магазина 1.64. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 12 октября, 2011 Жалоба Share Опубликовано 12 октября, 2011 Да, в 1.65 появился вывод доп. полей в списке товара. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 21 октября, 2011 Автор Жалоба Share Опубликовано 21 октября, 2011 Еще вопрос по нескольким закладкам: Два поля для первой закладки {$extra_fields_data[0].NAME}: {$extra_fields_data[0].VALUE}<br />{$extra_fields_data[1].NAME}: {$extra_fields_data[1].VALUE}<br /> И два поля для второй закладки {$extra_fields_data[2].NAME}: {$extra_fields_data[2].VALUE}<br />{$extra_fields_data[3].NAME}: {$extra_fields_data[3].VALUE}<br /> Если в админке не заполнить, допустип, первое поле, то индексы смещаются.. и получается не то что нужно. Как это подправить? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 21 октября, 2011 Жалоба Share Опубликовано 21 октября, 2011 Не знаю даже. Наверное кроме как заполнять всё, я, так, сходу, и не подскажу ничего. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 23 октября, 2011 Автор Жалоба Share Опубликовано 23 октября, 2011 А можно выводить строку доп поля даже если значение пустое? в каком файле это указывается? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 24 октября, 2011 Жалоба Share Опубликовано 24 октября, 2011 Так а что выводить, если нет ничего?! Наверное смотреть в /includes/modules/product_info.php как массив (array) задаётся для доп. полей и как-то под себя править. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 24 октября, 2011 Автор Жалоба Share Опубликовано 24 октября, 2011 А можно сделать проверку по имени? {if $extra_fields_data} {foreach name=aussen item=extra_fields from=$extra_fields_data} {$extra_fields.NAME}: {$extra_fields.VALUE}<br /> {/foreach} {/if} [/CODE] Добавить if {$extra_fields.NAME} == {#text#} Что нибудь в этом роде. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 24 октября, 2011 Жалоба Share Опубликовано 24 октября, 2011 Наверное можно. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 24 октября, 2011 Автор Жалоба Share Опубликовано 24 октября, 2011 А какой синтаксис здесь используеться? как то так? {if $extra_fields_data} {foreach name=aussen item=extra_fields from=$extra_fields_data} {if $extra_fields.NAME == #text#} {$extra_fields.NAME}: {$extra_fields.VALUE}<br /> {/if} {/foreach} {/if} Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 24 октября, 2011 Жалоба Share Опубликовано 24 октября, 2011 Ну а что за #text# !? Тогда уж и задавайте нормально условие: [b]{if $extra_fields.NAME == 'название'}[/b] {$extra_fields.NAME}: {$extra_fields.VALUE}<br /> [b]{/if}[/b] [/code] Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 24 октября, 2011 Автор Жалоба Share Опубликовано 24 октября, 2011 #text# -метка для языкового файла, для разных языков Ссылка на сообщение Поделиться на другие сайты
merchindaiser 1 Опубликовано 24 октября, 2011 Жалоба Share Опубликовано 24 октября, 2011 когда то парился тоже над этим вопросом. делал вот так {if $extra_fields_data} {$extra_fields_data[0].NAME}: {$extra_fields_data[0].VALUE} <br /> {$extra_fields_data[1].NAME}: {$extra_fields_data[1].VALUE} <br /> {/if} Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 24 октября, 2011 Автор Жалоба Share Опубликовано 24 октября, 2011 merchindaiser! Это уже установили на предыдущей странице) Индексы меняются в зависимости от того все поля вбиты или нет. Ссылка на сообщение Поделиться на другие сайты
freebsd_admin 0 Опубликовано 24 октября, 2011 Автор Жалоба Share Опубликовано 24 октября, 2011 Так работает: {if $extra_fields.NAME == 'название'} {$extra_fields.NAME}: {$extra_fields.VALUE}<br /> {/if} Проблема в том что на сайте два языка и хотелось бы еще сделать в языковом файле метку {#some_text#} для сравнения {if $extra_fields.NAME == '{#some_text#} '} - так не хочет работать.. Ссылка на сообщение Поделиться на другие сайты
merchindaiser 1 Опубликовано 24 октября, 2011 Жалоба Share Опубликовано 24 октября, 2011 ну попробуйте вбить в пустое поле в админке знак пробела. . значение будет. а вывод пустота. должно работать. хотя не уверен на 100 процентов) код пробела сьелся редактором) дешево и сердито.для всех языков) Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения