embed_oembed_html хук-фільтрWP 2.9.0

Дозволяє змінити закешований HTML oEmbed під час виведення на екран.

Що таке oEmbed читайте тут: oEmbed у WordPress

За створення метаданих відповідає метод WP_Embed::shortcode() .

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

add_filter( 'embed_oembed_html', 'wp_kama_embed_oembed_html_filter', 10, 4);

/**
 * Function for `embed_oembed_html` filter-hook.
 *
 * @param string|false $cache Завантажений HTML-результат, що проходить в post meta.
 * @param string $url Відомий URL-адреса.
 * @param array $attr На array of shortcode attributes.
 * @param int $post_ID Post ID.
 *
 * @return string|false
 */
function wp_kama_embed_oembed_html_filter( $cache, $url, $attr, $post_ID ){

	// Filter...
	return $cache;
}
$cache
(рядок/false)
Закешований HTML відповіді, що зберігається в метаданих запису.
$url
(рядок)
Посилання на сутність (YouTube ролик і т.д.).
$attr
(масив)
Масив із атрибутами шорткоду (передустановками).
$post_ID
(число)
ID запису.

Приклади

1

#1 Додамо обгортку всім oEmbed

add_filter( 'embed_oembed_html', 'add_my_wrapper_all_oembed');

function add_my_wrapper_all_oembed( $cache ) {
	return sprintf( '<div class="my-class-wrapper">%s</div>', $cache );
}
0

#2 Додамо обгортку тільки для YouTube плеєра

add_filter( 'embed_oembed_html', 'add_youtube_wrap_oembed', 10, 2);

function add_youtube_wrap_oembed( $cached, $url ) {
	if ( false !== strpos( $url, "://youtube.com" ) || false !== strpos( $url, "://youtu.be" ) ) {
		return sprintf( '<div class="youtube-wrapper">%s</div>', $cached );
	}

	return $cached;
}

список змін

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

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

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

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