WPSEO_Upgrade::upgrade_23_query()publicYoast 1.0

Performs upgrade query to Yoast SEO 2.3.

Метод класса: WPSEO_Upgrade{}

Хуков нет.

Возвращает

null. Ничего (null).

Использование

$WPSEO_Upgrade = new WPSEO_Upgrade();
$WPSEO_Upgrade->upgrade_23_query();

Код WPSEO_Upgrade::upgrade_23_query() Yoast 22.1

public function upgrade_23_query() {
	$wp_query = new WP_Query( 'post_type=any&meta_key=_yoast_wpseo_sitemap-include&meta_value=never&order=ASC' );

	if ( ! empty( $wp_query->posts ) ) {
		$options = get_option( 'wpseo_xml' );

		$excluded_posts = [];
		if ( $options['excluded-posts'] !== '' ) {
			$excluded_posts = explode( ',', $options['excluded-posts'] );
		}

		foreach ( $wp_query->posts as $post ) {
			if ( ! in_array( (string) $post->ID, $excluded_posts, true ) ) {
				$excluded_posts[] = $post->ID;
			}
		}

		// Updates the meta value.
		$options['excluded-posts'] = implode( ',', $excluded_posts );

		// Update the option.
		update_option( 'wpseo_xml', $options );
	}

	// Remove the meta fields.
	delete_post_meta_by_key( '_yoast_wpseo_sitemap-include' );
}