初始化插件内部的类

时间:2013-03-07 作者:fefe

如何在wordpress类中初始化。我想通过ajax向插件类发送请求。首先,我有一个切入点。

class EntryClass{

    public function __construct()
    {
            add_action( \'wp_enqueue_scripts\', array($this , \'wptuts_scripts_basic\' ) );
        add_shortcode( \'podukt_konfigurator\', array ($this, \'getProd_Config\') );
    }

    function getProd_Config() { 
        ob_start();
        include( \'html/templ_config.php\');
        $content = ob_get_contents();
        ob_end_clean();
        return $content;        
    }

    function wptuts_scripts_basic()
{
    // Register the script like this for a plugin:
    wp_register_script( \'konf-js\', plugins_url( \'config.js\', __FILE__ ) );
}

}

$init= new EntryClass();
Thetempl_config.php 包含Javascript,它会在事件发生时在我的插件文件夹中加载一个php文件,如

jQuery(\'#id\').load(
            \'/wordpress/wp-content/plugins/konfigurator/html/class.konfigurator.php\',
            {
                prod_detail: jQuery(this).attr(\'rel\')},
                function(msg){

                    show_driver(msg);
                }
                );
然后进来class.konfigurator.php 我想使用wordpress全局语言。

1 个回复
SO网友:s_ha_dum

您似乎没有实际将脚本排入任何位置。你注册了,但不要enqueue 除非代码在其他地方。

当您直接像您这样加载文件时,即。,直接浏览到\'/wordpress/wp-content/plugins/konfigurator/html/class.konfigurator.php\'-- 您无法使用WordPress的任何功能,因为您已绕过WordPress的启动过程。

要使用WordPress功能,需要加载WordPress。在您的情况下,要做到这一点,您应该使用AJAX API, 或者,如果需要性能,请实施建议的解决方案as an answer to AJAX API performance question.

结束

相关推荐