Daniel Irias Posted August 15, 2014 Share Posted August 15, 2014 (edited) Hola a todos. Llevo algunas horas modificando la plantilla de la factura según mis necesidades, pero he llegado al punto donde requiero que algunos datos del footer aparezcan en el header. Sé que los archivos correspondientes son footer.tpl y header.tpl. Lo que intento hacer es que en el header aparezca la dirección de la empresa ($shop_address) la cual se encuentra en el archivo footer.tpl He copiado las variables: {$shop_address|escape:'html':'UTF-8'} {$shop_phone|escape:'html':'UTF-8'} {$shop_details|escape:'html':'UTF-8'} {$free_text|escape:'html':'UTF-8'} y las he pegado en el archivo header.tpl pero al realizar la factura estos datos no aparecen. Tengo activada la compilación de las plantillas. ¿Qué puedo hacer para que estos datos aparezcan en el header? Edited August 18, 2014 by daniel_irias (see edit history) Link to comment Share on other sites More sharing options...
LieBM Posted August 17, 2014 Share Posted August 17, 2014 (edited) Hola, Por lo que veo, al menos en mi tienda PS 1.6.0.9. En el archivo footer.tpl de la carpeta pdf aparece esto: <table> <tr> <td style="text-align: center; font-size: 6pt; color: #444"> {if $available_in_your_account} {l s='An electronic version of this invoice is available in your account. To access it, log in to our website using your e-mail address and password (which you created when placing your first order).' pdf='true'} <br /> {/if} {$shop_address|escape:'html':'UTF-8'}<br /> {if !empty($shop_phone) OR !empty($shop_fax)} {l s='For more assistance, contact Support:' pdf='true'}<br /> {if !empty($shop_phone)} Tel: {$shop_phone|escape:'html':'UTF-8'} {/if} {if !empty($shop_fax)} Fax: {$shop_fax|escape:'html':'UTF-8'} {/if} <br /> {/if} {if isset($shop_details)} {$shop_details|escape:'html':'UTF-8'}<br /> {/if} {if isset($free_text)} {$free_text|escape:'html':'UTF-8'}<br /> {/if} </td> </tr></table> Deberías de copiarlo al Header respetando las etiquetas de <table> y </table> y td y tr por lo que si no me equivoco lo que deberías de copiar al header en el sitio adecuado sería lo que te pongo a continuación: <table> <tr> <td style="text-align: center; font-size: 6pt; color: #444"> {$shop_address|escape:'html':'UTF-8'}<br /> {if !empty($shop_phone) OR !empty($shop_fax)} {l s='For more assistance, contact Support:' pdf='true'}<br /> {if !empty($shop_phone)} Tel: {$shop_phone|escape:'html':'UTF-8'} {/if} {if !empty($shop_fax)} Fax: {$shop_fax|escape:'html':'UTF-8'} {/if} <br /> {/if} {if isset($shop_details)} {$shop_details|escape:'html':'UTF-8'}<br /> {/if} {if isset($free_text)} {$free_text|escape:'html':'UTF-8'}<br /> {/if} </td> </tr></table> Mira a ver si así se muestra en tu factura. Este código que te mando lo tienes que copiar al final de todo el contenido del header.tpl. El problema será de que hay que modificar algunas cosas más para que se visualice donde tu quieres de forma bien colocada. Ya me dices si se ha solucionado. Saludos!! Edited August 17, 2014 by JoaquinBM (see edit history) Link to comment Share on other sites More sharing options...
Daniel Irias Posted August 18, 2014 Author Share Posted August 18, 2014 Hola. 1. He pegado el código en el header.tpl pero no funciona.2. Me atreví a eliminar todo el contenido del header.tpl y pegar el contenido del footer.tpl pero tampoco se visualizan los datos.3. Creé nuevas filas en las tablas del header.tpl y pegué dentro de ellas las variables del footer.tpl y tampoco funciona. Estoy usando la versión 1.6.0.5 de Prestashop pues el theme que uso sólo funciona con dicha versión. Los variables del header.tpl puedo ponerlas donde quiera, dentro del mismo archivo, aún fuera de las <table></table> y se muestran sin problema alguno pero las del footer.tpl no. En resúmen, esto es lo que actualmente hay en mi archivo header.tpl: <table style="width: 100%"><tr> <td style="width: 50%"> {if $logo_path} <img src="{$logo_path}" style="width:{$width_logo}px; height:{$height_logo}px;" /> {/if} </td> <td style="width: 50%; text-align: right;"> <table style="width: 100%"> <tr> <td style="font-weight: bold; font-size: 14pt; color: #444; width: 100%">{$shop_name|escape:'html':'UTF-8'}</td> </tr> <tr> <td style="font-size: 14pt; color: #9E9F9E">{$date|escape:'html':'UTF-8'}</td> </tr> <tr> <td style="font-size: 14pt; color: #9E9F9E">{$title|escape:'html':'UTF-8'}</td> </tr> </table> </td></tr></table>Aquí deben visualizarse las variables del footer.tpl:<br /><table> <tr> <td style="text-align: center; font-size: 6pt; color: #444"> {$shop_address|escape:'html':'UTF-8'}<br /> {if !empty($shop_phone) OR !empty($shop_fax)} {if !empty($shop_phone)} Tel: {$shop_phone|escape:'html':'UTF-8'} {/if} {/if} {if isset($shop_details)} {$shop_details|escape:'html':'UTF-8'}<br /> {/if} {if isset($free_text)} {$free_text|escape:'html':'UTF-8'}<br /> {/if} </td> </tr></table> Y el resultado es el siguiente: Como puedes ver los valores de las variables del footer.tpl no se muestran. Link to comment Share on other sites More sharing options...
Daniel Irias Posted August 18, 2014 Author Share Posted August 18, 2014 Hola. 1. He pegado el código en el header.tpl pero no funciona.2. Me atreví a eliminar todo el contenido del header.tpl y pegar el contenido del footer.tpl pero tampoco se visualizan los datos.3. Creé nuevas filas en las tablas del header.tpl y pegué dentro de ellas las variables del footer.tpl y tampoco funciona. Estoy usando la versión 1.6.0.5 de Prestashop pues el theme que uso sólo funciona con dicha versión. Los variables del header.tpl puedo ponerlas donde quiera, dentro del mismo archivo, aún fuera de las <table></table> y se muestran sin problema alguno pero las del footer.tpl no. En resúmen, esto es lo que actualmente hay en mi archivo header.tpl: <table style="width: 100%"><tr> <td style="width: 50%"> {if $logo_path} <img src="{$logo_path}" style="width:{$width_logo}px; height:{$height_logo}px;" /> {/if} </td> <td style="width: 50%; text-align: right;"> <table style="width: 100%"> <tr> <td style="font-weight: bold; font-size: 14pt; color: #444; width: 100%">{$shop_name|escape:'html':'UTF-8'}</td> </tr> <tr> <td style="font-size: 14pt; color: #9E9F9E">{$date|escape:'html':'UTF-8'}</td> </tr> <tr> <td style="font-size: 14pt; color: #9E9F9E">{$title|escape:'html':'UTF-8'}</td> </tr> </table> </td></tr></table>Aquí deben visualizarse las variables del footer.tpl:<br /><table> <tr> <td style="text-align: center; font-size: 6pt; color: #444"> {$shop_address|escape:'html':'UTF-8'}<br /> {if !empty($shop_phone) OR !empty($shop_fax)} {if !empty($shop_phone)} Tel: {$shop_phone|escape:'html':'UTF-8'} {/if} {/if} {if isset($shop_details)} {$shop_details|escape:'html':'UTF-8'}<br /> {/if} {if isset($free_text)} {$free_text|escape:'html':'UTF-8'}<br /> {/if} </td> </tr></table> Y el resultado es el siguiente: Como puedes ver los valores de las variables del footer.tpl no se muestran. Link to comment Share on other sites More sharing options...
LieBM Posted August 18, 2014 Share Posted August 18, 2014 Hola, entonces prueba añadiendo lo que te he comentado pero al archivo invoice.tpl que tendrás dentro de la carpeta pdf/ añádelo al principio..justo despues del texto de copyright que aparecen siempre en todos los archivos.. * If you did not receive a copy of the license and are unable to* obtain it through the world-wide-web, please send an email* to [email protected] so we can send you a copy immediately.** DISCLAIMER** Do not edit or add to this file if you wish to upgrade PrestaShop to newer* versions in the future. If you wish to customize PrestaShop for your* needs please refer to http://www.prestashop.com for more information.** @author PrestaShop SA <[email protected]>* @copyright 2007-2014 PrestaShop SA* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)* International Registered Trademark & Property of PrestaShop SA*} Añádelo a partir de esta línea 1 Link to comment Share on other sites More sharing options...
Daniel Irias Posted August 18, 2014 Author Share Posted August 18, 2014 Funciona si los pego directamente en el archivo invoice.tpl, pero ahora el problema es que la separación entre secciones es muy grande. Ya veré como soluciono esto. Seguramente es cuestión de modificar algún CSS. Link to comment Share on other sites More sharing options...
LieBM Posted August 18, 2014 Share Posted August 18, 2014 No hay archivos css para las facturas. Para ello tendrás que modificar en el archivo invoice.tpl y header.tpl los parámetros de la etiqueta <table>, por ejemplo dentro de <table style="***********">y aquí pones las modificaciones que quieras de width, color, font, align, etc..." Pero tienes que saber algo de código css para poder hacerlo. Si quieres edita el título del post como SOLUCIONADO. Lo que te queda es cuestión de estética y de que le dediques algo de tiempo a sacar el código adecuado para la estética. Saludos! Link to comment Share on other sites More sharing options...
Daniel Irias Posted August 18, 2014 Author Share Posted August 18, 2014 Por la programación y estilos no me preocupo, Joaquin. Vivo del diseño web. Lo que me consume tiempo es encontrar lo que debo modificar. Gracias por tu apoyo. Link to comment Share on other sites More sharing options...
Recommended Posts