mrsorpresa Posted March 26, 2013 Share Posted March 26, 2013 Hola, aprovecho para presentarme como nuevo usuario de este foro, y reciente usuario de Prestashop Estoy tratando de optimizar mi tienda, para mejorar tiempos de carga, y según tengo entendido, es importante para los navegadores declarar el ancho y el alto de las imágenes, para así agilizar la carga de la web. Sucede que estoy usando una plantilla que, a la hora de generar el código cuando se muestran los productos, no inserta los valores de alto y ancho de las imágenes. Creo que el código crítico es este: (mi-plantilla)/product-list.tpl <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" /></a> Veis que se llama al enlace del producto, a la imagen y al atributo alt, pero me falta que se llame a los valores width y height. El problema es que no sé cómo llamar a esas variables... ¿Alguna sugerencia? Mi versión de Prestashop es la 1.5.20 Link a la tienda: http://tinyurl.com/73hmx67 Saludos. Link to comment Share on other sites More sharing options...
jaloise Posted March 26, 2013 Share Posted March 26, 2013 On 3/26/2013 at 8:04 PM, mrsorpresa said: Hola, aprovecho para presentarme como nuevo usuario de este foro, y reciente usuario de Prestashop Estoy tratando de optimizar mi tienda, para mejorar tiempos de carga, y según tengo entendido, es importante para los navegadores declarar el ancho y el alto de las imágenes, para así agilizar la carga de la web. Sucede que estoy usando una plantilla que, a la hora de generar el código cuando se muestran los productos, no inserta los valores de alto y ancho de las imágenes. Creo que el código crítico es este: (mi-plantilla)/product-list.tpl <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" /></a> Veis que se llama al enlace del producto, a la imagen y al atributo alt, pero me falta que se llame a los valores width y height. El problema es que no sé cómo llamar a esas variables... ¿Alguna sugerencia? Mi versión de Prestashop es la 1.5.20 Link a la tienda: http://tinyurl.com/73hmx67 Saludos. Porque una tienda bien hecha no tiene debe tener casi ningun o ningun atributo de css en el html... Por eso no esta la altura o el ancho, estan en el css... Saludos. Link to comment Share on other sites More sharing options...
mrsorpresa Posted March 27, 2013 Author Share Posted March 27, 2013 On 3/26/2013 at 10:53 PM, jaloise said: Porque una tienda bien hecha no tiene debe tener casi ningun o ningun atributo de css en el html... Por eso no esta la altura o el ancho, estan en el css... Saludos. El width y el height son atributos HTML. Aquí tienes un texto en español sobre el tema. Otro tema es que también sean atributos CSS, pero es evidente que no me refería a eso. Yo no estoy buscando hacer un estilo CSS inline del tipo: <img src="laimagen.jpg" style="width: 150px;"> sino simplemente declarar la altura de la imagen usando el atributo html de la forma tradicional: <img src="laimagen.jpg" width="150px"> Link to comment Share on other sites More sharing options...
jaloise Posted March 27, 2013 Share Posted March 27, 2013 On 3/27/2013 at 2:16 AM, mrsorpresa said: El width y el height son atributos HTML. Aquí tienes un texto en español sobre el tema. Otro tema es que también sean atributos CSS, pero es evidente que no me refería a eso. Yo no estoy buscando hacer un estilo CSS inline del tipo: <img src="laimagen.jpg" style="width: 150px;"> sino simplemente declarar la altura de la imagen usando el atributo html de la forma tradicional: <img src="laimagen.jpg" width="150px"> Disculpa entendi mal ... No era para que me tires un link con teoria que sabia tal vez esto te sirve y si no no se lo que buscas. ... <img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /> Link to comment Share on other sites More sharing options...
mrsorpresa Posted March 27, 2013 Author Share Posted March 27, 2013 On 3/27/2013 at 3:16 AM, jaloise said: Disculpa entendi mal ... No era para que me tires un link con teoria que sabia tal vez esto te sirve y si no no se lo que buscas. ... <img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /> Gracias Jaloise, y disculpa la confusión, pensé por tu respuesta que me estabas dando un dato equivocado, pero ya veo que es que no me entendiste bien Sí, lo que buscaba era eso, el problema es que no funciona... he sustituido el código original por el que has escrito y me arroja una página en blanco al pulsar en cualquier categoría... Creo que el problema está en {if isset($homeSize)} ... {/if} que debería estar entrecomillado... No sé muy bien cómo reescribirlo porque reconozco que no sé mucho de PHP... ¿Alguna propuesta? Link to comment Share on other sites More sharing options...
mrsorpresa Posted March 27, 2013 Author Share Posted March 27, 2013 A todo esto, ¿alguien sabe donde está declarada la variable $homeSize? Link to comment Share on other sites More sharing options...
mrsorpresa Posted March 27, 2013 Author Share Posted March 27, 2013 Ok bueno ya he corregido el código, ahora ya no sale la página en blanco, pero no recoge la variable $homeSize.width, porque el valor aparece vacio. Este es el código que interpreta el navegador: <img src="http://www.miweb.com/imagen.jpg" alt="" width="" height=""/> Link to comment Share on other sites More sharing options...
mrsorpresa Posted March 27, 2013 Author Share Posted March 27, 2013 Por si a alguien le interesa, lo he solucionado metiendo el valor "a pelo" en el propio código. Es una cutrada, pero a falta de otra solución, tendré que arreglarme así. Al menos funciona bien. Link to comment Share on other sites More sharing options...
rperales Posted March 27, 2013 Share Posted March 27, 2013 Los valores de ancho y alto de las imágenes se definen desde el backoffice Preferencias->Imagenes, cuando creas contenidos al subir una imagen se generan a partir de estas configuraciones, y los controladores de los diferentes apartados como categorías, productos, cms, etc los leen en base a estas configuraciones, por ejemplo el siguiente código para mostrar imagen utiliza el parametro home y este deberá ser definido desde el backoffice {$link->getImageLink($product.link_rewrite, $product.id_image, 'home')} Link to comment Share on other sites More sharing options...
jaloise Posted March 27, 2013 Share Posted March 27, 2013 On 3/27/2013 at 6:13 AM, mrsorpresa said: Por si a alguien le interesa, lo he solucionado metiendo el valor "a pelo" en el propio código. Es una cutrada, pero a falta de otra solución, tendré que arreglarme así. Al menos funciona bien. Vos usaste el codigo que te pase tal cual?? Si es asi.. en preferencais imagenes tenes home_default? Link to comment Share on other sites More sharing options...
mrsorpresa Posted March 27, 2013 Author Share Posted March 27, 2013 On 3/27/2013 at 9:03 AM, rperales said: Los valores de ancho y alto de las imágenes se definen desde el backoffice Preferencias->Imagenes, cuando creas contenidos al subir una imagen se generan a partir de estas configuraciones, y los controladores de los diferentes apartados como categorías, productos, cms, etc los leen en base a estas configuraciones, por ejemplo el siguiente código para mostrar imagen utiliza el parametro home y este deberá ser definido desde el backoffice {$link->getImageLink($product.link_rewrite, $product.id_image, 'home')} Hola rperales, gracias, sí lo conocía, por eso también probé a cambiar el nombre de la plantilla que estoy usando por el nombre "default", y la que se llamaba "default" ponerle otro nombre, y que así tomara los valores de la configuración ya existente de las imágenes. Pero por algún motivo no funcionó, y seguía sin mostrar los valores de alto y ancho en el código. On 3/27/2013 at 12:02 PM, jaloise said: Vos usaste el codigo que te pase tal cual?? Si es asi.. en preferencais imagenes tenes home_default? Probé de tres maneras: dejando home, home_default, y home_theme496, que es el nombre de la plantilla, y no funcionó con ninguno de ellos. En Preferencias -> Imágenes sí que tengo las configuraciones de imágenes como small_default, medium_default... Link to comment Share on other sites More sharing options...
Recommended Posts