Jump to content

Donde se define la variable $homeSize


Recommended Posts

He insertado una imagen nueva en preferencias / imágenes con el fin de obtener la miniatura automáticamente, pero a la hora de intentar acceder al tamaño de esta nueva imagen para ponerlo en mis plantillas no se donde tengo que definir la variable, por ejemplo para la imagen home-default seria con la variable $homeSize, yo he creado la imagen con el nombre list2-default y he probado con $list2Size pero no esta rellena, quería saber donde podía definirla y alimentarla.

Link to comment
Share on other sites

La variable $homeSize la crea un modulo (homefeatured si bien recuerdo), pero todo depende de lo que quieras hacer, no seria necesario crear una variable, unicamente donde quieras generar la URL de la imagen dentro de un archivo tpl tendrias que usar...

{$link->getImageLink('nombre de reescritura de la imagen, 'id de la imagen', 'list2-default')|escape:'html':'UTF-8'}
Link to comment
Share on other sites

He visto que esta creada en ese modulo, en el caso que me ocupa estoy haciendo una búsqueda de productos y al mostrar el listado de los mismos es cuando quiero poder tener la información del tamaño de la imagen para forzar a ese tamaño la misma. He mirado en search.php para ver si allí se inicializa y no lo veo.

Link to comment
Share on other sites

El código que pasaste es para mostrar la imagen, aparte de mostrar la imagen lo que necesito es poder obtener el tamaño de la misma, como por ejemplo en el código.

 

<img class="replace-2x img-responsive" src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} itemprop="image" />

 

En este código se obtiene el tamaño de la imagen en $homeSize.width y $homeSize.height. Si yo pongo el código:

 

<a class="product_img_link" href="{$product.link|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}" itemprop="url">
<img class="replace-2x img-responsive" src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'list2_default')|escape:'html':'UTF-8'}" alt="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" {if isset($list2Size)} width="{$list2Size.width}" height="{$list2Size.height}"{/if} itemprop="image" />
</a>
 
No obtengo el tamaño que me interesa. Se que puede omitirse poner este código y la imagen sale con el tamaño que tenga, pero me interesa obtener este tamaño, ya que quiero utilizarlo para poner un vídeo en vez de una imagen y necesito forzar el tamaño.
Edited by Fernando Alonso (see edit history)
Link to comment
Share on other sites

Hola,

 

eso está definido en cada controlador dónde se utilice, por ejemplo:

 

\controllers\front\BestSalesController.php

\controllers\front\CategoryController.php

\controllers\front\NewProductsController.php

\controllers\front\ProductController.php

'homeSize' => Image::getSize(ImageType::getFormatedName('home'))

Tendrías que hacer override del controlador que necesites.

  • Like 1
Link to comment
Share on other sites

Muchas gracias por las respuestas, esto es justo lo que quería saber, acabo de hacer un override sobre el fichero \controllers\front\SearchController.php, donde he añadido el nuevo tipo de imagen para poder tener su tamaño. Luego en el .tpl en función de la pagina por la que navego, utilizo uno u otro. Seguramente tendré que cambiarlo en mas paginas, pero ya sabemos donde se hace.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...