Fernando Alonso Posted July 1, 2015 Share Posted July 1, 2015 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 More sharing options...
Rolige Posted July 1, 2015 Share Posted July 1, 2015 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 More sharing options...
Fernando Alonso Posted July 1, 2015 Author Share Posted July 1, 2015 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 More sharing options...
Rolige Posted July 1, 2015 Share Posted July 1, 2015 No es necesario pasar el nombre a variable de smarty, en el ejemplo de codigo que te di puedes ver que en una seccion use el nombre que segun tu le diste al nuevo tipo de imagen. Link to comment Share on other sites More sharing options...
Fernando Alonso Posted July 2, 2015 Author Share Posted July 2, 2015 (edited) 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 July 2, 2015 by Fernando Alonso (see edit history) Link to comment Share on other sites More sharing options...
joseantgv Posted July 2, 2015 Share Posted July 2, 2015 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. 1 Link to comment Share on other sites More sharing options...
Fernando Alonso Posted July 2, 2015 Author Share Posted July 2, 2015 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 More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now