web-dev-qa-db-fra.com

Faire en sorte que Google indexe plus de 90 000 profils d'utilisateurs

J'ai beaucoup de profils utilisateur hébergés dans ce schéma https://example.com/stats.php?player=name (ce n'est pas la plus jolie URL, mais .htaccess ralentit considérablement mon site et je ne comprends pas Apache2.conf). Quoi qu'il en soit, comment puis-je obtenir que Google indexe toutes ces pages de manière dynamique sans avoir à saisir 90 000 comptes dans sitemap.xml?

7
Dalton Edwards

Les plans Sitemap peuvent être dynamiques, tout comme les pages Web. Demandez à un script PHP de récupérer ces noms dans la base de données et de créer une boucle pour faire écho au XML pour chacun d'eux. Assurez-vous également que vous indiquez le type de contenu approprié pour votre XML. C'est tout.

Le code ci-dessous est un script de base permettant de générer un sitemap XML dynamique. S'il vous plaît, ceci n'est qu'un exemple destiné à vous orienter, ou à aider toute personne cherchant à créer un sitemap dynamique, dans la bonne direction. Ici, il devrait vraiment y avoir une meilleure vérification et manipulation des erreurs.

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT name FROM users";
if ($result = mysqli_query($link, $query)) {
    echo header("Content-type: text/xml");
?>
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<?php
    $date = date('Y-m-d');
    while ($row = mysqli_fetch_assoc($result)) {
?>
     <url>
      <loc>https://domain.com/stats.php?player=<?php echo $row['name']; ?></loc>
      <lastmod><?php echo $date; ?></lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.8</priority>
   </url>
<?php       
    }
    mysqli_free_result($result);
?>
</urlset> 
<?php   
}
mysqli_close($link);
?>

N'oubliez pas qu'un seul sitemap ne peut contenir que 50 000 enregistrements, ce script a donc ses limites. Mais vous devriez pouvoir le modifier pour gérer plusieurs sitemaps , ce qui vous permet de dépasser la limite de 50 000.

12
John Conde

Un sitemap pas aide généralement à obtenir des pages indexées. Voir Le sitemap Paradox .

Pour que les pages soient indexées:

  1. Vous devez créer un lien vers chaque page à partir d'une autre page ou de préférence de plusieurs autres pages.
  2. Incluez suffisamment de contenu unique sur chaque profil pour que Google ne considère pas les pages comme des doublons.
  3. Offrez une bonne expérience de page de destination à toute personne visitant la page à partir de la recherche Google. Si Google indexe la page mais constate que personne ne la clique dessus, ou que chaque clic sur celui-ci revienne à cliquer sur un autre résultat, il sera classé dans le classement ou tombera assez rapidement de l'index.

En règle générale, les pages de profil utilisateur ne sont généralement pas de bonnes pages à inclure dans l'index de recherche de Google. Ils n'ont généralement pas beaucoup de contenu et ne sont pas non plus de bonnes pages de destination.

3
Stephen Ostermiller