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

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

shortcode rank_math_html_sitemap ของปลั๊กอิน Rank Math SEO แสดงไซต์แมป HTML ที่รวมหน้าจากทุกภาษา แทนที่จะแสดงเฉพาะเนื้อหาในภาษาปัจจุบัน

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

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


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

  • ค้นหาบรรทัดที่ 88

  • เปลี่ยน:
    		$sql       = "
    			SELECT l.ID, post_title, post_name, post_parent, post_date, post_type, l.post_modified
    			FROM (
    				SELECT DISTINCT p.ID, p.post_modified FROM {$wpdb->posts} as p
    				LEFT JOIN {$wpdb->postmeta} AS pm ON ( p.ID = pm.post_id AND pm.meta_key = 'rank_math_robots' )
    				WHERE (
    					( pm.meta_key = 'rank_math_robots' AND pm.meta_value NOT LIKE '%noindex%' ) OR
    					pm.post_id IS NULL
    				)
    				AND p.post_type IN ( '" . $post_type . "' ) AND p.post_status IN ( '" . join( "', '", esc_sql( $statuses ) ) . "' )
    				ORDER BY p.post_modified DESC
    			)
    			o JOIN {$wpdb->posts} l ON l.ID = o.ID " . $get_child . " ORDER BY " . $sort['field'] . " " . $sort['order']; // phpcs:ignore
    		return $wpdb->get_results( $wpdb->prepare( $sql ) ); // phpcs:ignore

  • เป็น:
    		$current_language = apply_filters( 'wpml_current_language', NULL );				
    		$sql = "
    		SELECT l.ID, post_title, post_name, post_parent, post_date, post_type, l.post_modified
    		FROM (
    			SELECT DISTINCT p.ID, p.post_modified FROM {$wpdb->posts} as p
    			LEFT JOIN {$wpdb->postmeta} AS pm ON ( p.ID = pm.post_id AND pm.meta_key = 'rank_math_robots' )
    			INNER JOIN {$wpdb->prefix}icl_translations AS icl ON ( p.ID = icl.element_id AND icl.language_code = %s AND icl.element_type LIKE 'post_%' )
    			WHERE (
    				( pm.meta_key = 'rank_math_robots' AND pm.meta_value NOT LIKE '%noindex%' ) OR
    				pm.post_id IS NULL
    			)
    			AND p.post_type IN ( %s ) AND p.post_status IN ( '" . join( "', '", esc_sql( $statuses ) ) . "' )
    			ORDER BY p.post_modified DESC
    		) o
    		JOIN {$wpdb->posts} l ON l.ID = o.ID " . $get_child . " ORDER BY " . $sort['field'] . " " . $sort['order']; // phpcs:ignore
    		$sql = $wpdb->prepare($sql, $current_language, $post_type);
    		return $wpdb->get_results( $sql ); // phpcs:ignore

โปรดทราบว่าคุณอาจต้องรีเซ็ตไซต์แมป XML ของคุณ คุณสามารถทำได้โดยไปที่ Rank Math SEO > Sitemaps settings จากนั้นแก้ไขการตั้งค่าและเปลี่ยนกลับอีกครั้ง

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