一般主题是用不到这个功能的,禁用wp-embed只会更好
得知WordPress 4.4版本更新以来,主题无缘无故被新增了个wp-embed.js,其实表面上是增加了一个js文件,但实际的逻辑不止如此,鉴于这个功能实在没什么作用,我们就来把它去除。
庆幸的是WP官方为此开发了一个插件,大家可以使用插件来禁用:,如果不想安装这个插件,你也可以将下面的代码复制到主题的functions.php文件即可。
public_query_vars = array_diff($wp->public_query_vars, array('embed')); remove_action('rest_api_init', 'wp_oembed_register_route'); add_filter('embed_oembed_discover', '__return_false'); remove_filter('oembed_dataparse', 'wp_filter_oembed_result', 10); remove_action('wp_head', 'wp_oembed_add_discovery_links'); remove_action('wp_head', 'wp_oembed_add_host_js'); add_filter('tiny_mce_plugins', 'disable_embeds_tiny_mce_plugin'); add_filter('rewrite_rules_array', 'disable_embeds_rewrites'); } add_action('init', 'disable_embeds_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; } function disable_embeds_remove_rewrite_rules(){ add_filter('rewrite_rules_array', 'disable_embeds_rewrites'); flush_rewrite_rules(); } register_activation_hook(__FILE__, 'disable_embeds_remove_rewrite_rules'); function disable_embeds_flush_rewrite_rules(){ remove_filter('rewrite_rules_array', 'disable_embeds_rewrites'); flush_rewrite_rules(); } register_deactivation_hook(__FILE__, 'disable_embeds_flush_rewrite_rules'); endif;
这是废话:WP的升级越来越多无厘头了,也不给用户可视化选项就胡乱的增加东西,哎!!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。