WPML
สถานะ
เปิด
รายงานสำหรับ
WPML SEO 2.1.0
ปลั๊กอิน/ธีมที่เกี่ยวข้อง
Rank Math SEO
แท็กหัวข้อ
Compatibility

ภาพรวมของปัญหา

หากคุณกำลังใช้งาน ปลั๊กอิน Rank Math SEO โดยเฉพาะรุ่น Pro ที่เปิดใช้งานคุณสมบัติ News Sitemap คุณอาจพบปัญหาที่แท็ก <news:language> ภายในไฟล์ news-sitemap.xml แสดงรหัสภาษาของภาษาเริ่มต้นของไซต์อย่างไม่ถูกต้องสำหรับโพสต์ในภาษารอง

วิธีแก้ปัญหาชั่วคราว

โปรดตรวจสอบให้แน่ใจว่าคุณมีการสำรองข้อมูลไซต์อย่างสมบูรณ์สำหรับไซต์ของคุณก่อนดำเนินการต่อ


  • เปิดไฟล์ …/wp-content/plugins/seo-by-rank-math-pro/includes/modules/news-sitemap/class-news-sitemap.php

  • แทนที่:
    		$output .= $this->get_news_publication( $renderer );

  • ด้วย:
    		//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
  • นอกจากนี้ คุณอาจต้องปิดการใช้งานแคชไซต์แมป XML ด้วย หากต้องการทำเช่นนี้ คุณสามารถเพิ่มบรรทัดต่อไปนี้ลงในไฟล์ functions.php ของธีมของคุณ:
    add_filter( 'rank_math/sitemap/enable_caching', '__return_false');

ปัญหาที่ทราบแล้วทั้งหมด →