取消注册和注册Java脚本中断插件

时间:2012-06-29 作者:its_me

而您可以查看full file here, 以下是将插件所需的JavaScript文件排队的函数:

function ippy_bcq_add_scripts() {

$options = get_option(\'ippy_bcq_options\');
$valuebb = $options[\'bbpress\'];
$valueco = $options[\'comments\'];
$ippy_bcq_bbp_fancy = get_option( \'_bbp_use_wp_editor\' );

  if ( function_exists(\'is_bbpress\') ) {
          if ( is_bbpress()  && ( $valuebb != \'0\') && !is_null($valuebb) && ($ippy_bcq_bbp_fancy == \'0\') ) {
            wp_enqueue_script("bcq_quicktags", plugin_dir_url(__FILE__) . "quicktags.js", array("quicktags","jquery"), "1.8", 1);
            wp_enqueue_style("bcq_quicktags", plugin_dir_url(__FILE__) . "quicktags.css", false, "1.8");
            wp_print_styles(\'editor-buttons\');
        }
  }
  if ( comments_open() && is_singular() && ( $valueco != \'0\') && !is_null($valueco) ) {
                    wp_enqueue_script("bcq_quicktags", plugin_dir_url(__FILE__) . "quicktags.js", array("quicktags","jquery"), "1.8", 1);
                    wp_enqueue_style("bcq_quicktags", plugin_dir_url(__FILE__) . "quicktags.css", false, "1.8");
                    wp_print_styles(\'editor-buttons\');
  }
}

if( !is_admin() ) {
    add_action(\'wp_print_styles\', \'ippy_bcq_add_scripts\');
}
现在,正如你所看到的,quicktags ($handle)是插件排队的JavaScript所需的依赖项之一(与jQuery一起)。

quicktags 表示此文件:http://example.com/wp-includes/js/quicktags.js, 我需要从不同的域提供文件,例如-http://static-domain.com/wp-includes/js/quicktags.js. 我该怎么做?

我在我的主题功能中尝试了这两个。php,但它们似乎出于某种原因破坏了插件的JavaScript输出:

  • TRY - 1:

    add_action(\'wp_enqueue_scripts\',\'aahan_register_script\');
    function aahan_register_script(){
    
        wp_deregister_script(\'quicktags\');
        wp_register_script(\'quicktags\', \'http://static-domain.com/wp-includes/js/quicktags.js\', false, false, true);
        wp_enqueue_script( \'quicktags\' );
    
    }
    
  • TRY - 2:

    add_action(\'wp_print_styles\',\'aahan_register_script\');
    function aahan_register_script(){
    
        wp_deregister_script(\'quicktags\');
        wp_register_script(\'quicktags\', \'http://static-domain.com/wp-includes/js/quicktags.js\', false, false, true);
        wp_enqueue_script( \'quicktags\' );
    
    }
    
    我也尝试了其他几种变体,但都不起作用。我做错了什么?

    默认情况下,插件会在页脚中输出如下代码:

    <script type=\'text/javascript\'>
    /* <![CDATA[ */
    var quicktagsL10n = {"wordLookup":"Enter a word to look up:","dictionaryLookup":"Dictionary lookup","lookup":"lookup","closeAllOpenTags":"Close all open tags","closeTags":"close tags","enterURL":"Enter the URL","enterImageURL":"Enter the URL of the image","enterImageDescription":"Enter a description of the image","fullscreen":"fullscreen","toggleFullscreen":"Toggle fullscreen mode","textdirection":"text direction","toggleTextdirection":"Toggle Editor Text Direction"};
    /* ]]> */
    </script>
    <script type=\'text/javascript\' src=\'http://example.com/wp-includes/js/quicktags.js?ver=3.4.1\'></script>
    <script type=\'text/javascript\' src=\'http://static-domain.com/wp-content/plugins/basic-comment-quicktags/quicktags.js?ver=1.8\'></script>
    
    但当我尝试上述函数时,输出代码是这样的(基本上已损坏):

    <script type=\'text/javascript\' src=\'http://whatthenerd.com/wp-includes/js/quicktags.js?ver=3.4.1\'></script>
    <script type=\'text/javascript\' src=\'http://wtn-static.whatthenerd.net/wp-content/plugins/basic-comment-quicktags/quicktags.js?ver=1.8\'></script>
    

1 个回复
最合适的回答,由SO网友:its_me 整理而成

终于,它开始工作了。在函数中添加此项。php:

add_action(\'wp_enqueue_scripts\',\'aahank_register_script\');
function aahank_register_script(){

//Re-register quicktags script
wp_deregister_script(\'quicktags\');
wp_register_script(\'quicktags\', \'http://static-content.com/wp-includes/js/quicktags.js\', false, false, true);
wp_localize_script( \'quicktags\', \'quicktagsL10n\', array(
    \'wordLookup\' => __(\'Enter a word to look up:\'),
    \'dictionaryLookup\' => esc_attr(__(\'Dictionary lookup\')),
    \'lookup\' => esc_attr(__(\'lookup\')),
    \'closeAllOpenTags\' => esc_attr(__(\'Close all open tags\')),
    \'closeTags\' => esc_attr(__(\'close tags\')),
    \'enterURL\' => __(\'Enter the URL\'),
    \'enterImageURL\' => __(\'Enter the URL of the image\'),
    \'enterImageDescription\' => __(\'Enter a description of the image\'),
    \'fullscreen\' => __(\'fullscreen\'),
    \'toggleFullscreen\' => esc_attr( __(\'Toggle fullscreen mode\') ),
    \'textdirection\' => esc_attr( __(\'text direction\') ),
    \'toggleTextdirection\' => esc_attr( __(\'Toggle Editor Text Direction\') )
));

}
对于中使用的代码wp_localize_script, 我直接从来源处得到:http://core.svn.wordpress.org/trunk/wp-includes/media.php

结束

相关推荐

Beta Versioning of Plugins

当我为一些bug编写修复程序时,我通常会增加版本并将其发送给bug查找程序,以查看我的修复程序是否有效。如果我有1.2.5 我想创建一个测试版,一旦我提交代码,它将变得多余,我应该使用1.2.5-beta 或1.2.6-beta? 我担心的是1.2.6 <;1.2.6-beta 因此,字符串比较可能有利于beta版,而bug查找程序不会收到发布稳定版本的通知。编辑:如果在不考虑发布类型的情况下对字符串进行绝对比较,则可以使用1.2.5-fix 然后1.2.6. 该问题也概述在http://en.wik