1. 正在先生首页
  2. 技术开发

记在 WordPress 模板中扩展 Plugin 功能的基本代码段

WordPress有一个非常好用的插件—Tag Grgoups,而更加好的地方在于,这个插件可以实现众多其它插件的功能,比如词典,用标签来做词典给名词做解释总比单独下一个词典插件好,更何况,词典插件是个很赚钱的生意,免费版本基本上都处于不可用状态。而要实现词典功能,就得自己动手改改代码。这是第一次动手为一个插件做扩展,所以把一些经验记录下来。

下面是在模板中对已有插件进行扩展的最基本结构

# 确定该插件存在并且已经激活
if ( class_exists('TagGroups_Shortcode') ) {
# 告诉 WordPress 初始化自己写的扩展对象
# 在 WordPress 中初始化最好使用 add_action( 'init', 'function name'); 方式
  add_action( 'init', 'TagGroups_Shortcode_Extension');
# 我觉得好处在于可以尽可能减少在全局环境中的变量名冲突,比如下面 function 中的 $TagGroups_Shortcode_Extension 如果过于简单,容易覆盖全局中的其它变量
  function TagGroups_Shortcode_Extension(){
    $TagGroups_Shortcode_Extension = new TagGroups_Shortcode_Extension();
    $TagGroups_Shortcode_Extension::register();
  }
# 对 插件中原有的对象做扩展
  class TagGroups_Shortcode_Extension extends TagGroups_Shortcode {
    function __construct() { }

    static function register() {
# 在 WordPress 中增加一个 shortcut ,可以在任意文章中使用 [tag_groups_page] 方式调用函数 tag_groups_page 的输出
      add_shortcode( 'tag_groups_page', array( 'TagGroups_Shortcode_Extension', 'tag_groups_page') );
    }
# 实现 shortcut 的输出内容
    static function tag_groups_page( $atts = array(), $return_array = false ) {
      return 'hello world';
    }
  }
}

原创文章,作者:Y.Y,如若转载,请注明出处:https://84361749.com/post/wordpress-theme-plug-extension.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注