condition en PHP google developpers

Petit nouveau ! | 3 Messages

24 févr. 2021, 12:00

Bonjour,

Je me présente Jonathan, je sollicite votre aide, car je souhaiterais afficher un contenu dans une page avec des conditions, en somme j'aimerais que cette page :
https://search.google.com/structured-da ... tool?hl=fr
Puisse lister le contenu sinon rien, j'ai tenté de faire un petit bout de code.

Exemple :

Code : Tout sélectionner

<?php if (strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot" || "Mediapartners-Google" || "AdsBot-Google-Mobile" || "AdsBot-Google-Mobile" || "AdsBot-Google" || "Googlebot-Image" || "Storebot-Google")) { echo "Erreur 1"; } else { echo "erreur 2"; } ?>

le problème, c'est que quand j'analyse les données structuré avec Google, il n'arrive pas a y accéder et renvoie toujours echo "erreur 2";

Merci d'avance de votre aide :D
Modifié en dernier par Ujonathan le 24 févr. 2021, 13:00, modifié 1 fois.

Mammouth du PHP | 2703 Messages

24 févr. 2021, 12:09

if (preg_match("/(googlebot|Mediapartners\-Google)/i", $_SERVER['HTTP_USER_AGENT'])) {
echo "Un résultat a été trouvé.";
} else {
echo "Aucun résultat n'a été trouvé.";
}

Petit nouveau ! | 3 Messages

24 févr. 2021, 12:21

Merci pour votre réponse hélas cela ne fonctionne pas non plus , en gros je voudrais faire ça :

Code : Tout sélectionner

<?php if (preg_match("/(googlebot|Mediapartners\-Google)/i", $_SERVER['HTTP_USER_AGENT'])) { echo 'Un résultat a été trouvé'; // alors ont ne met pas la balise </noscript> } else { /* sinon on l'affiche */ echo '<noscript><meta http-equiv="refresh" content="0;javascript.html" /></noscript>'; } ?>

En somme je cherche à autorisé les bots de Google à consulter les données snippets de la page, si vous faite le test sur une page en lançant l'outil Google vous verrez que leur systhème de vérification est redirigé vers la page HTML et ne peut accéder au contenu de la page.

Mammouth du PHP | 2703 Messages

24 févr. 2021, 12:30

la valeur de $_SERVER['HTTP_USER_AGENT'] est-elle celle attendue quand c'est l'outil google qui demande l'url ?

Petit nouveau ! | 3 Messages

24 févr. 2021, 12:35

la valeur de $_SERVER['HTTP_USER_AGENT'] est-elle celle attendue quand c'est l'outil google qui demande l'url ?
Justement a vrais dire je ne sais pas trop comment est appelé la page https://search.google.com/structured-da ... tool?hl=fr est-elle identifié grâce à un user agent ou si c'est un bot lier a la page des donées structuré.

Outils Google utilise t'il un user agent spécifique pour scanner le site ou a t'il un non de bot ...

Image

Comme on peut le voir dans l'image, on observe que cela viens de Google Analytics apparemment identification header

Côté des logs serveur :

Code : Tout sélectionner

2021-02-24 11:42:49 - Mozilla/5.0 (compatible; Google-Structured-Data-Testing-Tool +https://search.google.com/structured-data/testing-tool) 2021-02-24 11:43:39 - Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.188 Mobile Safari/537.36


Je suis tombé sur ça
https://udger.com/resources/ua-list/bot ... sting-Tool

Peut-être qu'on pourrait adapter le script PHP en fonction de ça ?