Получить IMG SRC с шаблоном Smarty

У меня есть шаблон Smarty, который в настоящее время вставляет изображение продукта. То, что я хотел бы сделать, это изменить этот код так, чтобы он давал мне только изображение.

Шаблон включает в себя файл ‘product_icon.tpl’ и из того, что я понял, это соответствующий код из этого файла:

{capture name="main_icon"}
<a href="{"$product_detail_view_url"|fn_url}">
{include file="common/image.tpl" obj_id=$obj_id_prefix images=$product.main_pair image_width=$settings.Thumbnails.product_lists_thumbnail_width image_height=$settings.Thumbnails.product_lists_thumbnail_height}
</a>
{/capture}

Затем включенный туда файл ‘image.tpl’ содержит следующее (для краткости обрезан до соответствующей части):

{capture name="product_image_object"}
{** Sets image displayed in product list **}
{hook name="products:product_image_object"}
<img class="ty-pict {$valign} {$class} {if $lazy_load}lazyOwl{/if} {if $generate_image}ty-spinner{/if} cm-image" {if $obj_id && !$no_ids}id="det_img_{$obj_id}"{/if} {if $generate_image}data-ca-image-path="{$image_data.image_path}"{/if} {if $lazy_load}data-{/if}src="{if $generate_image}{$images_dir}/icons/spacer.gif{else}{$image_data.image_path}{/if}" alt="{$image_data.alt}" title="{$image_data.alt}" {if $image_onclick}onclick="{$image_onclick}"{/if}  {if $image_width || $image_height} style="min-width: {$image_data.width}px; min-height: {$image_data.height}px; "{/if}/>
{if $image_data.alt}<span class="stonestreets-caption">{$image_data.alt}</span>{/if}
{/hook}
{/capture}

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

0

Решение

Вы всегда можете использовать prin_r в TPL, чтобы проверить переменные

{$product.main_pair|print_r}

будет отображаться что-то похожее с разными путями

 Array
(
[pair_id] => 1072
[image_id] => 0
[detailed_id] => 1285
[position] => 0
[detailed] => Array
(
[object_id] => 247
[object_type] => product
[image_path] => http://localhost/cs-cart-git-dev/images/detailed/1/nokia_n1_perspectives_-_app.jpg
[alt] =>
[image_x] => 5000
[image_y] => 3096
[http_image_path] => http://localhost/cs-cart-git-dev/images/detailed/1/nokia_n1_perspectives_-_app.jpg
[https_image_path] => https://localhost/cs-cart-git-dev/images/detailed/1/nokia_n1_perspectives_-_app.jpg
[absolute_path] => /Applications/MAMP/htdocs/cs-cart-git-dev/images/detailed/1/nokia_n1_perspectives_-_app.jpg
[relative_path] => detailed/1/nokia_n1_perspectives_-_app.jpg
)
)

Теперь проще определить, что вам нужно

<img src="{$product.main_pair.detailed.image_path}" width="{$product.main_pair.detailed.image_x}" height="{$product.main_pair.detailed.image_y}" alt="{$product.main_pair.detailed.alt}" />

Чтобы изменить размер изображения на лету, пожалуйста, используйте

{$image_data=$product.main_pair|fn_image_to_display:$image_width:$image_height}
<img src="{$image_data.detailed.image_path}" width="{$image_data.detailed.image_x}" height="{$image_data.detailed.image_y}" alt="{$image_data.detailed.alt}" />
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector