Meta facebook image


6 posts in this topic

Posted · Report post

Bonjour, je suis sous vers 6.4

J'ai une question concernant les meta facebook, je souhaite ajouter les differents meta (cela ne pose aucun probleme) hormis le meta og:image

car je ne sais pas ou aller chercher l'image. J'ai ajoute les meta sur la page display.php

J'ai tente plusieurs essais dont :

<meta property="og:image" content="' . $GLOBALS['repertoire_upload'] . '/' . $product_images[1] . '" />

mais l'url de l'image n'apparait pas, je dois faire une erreur de logique sans doute mais mes competences limitees en php rendent cette logique parfois bancale

Une idee ?

Merci de votre soutien

Anh

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

Qu'entendez-vous par "mais l'url de l'image n'apparait pas" ? L'URL est mal générée dans votre HTML, ou Facebook ne semble pas en tenir compte ?

Pour information, il faut tabler au minimum sur 200x200px pour les images de ce type et un ratio maximum largeur/hauteur de 3:1, sinon elles sont a priori refusées par Facebook.

Gilles

Share this post


: post
Share on other sites

Posted · Report post

Bonjour Gilles,

Non lorsque je regarde mon code source il apparait seulement <meta property="og:image" content="http://xxx.fr/upload/ " /> c'est a dire que dans mon entete $product_images[1]  n'est pas compris ou mal geree dans l'html.

Je ne comprends pas trop car j'utilise sur une autre page dans un slideshow ' . $GLOBALS['repertoire_upload'] . '/' . $product_images[1] . ' et j'ai bien mon image qui apparait, donc en theorie dans le <head> l'url de l'image devrait aussi s'afficher, non ? ou je fais une erreur de logique ?

En effet sur facebook developper ils conseillent meme une taille de 600x315 pixels voir 1200x630, je suis les conseils sur https://developers.facebook.com/docs/sharing/best-practices#tags

Merci Gilles de vos lumieres

Anh

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

Votre problème est donc que $product_images n'est pas défini à cet endroit-là (il n'a aucune raison de l'être) et il vous faut donc procéder à la récupération d'image du produit, soit en allant chercher directement dans la table produit la colonne image1, soit en instanciant un objet Product et en utilisant la méthode get_product_main_picture().

Gilles

Share this post


: post
Share on other sites

Posted · Report post

Bonjour Gilles, je reviens sur ce sujet car je n'ai pas trouve la solution pour le moment. J'ai suivi votre conseil, je comprends que dans la partie meta $product_images n'est pas défini. Vous dites d'utiliser la methode get_product_main_picture().

J'ai trouve sur display_product

if (!function_exists('get_product_in_container_html')) {
function get_product_in_container_html(&$product_object, $only_show_products_with_picture = true)
    {
        $output = '';
        if (!empty($product_object->id) && !empty($product_object->etat)) {
            $urlprod = $product_object->get_product_url();
            $display_picture = $product_object->get_product_main_picture();

 

par contre je ne comprends pas comment appliquer cela entre mes balises meta

<meta property="og:title" content="' . trim(strip_tags(String::html_entity_decode_if_needed(str_replace(array("\r", "\n"), '', $m['meta_titre'])))) . '" />
<meta property="og:description" content="' . $meta_desc . '" />

<meta property="og:image" content="' . $GLOBALS['repertoire_upload'] . '/' . $product_images[1] . '" />

Un petit coup de main s'il vous plait

Merci beaucoup

Anh

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

Pour utiliser la fonction get_product_main_picture de la classe Product, vous devez initialisé la classe product, et en paramètre de Product il faut mettre l'id du produit. Il faut exécuter ce code uniquement si on est dans la page de détail de produit, ce qui est possible avec la constante IN_CATALOGUE_PRODUIT. Donc ça donnerais
if (defined('IN_CATALOGUE_PRODUIT')) {
$product_object = new Product($_GET['id']);

}

=> Vous pouvez ensuite utiliser les méthodes de la classe Product, notamment get_product_main_picture

Share this post


: post
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

Twitter Advisto ecommerce

Facebook PEEL Shopping