wp_sitemaps_posts_entry хук-фільтрWP 5.5.0

Дозволяє додати додаткові теги (поля) для окремих URL-картки сайту записів (постів): changefreq , priority , lastmod .

Протокол sitemaps підтримує чотири атрибути для кожного елемента <url>картки сайту (за замовчуванням WP використовується тільки <loc>) Інші можна додати через цей фільтр. Детальніше читайте у статті Карта сайту WordPress .

Аналогічні фільтри, які можна використовувати для додавання додаткових тегів: changefreq , priority , lastmod до посилань на сторінки елементів таксономій та користувачів.

Використання

add_filter( 'wp_sitemaps_posts_entry', 'wp_kama_sitemaps_posts_entry_filter', 10, 3);

/**
 * Function for `wp_sitemaps_posts_entry` filter-hook.
 *
 * @param array $sitemap_entry Sitemap натисніть на post.
 * @param WP_Post $post Post об'єкт.
 * @param string $post_type Name of the post_type.
 *
 * @return array
 */
function wp_kama_sitemaps_posts_entry_filter( $sitemap_entry, $post, $post_type ){

	// Filter...
	return $sitemap_entry;
}
$sitemap_entry
(масив)
Масив поточних елементів тега
<url> у карті сайту.
$post
(WP_Post)
Об’єкт запису, для якого створюється посилання на карті сайту.
$post_type
(рядок)
Назва типу запису. Можна одержати з попереднього параметра так:
$post->post_type.

Приклади

0

#1 Додамо тег <lastmod> до карти сайту записів (постів)

add_filter( 'wp_sitemaps_posts_entry', 'kama_sitemaps_posts_entry', 10, 2);
function kama_sitemaps_posts_entry( $entry, $post ) {
	$entry['lastmod'] = $post->post_modified_gmt;

	return $entry;
}

Було до хука:

...
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	<url>
		<loc>http://example.com/template-sticky/</loc>
	</url>
	...

Стало після хука:

...
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	<url>
		<loc>http://example.com/template-sticky/</loc>
		<lastmod>2020-02-28 21:36:01</lastmod>
	</url>
	...

список змін

З версії 5.5.0Введено.

Де викликається хук

Де використовується хук у WordPress

Використання не знайдено.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *