jd440 Posted February 25, 2014 Share Posted February 25, 2014 Bonjour à tous. Voilà je souhaite intégrer des meta tag "social" dans mon header. Pour cela j'ai penser à soit les intégrer dans le header.tpl ou créer un modules. Je préférais developpé un module qui forcement pourrais être utilisable sur mes différentes boutiques. J'ai developper déjà un module. mais le souci est que je suis obliger de doubler toute me requete. Par exempl sur la fiche produit j'ai: id_prod = Tools::getValue('id_product'); $id_prod = $id_product; if ($id_prod){ /* Product informations */ $product = new Product((int)$id_prod, false, $this->context->language->id); $image = Product::getCover((int)$product->id); $product_desc = $this->getdesc_cutString($product, 0, 100, ''); $id_shop = (int)Context::getContext()->shop->id; $compl_loc = 'France'; $priceDisplayPrecision = 0; if ($id_shop ==1) { $image_a_afficher = "large"; } elseif ($id_shop ==2) { $image_a_afficher = "large_abc"; } [...] } $metasocial_name = $product->name; $metasocial_description = $product_desc; $metasocial_product_cover = (int)$product->id.'-'.(int)$image['id_image']; $price = $product->getPrice(true, 0, $priceDisplayPrecision); } elseif [...] } else { return; } $smarty->assign(array( 'metasocial_product' => $product, 'metasocial_name' => $metasocial_name, 'metasocial_description' => $metasocial_description, 'metasocial_product_cover' => $metasocial_product_cover, 'metasocial_taille_image_cover' => $image_a_afficher, 'prix' => $price, 'location' => $compl_loc, 'domain' => $this->context->shop->domain, 'twitter' => $config[0]['twitter'], 'this_path' => $this->_path )); return $this->display(__FILE__, 'metasocial.tpl'); Du coup je me retrouve à "instancier" la classe Product deux fois. une fois dans le module en header et une fois dans la boucle classique. Ce qui fait autant requete, et en performance c'est donc horrible. Alors que si je le met en dur dans le fichier header.tpl. je peux directement appeler: <meta name="title" content="{if $product->name}{$product->name|escape:'htmlall':'UTF-8'}{else}{$meta_title|escape:'htmlall':'UTF-8'}{/if}" /> Est il possible de récupére dans le module directement le nom produit, la description du produit... Link to comment Share on other sites More sharing options...
jd440 Posted February 27, 2014 Author Share Posted February 27, 2014 Après quelque test, le temps de génération reste comparable <800ms 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