- Estado
- Abierto
- Notificado para
- WPML SEO 2.1.0
- Plugin/tema relacionado
- Rank Math SEO
- Etiquetas de temática
- Compatibility
Resumen del problema
Si está utilizando el plugin Rank Math SEO, específicamente la versión Pro con la función News Sitemap activada, es posible que encuentre un problema en el que las etiquetas <news:language> dentro del archivo news-sitemap.xml muestran incorrectamente el código de idioma del idioma predeterminado del sitio para las entradas en idiomas secundarios.
Solución alternativa
Por favor, asegúrese de tener una copia de seguridad completa de su sitio antes de continuar.
- Abra el archivo …/wp-content/plugins/seo-by-rank-math-pro/includes/modules/news-sitemap/class-news-sitemap.php.
- Reemplace:
$output .= $this->get_news_publication( $renderer );
- Por:
//start WPML workaround global $sitepress; remove_filter( 'get_pages', [ $sitepress, 'get_pages_adjust_ids' ], 1 ); $my_post_language_details = apply_filters( 'wpml_post_language_details', NULL, url_to_postid($url["loc"]) ); $xmlString = $this->get_news_publication( $renderer ); $pattern = '/(<news:language>)[^<>]*(</news:language>)/i'; $replacement = '${1}'. $my_post_language_details["language_code"] .'$2'; $modifiedXmlString = preg_replace($pattern, $replacement, $xmlString); $output .= $modifiedXmlString; //end WPML workaround - Además, es posible que también necesite deshabilitar el almacenamiento en caché del sitemap. Para ello, puede añadir la siguiente línea al archivo functions.php de su tema:
add_filter( 'rank_math/sitemap/enable_caching', '__return_false');