使用php函数添加jQuery

时间:2012-12-09 作者:user1757516

我被拒绝了this question 因为我遇到了一个php错误,我的问题围绕着jquery,但当我取出jquery时,一切都很好。* Again I\'m creating a wordpress plugin. I am trying show and hide options. *

请任何了解如何将jquery作为函数实现的wordpress插件创建者提供帮助。请查看已关闭的问题以查看脚本。

非常相似的问题:Add a jQuery function to admin pages

function accordion() {
echo \'<script type="text/javascript">
var $ = jQuery;
jQuery(function ($) {
    $.fn.showHide = function (options) {

//default vars for the plugin
         var defaults = {
            speed: 1000,
            easing: \'\',
            changeText: 0,
            showText: \'Show\',
            hideText: \'Hide\'

        };
        var options = $.extend(defaults, options);

        $(this).click(function () {
                      $(\'.toggleDiv\').slideUp(options.speed, options.easing);

             var toggleClick = $(this);

             var toggleDiv = $(this).attr(\'rel\');

             $(toggleDiv).slideToggle(options.speed, options.easing, function() {
             // this only fires once the animation is completed
             if(options.changeText==1){
             $(toggleDiv).is(":visible") ? toggleClick.text(options.hideText) :   toggleClick.text(options.showText);
             }
              });

          return false;

         });

    };
 })(jQuery);
</script>\';
}             
 add_action( "admin_footer", "accordion" );

2 个回复
最合适的回答,由SO网友:Dan Gayle 整理而成

为什么不使用内置enqueue_script 作用只需将自定义jQuery代码放入一个名为custom的文件中。js,将其保存到插件或主题文件夹中,然后将其作为依赖项与jQuery排队:

<?php
function custom_scripts() {
    if (is_admin()){
        wp_enqueue_script(
            \'customjs\',
            get_template_directory_uri() . \'/js/custom.js\',
            array(\'jquery\')
        );
    }
}
add_action(\'wp_enqueue_scripts\', \'custom_scripts\');
您需要更改get_template_directory_uri() 函数来获取插件的正确路径,但基本上就是这样。

编辑:您希望在管理中使用它。错过了。

SO网友:Chip Bennett

首先,编写函数:

function wpse75424_enqueue_custom_script() {
    // Just in case, make sure script only
    // executes on the front end
    if ( ! is_admin() ) {
        ?>
        <script>
        // script goes here
        </script>
        <?php
    }
}
接下来,将脚本挂钩到适当的挂钩中,例如wp_head:

add_action( \'wp_head\', \'wpse75424_enqueue_custom_script\' );

结束

相关推荐

WordPress-根据选定的分类类别创建同一个Single-Customtype.php的多个版本

我已经注册了一个自定义帖子类型“Clients”,并为该帖子类型注册了一个分类法,用于对帖子进行分类。目前,客户有三个类别:“徽标项目”、“视频项目”和“网页设计”项目。一些客户端可能属于多个类别。在客户帖子的编辑页面上,我有一个灵活的字段布局生成器,可以让您为每个类别类型(徽标、web、视频…)生成“块”内容。每个区块将具有与每个类别相关的唯一字段(视频上传工具、徽标图像库等)我的问题是,虽然我可以在分类类别页面上显示相关内容(仅显示web设计类别中所有客户端的web设计…),用户单击以查看此客户端后,