创建wordpress小部件 - 如何仅在小部件在页面上时加载脚本

时间:2016-03-02 08:57:05

标签: php jquery wordpress

我正在构建一个wordpress小部件,允许用户构建一个简单的表单(这样他们就可以在定制器中构建表单)。与所有contat表单一样,我正在加载一些脚本,但是,如果页面上的联系表单窗口小部件处于活动状态,我只想加载这些脚本。

这是我的小部件代码的开头:

if( !class_exists( 'Layers_Form_Builder_Widget' ) ) {
class Layers_Form_Builder_Widget extends Layers_Widget {

    function Layers_Form_Builder_Widget(){

        /* Widget code in here */

    }
  }
}

正如您所看到的,我的小部件包含在类Layers_Form_Builder_Widget中,因此要在页面的头部调用我的处理脚本,我使用了以下内容:

public function layers_form_builder_process_script() {
        if( class_exists( 'Layers_Form_Builder_Widget' ) ) {
            require_once( LAYERS_FORM_BUILDER__PLUGIN_DIR . 'assets/js/magic.php' );
        }
    }
    add_action( 'wp_head', array( $this, 'layers_form_builder_process_script' ) );

上面的代码添加使用我的Layers_Form_Builder_Widget类作为if语句来加载处理脚本。我对此的希望是,如果小部件不在页面上,那么脚本不会显示在头部 - 但是,情况并非如此。

任何有关如何确定如何在使用窗口小部件时仅在页面上加载此脚本的帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

使用此功能可以了解您的窗口小部件是否处于活动状态

https://codex.wordpress.org/Function_Reference/is_active_widget