Привет!
Хочу чтобы в каталоге товаров, для товара у которого есть вариации (именно вариации) перед ценой стояла приставка "от". Подскажите, в какую сторону копать?
Привет!
Хочу чтобы в каталоге товаров, для товара у которого есть вариации (именно вариации) перед ценой стояла приставка "от". Подскажите, в какую сторону копать?
Смотрите шаблон design/themes/[ТЕМА]/templates/common/product_data.tpl (используйте хук products:prices_block). Например, можно проверять есть ли в массиве значение $product.variation_options и добавлять текст, если условие выполняется.
Подскажите еще как вывести стоимость вариации в карточке товара рядом с самой вариацией? Точно как это реализовано в опциях, но только стоимость, а не модификатор цены.
Смотрите шаблон design/themes/[ТЕМА]/templates/common/product_data.tpl (используйте хук products:prices_block). Например, можно проверять есть ли в массиве значение $product.variation_options и добавлять текст, если условие выполняется.
сделал так
{if $product.variation_options} от {/if}
но приставка "от" добавляется ко всем настраиваемым товарам. Как сделать, чтобы добавлялась только если есть две вариации и больше?
Попробуйте так
{if $product.variation_options|count > 1} от {/if}
Попробуйте так
{if $product.variation_options|count > 1} от {/if}
не работает - {$product.variation_options|count} для всех настраиваемых товаров с любым кол-вом вариаций выводит цифру 1
не работает - {$product.variation_options|count} для всех настраиваемых товаров с любым кол-вом вариаций выводит цифру 1
Распечатайте $product, посмотрите, что там по вариациям есть
{$product|fn_print_r}
Совсем забыл про этот код.
Array ( [product_id] => 621 [product] => Полотенцесушители Mario Стандарт [instock_marker] => 1 [instock_sorting] => 1 [popularity] => 112 [sales_amount] => [product_code] => 1.1.0202.01.P [product_type] => C [status] => A [company_id] => 1 [list_price] => 2005 [amount] => 1 [weight] => 0.000 [length] => 0 [width] => 0 [height] => 0 [shipping_freight] => 0.00 [low_avail_limit] => 0 [timestamp] => 1500635969 [updated_timestamp] => 1502094844 [usergroup_ids] => 0 [is_edp] => N [edp_shipping] => N [unlimited_download] => N [tracking] => B [free_shipping] => Y [zero_price_action] => R [is_pbp] => N [is_op] => N [is_oper] => N [is_returnable] => Y [return_period] => 10 [avail_since] => 0 [out_of_stock_actions] => N [localization] => [min_qty] => 0 [max_qty] => 0 [qty_step] => 0 [list_qty_count] => 0 [tax_ids] => [age_verification] => N [age_limit] => 0 [options_type] => P [exceptions_type] => F [details_layout] => default [shipping_params] => a:5:{s:16:"min_items_in_box";i:0;s:16:"max_items_in_box";i:0;s:10:"box_length";i:0;s:9:"box_width";i:0;s:10:"box_height";i:0;} [my_opt_price] => 0.00 [my_opt_price_modif] => 0.000 [my_opt_price_modif_type] => A [my_opt_price_cur] => UAH [external_id] => [parent] => N [facebook_obj_type] => [parent_product_id] => 0 [variation_code] => [variation_options] => [577] [price] => 2005 [short_description] => [full_description] =>Изготовлен из нержавеющей стали АІSI 304 может быть оборудован электрическим теном с любой стороны.
[meta_keywords] => [meta_description] => [search_words] => [promo_text] => [category_ids] => Array ( [0] => 254 )[position] => 0 [seo_name] => polotencesushitel-mario-standart [seo_path] => 254 [average_rating] => [discussion_type] => B [discussion_thread_id] => 780 [main_category] => 254 [selected_options] => Array ( [577] => 2792 ) [product_options] => Array ( [577] => Array ( [option_id] => 577 [product_id] => 621 [company_id] => 1 [option_type] => R [inventory] => N [regexp] => [required] => Y [multiupload] => N [allowed_extensions] => [max_file_size] => 0 [missing_variants_handling] => M [status] => A [position] => 0 [value] => 2792 [external_id] => [option_name] => Размер (ВхШ), мм [option_text] => [description] => [inner_hint] => [incorrect_message] => [comment] => [variants] => Array ( [2792] => Array ( [variant_id] => 2792 [option_id] => 577 [position] => 0 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 600х430/400 [image_pair] => Array ( ) ) [2793] => Array ( [variant_id] => 2793 [option_id] => 577 [position] => 1 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 600х530/500 [image_pair] => Array ( ) ) [2794] => Array ( [variant_id] => 2794 [option_id] => 577 [position] => 2 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 700х430/400 [image_pair] => Array ( ) ) [2795] => Array ( [variant_id] => 2795 [option_id] => 577 [position] => 3 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 700х530/500 [image_pair] => Array ( ) ) [2796] => Array ( [variant_id] => 2796 [option_id] => 577 [position] => 4 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 800х530/500 [image_pair] => Array ( ) ) [2797] => Array ( [variant_id] => 2797 [option_id] => 577 [position] => 5 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 900х530/500 [image_pair] => Array ( ) ) [2798] => Array ( [variant_id] => 2798 [option_id] => 577 [position] => 6 [modifier] => 0.000 [modifier_type] => A [weight_modifier] => 0.000 [weight_modifier_type] => A [variant_name] => 1200х530/500 [image_pair] => Array ( ) ) ) ) ) [has_options] => [selected_variation_code] => 621_2792 [variation_product_id] => 622 [options_update] => 7 [main_pair] => Array ( [pair_id] => 4029 [image_id] => 0 [detailed_id] => 4051 [position] => 0 [detailed] => Array ( [object_id] => 622 [object_type] => product [image_path] => /images/watermarked/1/detailed/4/standart-600x400-1.jpg [alt] => Полотенцесушители Mario Стандарт [image_x] => 990 [image_y] => 1326 [http_image_path] => /images/watermarked/1/detailed/4/standart-600x400-1.jpg [https_image_path] => /images/detailed/4/standart-600x400-1.jpg [absolute_path] => //public_html/images/watermarked/1/detailed/4/standart-600x400-1.jpg [relative_path] => detailed/4/standart-600x400-1.jpg ) ) [base_price] => 2005.000000 [inventory_amount] => 1 [image_pairs] => Array ( [4030] => Array ( [pair_id] => 4030 [image_id] => 0 [detailed_id] => 4052 [position] => 0 [detailed] => Array ( [object_id] => 622 [object_type] => product [image_path] => /images/watermarked/1/detailed/4/standart-600x400-2.jpg [alt] => Полотенцесушители Mario Стандарт [image_x] => 1200 [image_y] => 1011 [http_image_path] => /images/watermarked/1/detailed/4/standart-600x400-2.jpg [https_image_path] => /images/detailed/4/standart-600x400-2.jpg [absolute_path] => /public_html/images/watermarked/1/detailed/4/standart-600x400-2.jpg [relative_path] => detailed/4/standart-600x400-2.jpg ) ) ) [base_modifier] => 2005 [original_price] => 2005 [modifiers_price] => 0 [discounts] => Array ( [A] => 0 [P] => 0 ) [qty_content] => Array ( ) [detailed_params] => Array ( [get_icon] => 1 [get_detailed] => 1 [get_additional] => 1 [get_options] => 1 [get_discounts] => 1 [get_features] => [get_extra] => [get_taxed_prices] => 1 [get_for_one_product] => [detailed_params] => 1 [features_display_on] => C )
[for_discount] => D
[product_features] => Array
(
[0] => Array
(
[feature_id] => 82
[value] =>
[value_int] =>
[variant_id] => 6494
[feature_type] => M
[description] => Ширина (габарит), мм
[prefix] =>
[suffix] =>
[variant] => 430
[parent_id] => 47
[features_hash] => 35-6495
[variants] => Array
(
[6494] => Array
(
[value] =>
[value_int] =>
[variant_id] => 6494
[variant] => 430
[image_pairs] =>
)[6495] => Array ( [value] => [value_int] => [variant_id] => 6495 [variant] => 530 ) ) ) [1] => Array ( [feature_id] => 19 [value] => [value_int] => [variant_id] => 146 [feature_type] => M [description] => Высота, мм [prefix] => [suffix] => [variant] => 600 [parent_id] => 47 [features_hash] => 11-163 [variants] => Array ( [146] => Array ( [value] => [value_int] => [variant_id] => 146 [variant] => 600 [image_pairs] => ) [147] => Array ( [value] => [value_int] => [variant_id] => 147 [variant] => 700 ) [148] => Array ( [value] => [value_int] => [variant_id] => 148 [variant] => 800 ) [149] => Array ( [value] => [value_int] => [variant_id] => 149 [variant] => 900 ) [163] => Array ( [value] => [value_int] => [variant_id] => 163 [variant] => 1200 ) ) ) [2] => Array ( [feature_id] => 20 [value] => [value_int] => [variant_id] => 164 [feature_type] => M [description] => Межцентровое растояние, мм [prefix] => [suffix] => [variant] => 400 [parent_id] => 47 [features_hash] => 12-145 [variants] => Array ( [164] => Array ( [value] => [value_int] => [variant_id] => 164 [variant] => 400 [image_pairs] => ) [145] => Array ( [value] => [value_int] => [variant_id] => 145 [variant] => 500 ) ) ) [3] => Array ( [feature_id] => 21 [value] => [value_int] => 170.00 [variant_id] => 6357 [feature_type] => N [description] => Глубина, мм [prefix] => [suffix] => [variant] => 170 [parent_id] => 47 [variants] => Array ( [6357] => Array ( [value] => [value_int] => 170.00 [variant_id] => 6357 [variant] => 170 [image_pairs] => ) ) ) [4] => Array ( [feature_id] => 67 [value] => [value_int] => 155.00 [variant_id] => 0 [feature_type] => O [description] => Теплоотдача при 65°С [prefix] => [suffix] => Вт [variant] => [parent_id] => 47 ) )
)
Получилось, но только так. Думаю это не совсем правильный вариант, т.к. подсчитываются опции, а не вариации
{if $product.variation_options} {if $product.options_update} от {/if} {/if}
Получилось, но только так. Думаю это не совсем правильный вариант, т.к. подсчитываются опции, а не вариации
{if $product.variation_options} {if $product.options_update} от {/if} {/if}
Да, что-то нет нужной информации в массиве. Тогда дорабатывать надо, если текущий вариант не подходит