wordpress禁用 wp-embed
时间 : 2024-05-29 15:20:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
最佳答案
WordPress是广泛应用于网络建站的工具,是一款非常方便实用的开源博客系统,功能强大,也十分易于使用。然而,有时候我们会遇到一些让人头痛的问题。比如,wp-embed功能。wp-embed是WordPress的一个嵌入式功能,可以嵌入来自其他WordPress网站的文章、音频、视频等。本篇文章将会分多个层次来阐述禁用wp-embed的方法。
禁用wp-embed的原因主要有两个。第一个原因是网站加载速度过慢。wp-embed功能是通过JavaScript代码来引入外部媒体文件的。如果一个WordPress站点有大量的外链媒体,这将导致网站的加载速度变得非常慢。这往往会使很多访问者望而却步,对网站的访问量产生负面影响。而禁用wp-embed,可以有效地缓解这个问题,提高网站的访问速度。
第二个原因是安全性。wp-embed功能可以在WordPress网站之间传播恶意代码和链接。这些链接往往指向像钓鱼网站这样的危险站点,会给站点带来安全隐患。关闭wp-embed可以有效地减少这些风险。
那么,具体来说,如何禁用wp-embed呢?以下是具体的步骤:
第一步:通过编辑functions.php文件禁用wp-embed功能
可以通过在functions.php文件的末尾添加以下代码来完成对wp-embed功能的禁用:
function disable_embeds_init() {
/* @var WP $wp */
global $wp;
// Remove the embed query var.
$wp->query_vars = array_filter( $wp->query_vars, function( $var ) {
return ( 'embed' !== $var );
} );
// Remove the REST API endpoint.
remove_action( 'rest_api_init', 'wp_oembed_register_route' );
// Remove the related oEmbed discovery links.
remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
// Remove the REST API link tag.
remove_action( 'wp_head', 'wp_oembed_add_host_js' );
// Remove the WP-CLI oEmbed cache command.
remove_action( 'rest_api_init', 'wp_embed_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' );
}
add_action( 'init', 'disable_embeds_init', 9999 );
function disable_embeds_tiny_mce_plugin($plugins) {
return array_diff($plugins, array('wpembed'));
}
第二步:编辑.htaccess文件禁用wp-embed
另一种方法禁用wp-embed的方式是通过编辑.htaccess文件。在WordPress根目录下找到.htaccess文件,然后添加以下代码:
# BEGIN DISABLE WP-EMBED
RewriteEngine On
RewriteRule ^embed/?$ - [NC,L]
# END DISABLE WP-EMBED
第三步:编辑WordPress主题文件
如果你的主题文件中,有一些oembed相关的代码,也可以进行编辑,禁用wp-embed。具体方法是,找到你的主题目录下的functions.php文件,然后在文件底部添加以下代码:
remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'autoembed' ), 8 );
remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'run_shortcode' ), 8 );
如果你需要禁用oembed的一些其他部分,比如wp_embed_register_handlers(),也可以通过类似的方法进行禁用。
综上所述,禁用wp-embed的方法有很多种,可以通过编辑functions.php文件、.htaccess文件、或者编辑WordPress主题文件来实现。无论选择哪种方法,禁用wp-embed都是一个非常重要的步骤,可以改善网站的加载速度和安全性。
其他答案
WordPress 是一个功能强大且广泛应用的内容管理系统,它提供了丰富的插件和主题来定制网站的外观和功能。然而,有时候我们可能希望在使用 WordPress 的过程中禁用一些默认功能,比如 wp-embed。下面我将分层次地阐述这个问题。
我们需要了解 wp-embed 的作用。wp-embed 是 WordPress 提供的一项功能,它允许用户在文章或页面中嵌入其他 WordPress 网站的内容,比如嵌入另一个 WordPress 网站的文章或媒体文件。这个功能对于一些网站来说可能很有用,但对于其他网站来说可能并不需要。因此,有时我们需要禁用 wp-embed 功能。
禁用 wp-embed 可能会带来一些好处。禁用 wp-embed 可以减少网页加载时间,因为不再需要加载额外的嵌入内容。这对于那些追求网页加载速度和性能优化的网站来说是非常重要的。另外,禁用 wp-embed 可以增强网站的安全性,因为嵌入内容可能会带来潜在的安全风险。因此,从性能和安全的角度考虑,禁用 wp-embed 是有一定好处的。
禁用 wp-embed 是一个在特定情况下可能会有益的操作。然而,在实际操作中,我们需要根据具体情况来决定是否禁用 wp-embed。比如,如果我们的网站需要频繁地嵌入其他 WordPress 网站的内容,那么禁用 wp-embed 可能并不是一个好主意。因此,在进行这样的操作之前,我们需要对自己的网站需求进行充分的评估,这样才能确保我们所做的修改能够真正符合网站的实际需求。
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章