Jak zakázat vkládání funkce oEmbed do WordPressu
Funkce oEmbed umožňuje uživatelům vkládat obsah z jiného webu do WordPressu pomocí URL adresy. Stačí mít zdrojovou adresu URL, tu vložit do editoru správy obsahu a web automaticky načte reálný obsah. Tuto funkci využijete, pokud budete chtít do webu přidat například YouTube video.
Pokud si myslíte, že funkce oEmbed není potřebná nebo zabraňuje rychlejšímu načítání webových stránek, můžete tuto funkci deaktivovat. Tím zlepšíte načítání webových stránek, protože pokud na svém webu používáte obsah z třetí strany, tak se ve vašem WordPress webu generuje další HTTP požadavek k načtení. To má výrazný vliv na rychlost.
Jak funkci oEmbed zakázat
Stačí do svého webu WordPress vložit funkci, která onen výsledný efekt vyvolá.
function disable_embeds_code_init() {
// Remove the REST API endpoint.
remove_action( 'rest_api_init', 'wp_oembed_register_route' );
// Turn off oEmbed auto discovery.
add_filter( 'embed_oembed_discover', '__return_false' );
// Don't filter oEmbed results.
remove_filter( 'oembed_dataparse', 'wp_filter_oembed_result', 10 );
// Remove oEmbed discovery links.
remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
// Remove oEmbed-specific JavaScript from the front-end and back-end.
remove_action( 'wp_head', 'wp_oembed_add_host_js' );
add_filter( 'tiny_mce_plugins', 'disable_embeds_tiny_mce_plugin' );
// Remove all embeds rewrite rules.
add_filter( 'rewrite_rules_array', 'disable_embeds_rewrites' );
// Remove filter of the oEmbed result before any HTTP requests are made.
remove_filter( 'pre_oembed_result', 'wp_filter_pre_oembed_result', 10 );
}
add_action( 'init', 'disable_embeds_code_init', 9999 );
function disable_embeds_tiny_mce_plugin($plugins) {
return array_diff($plugins, array('wpembed'));
}
function disable_embeds_rewrites($rules) {
foreach($rules as $rule => $rewrite) {
if(false !== strpos($rewrite, 'embed=true')) {
unset($rules[$rule]);
}
}
return $rules;
}
Pokud pro svůj web hledáte zkušené odborníky na WordPress, kontaktujte nás na info@freshmill.cz nebo skrze poptávkový formulář.