开发插件,在哪里放置动作挂钩等?

时间:2012-08-29 作者:urok93

我将插件代码划分为多个文件和函数。

当我有一个函数,后面是一个动作挂钩,或者例如add\\u shortcode,那么这一行应该直接在函数后面还是在plugin init函数中?

例如,我应该有这样的东西:

// Shortcodes.php file       
function myplugin_shortcode( $atts ) {    
    if ( !empty ($atts) ) {
        foreach ( $atts as $key => &$val ) {
            $val = html_entity_decode($val);
        }
    }
    myplugin_display_items( $atts );       
}

// Register shortcodes
add_shortcode( \'output-items\', \'myplugin_shortcode\');
或以下两者的组合:

// Shortcodes.php file       
function myplugin_shortcode( $atts ) {    
    if ( !empty ($atts) ) {
        foreach ( $atts as $key => &$val ) {
            $val = html_entity_decode($val);
        }
    }
    myplugin_display_items( $atts );       
}
以及

// Myplugin.php file
myplugin_init() {        
   // other initialisation code   
   add_shortcode( \'output-items\', \'myplugin_shortcode\');
}

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

就像第一个例子一样

// Shortcodes.php file       
function myplugin_shortcode( $atts ) {    
    if ( !empty ($atts) ) {
        foreach ( $atts as $key => &$val ) {
            $val = html_entity_decode($val);
        }
    }
    myplugin_display_items( $atts );       
}

// Register shortcodes
add_shortcode( \'output-items\', \'myplugin_shortcode\');

结束

相关推荐

多个单个站点,一个插件目录-调整plugins_url()

[这不是一个多站点问题]更新:这个问题在逻辑上是不可能的,或者是思维循环,如果你愿意的话,请检查下面的更新。技术是laid out here in WPEngineer.它允许有一个插件文件夹来为运行在同一服务器上的多个WordPress站点提供服务。所以,我所有的开发站点都在wp配置中有这个。phpdefine( \'WP_PLUGIN_DIR\', \'/www_dev/base-site/wp-content/plugins\' ); define( \'WP_PLUGIN_URL\', \