Sauter la navigation

Ce sujet est résolu. Voici une description du problème et de la solution.

Problem:
Le client ne parvient pas à accéder au plan du site pour la version espagnole de son site Web et rencontre une erreur 404 lorsqu'il tente de visiter domain.com/es/page-sitemap.xml.
Solution:
Nous avons expliqué que Yoast SEO crée un plan de site pour chaque domaine, et comme WPML est configuré pour utiliser des répertoires pour les langues, un seul plan de site avec toutes les langues est attendu. Nous avons rassuré le client sur le fait que WPML déclare toutes les traductions d'une page dans les balises "hreflang", ce qui aide les moteurs de recherche à comprendre la structure du site. Nous avons suggéré de vider le cache ou de consulter Yoast SEO pour une option permettant de régénérer le plan du site si d'autres pages traduites sont manquantes.
Lors d'un suivi, nous avons identifié une fonction personnalisée dans le thème du client qui modifiait le comportement du plan du site. Nous avons fourni des étapes pour résoudre le problème :
1. Accédez aux fichiers du site via FTP ou Cpanel.
2. Modifiez le fichier function.php du thème actif.
3. Supprimez ou commentez la fonction personnalisée qui modifie le comportement du plan du site.
Après avoir effectué ces modifications, le client devrait voir son page-sitemap.xml passer de 43 à 192 URL.
Pour plus d'informations sur l'utilisation de Yoast SEO avec WPML, veuillez vous référer à notre documentation :
Using WordPress SEO with WPML.

Si cette solution ne semble pas pertinente, n'hésitez pas à ouvrir un nouveau ticket de support en visitant notre forum d'assistance.

Il s'agit du forum d'assistance technique de WPML, le plug-in multilingue pour WordPress.

Il est accessible à tous, toutefois seuls les clients de WPML peuvent y publier leurs messages. L'équipe du WPML répond sur le forum 6 jours par semaine, 22 heures par jour.

Aucun de nos assistants n'est disponible aujourd'hui sur le forum French. Veuillez créer un ticket, et nous nous le traiterons dès notre prochaine connexion. Merci de votre compréhension.

Ce sujet contient 6 réponses, a 2 voix.

Dernière mise à jour par Nicolas Viallet Il y a 3 mois.

Assisté par: Nicolas Viallet.

Auteur Articles
janvier 11, 2024 à 9:49 am #15173243

fredericb-12

Bonjour,

Je souhaite accéder à mes sitemaps sur l'ensemble des langues de mon site.

Lorsque j'accède à l'adresse lien caché ou lien caché je vois bien l'ensemble de mes pages en FR et j'ai les pages d'accueil des autres langues.

Mais lorsque je vais sur lien caché j'ai une erreur 404. Que faire pour avoir accès à l'ensemble de mes sitemaps ?

Cordialement,

janvier 11, 2024 à 4:12 pm #15175828

Nicolas Viallet
Supporter

Les langues: Anglais (English ) Français (Français )

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Bienvenue sur le support de WPML. Yoast SEO créé un sitemap par domaine. Comme vous avez configuré WPML pour que les langues soit dans un répertoire (/en), il est normal de n'avoir d'un seul sitemap avec toutes les langues. SI vous aviez un domaine par langue vous auriez un sitemap pour chaque domaine.

Rassurez-vous le fait que chaque langue soit dans un répertoire et que WPML déclare toutes les traductions d'une même page dans les balises "hreflang" permet à Google et les autres moteurs de recherche de comprendre parfaitement la structure de votre site.

Par contre je vois que vous avez d'autres pages traduites qui ne sont pas présentes dans le sitemap. Il s'agit peut être d'un problème de cache. Essayez de purger vos caches ou de voir s'il y a une option dans Yoast afin de regénérer/actualiser le sitemap. Par exemple celui concernant les catégories semble plus complet: lien caché

Ref: https://wpml.org/documentation/plugins-compatibility/using-wordpress-seo-with-wpml/#translate-sitemaps

janvier 18, 2024 à 10:52 am #15199338

fredericb-12

Le sitemap du site lien caché n'affiche pas l'ensemble des pages des autres langues.
Nous avons seulement les pages d'accueil des différentes langues et non l'ensemble des pages dans l'ensemble des langues.

Comment corriger cela ?

janvier 18, 2024 à 4:23 pm #15201331

Nicolas Viallet
Supporter

Les langues: Anglais (English ) Français (Français )

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Commençons par remplir les exigences minimales de WPML et Yoast. Je vois que vous avez une allocation de mémoire PHP très basse (40M). La configuration minimale requise pour WPML est de 128M, 256M pour Yoast:

- Accédez à votre serveur via FTP et ouvrez le fichier wp-config.php (dans le root de votre WordPress).
- Insérez ces lignes juste avant /* That's all, stop editing! Happy blogging. */

/* Memory Limit */
define( 'WP_MEMORY_LIMIT', '256M' );

Plus d'info: https://wpml.org/fr/accueil/exigences-minimales/
lien caché

Si augmenter la mémoire PHP ne résout pas le problème, merci me donner temporairement accès à votre admin (wp-admin et FTP) – de préférence sur une copie test de votre site où le problème a été reproduit - pour que je puisse voir cela de plus près.

J'ai activé un champ privé pour votre prochaine réponse où vous pourrez partager ces informations de manière confidentielle avec notre support. Ne partagez pas votre propre compte admin, créez un nouveau compte que vous pourrez éliminer une fois l'assistance terminée.

IMPORTANT: Avant de continuer, faites un backup complet de votre site et base de données.

janvier 19, 2024 à 7:51 pm #15206232

Nicolas Viallet
Supporter

Les langues: Anglais (English ) Français (Français )

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Merci pour l'accès. Dans "WPML > Support> troubleshooting (link)" il y a une option qui n'apparait que lorsque WPML détecte un problème avec les langues dans la base de données "Clear language information and repopulate languages".

Comme il s'agit d'un site de production est que c'est une opération délicate qui demande un backup de sécurité, je ne l'ai pas exécuté.

Pourriez vous le faire (après un backup bien sûr)?

Si cela ne résout pas le problème merci de faire une copie staging de votre site afin que nous puissions tester WPML dans un environnement minimal. C'est à dire:

1. Désactivez tous les plugins qui ne sont pas liés à WPML et changez de thème pour un thème WordPress comme 2020.

2. Si l'erreur disparaît commencez à réactiver les plugins un par un ou en petit groupe. De cette manière il vous sera possible d'identifier quel plugin crée un conflit.

screenshot-2024.01.19-14_46_54.png
janvier 22, 2024 à 8:19 am #15209714

fredericb-12

C'est bon j'ai fait la sauvegarde des fichiers et de la base de données

Merci,

janvier 22, 2024 à 8:18 pm #15213424

Nicolas Viallet
Supporter

Les langues: Anglais (English ) Français (Français )

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Malgré l'opération le problème persistait. J'ai essayé pendant un long moment de trouver la cause du problème puis je me suis rendu compte que vous avez une fonction qui modifie le comportement du sitemap.
- Accédez aux fichiers sur votre serveur via FTP ou Cpanel
- Éditez le fichier functions.php de votre thème actif
- Retirez/commentez la première fonction personnalisée

if (isset($sitepress)) add_filter('wpseo_posts_join', 'sitemap_per_language', 10, 2);
function sitemap_per_language($join, $type) {
    global $wpdb, $sitepress;
    $lang = $sitepress->get_current_language();
    return " JOIN " . $wpdb->prefix . "icl_translations ON element_id = ID AND element_type = 'post_$type' AND language_code = '$lang'";
}

- Vous verrez votre page-sitemap.xml passer de 43 à 192 URLs.

This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.