如何从WordPress(Yoast SEO,emojis)中删除内联脚本和样式?

时间:2017-09-24 04:08:44

标签: php css wordpress

我想删除Yoast SEO插件添加的大多数css和脚本到我的wordpress页面。如何跟踪Yoast SEO插件中的哪个功能添加哪些代码,以便我可以尝试删除它。我是一个菜鸟,所以如果你能显示一个完整的代码放到我的functions.php中,我会很感激,例如删除它:

A)

<script type="text/javascript">
window._wpemojiSettings = ...

b)中

<script src="http://dev.a2b.lv/wp-includes/js/wp-emoji-release.min.js?ver=4.8.2" type="text/javascript" defer=""></script>

c)中

<style type="text/css">
img.wp-smiley,
img.emoji {
display: inline !important;
...
}
</style>

d)

<link rel="stylesheet" id="admin-bar-css" href="http://dev.a2b.lv/wp-includes/css/admin-bar.min.css?ver=4.8.2" type="text/css" media="all">

我希望从那里开始,我将弄清楚如何移除其余部分。

1 个答案:

答案 0 :(得分:1)

你所有的a,b,c,d问题都与Yoast SEO插件无关。它来自WordPress核心。

abc )将此代码添加到当前主题的functions.php文件的末尾:

function disable_emojis() {
    remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
    remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
    remove_action( 'wp_print_styles', 'print_emoji_styles' );
    remove_action( 'admin_print_styles', 'print_emoji_styles' );   
    remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
    remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );     
    remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
    add_filter( 'tiny_mce_plugins', 'disable_emojis_tinymce' );
}
add_action( 'init', 'disable_emojis' );

function disable_emojis_tinymce( $plugins ) {
    if ( is_array( $plugins ) ) {
        return array_diff( $plugins, array( 'wpemoji' ) );
    } else {
        return array();
    }
}

d )从WordPress页面退出即可完成工作。这意味着您的普通访问者不必加载admin-bar.css ...