什么时候使用哪种插件输出方法?

时间:2012-07-09 作者:m4olivei

我是Drupal dev,正在进入Wordpress。据我所知,插件可以通过几种不同的方法将内容输出到Wordpress网站:

Shortcode重写API Widget API“模板标签”(即指示主题中的用户从插件调用PHP函数)

  • 操作API
    • 您使用哪种API以及何时使用?有没有关于这样一个主题的好文章?

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

    这在很大程度上取决于你需要什么。

    关于这个问题的一般答案重写API基本上完成了所有URl重写工作dynamic_sidebar()主题模板中的,提供了这种可能性do_action()-挂钩或apply_filter( \'name\', $args_1, $args_etc )-过滤器。您可以将其用于add_action( \'name\', \'callback_function_name\' ); (类方法方法:add_action( \'name\', array( $this, \'callback_method_name\' ) );).所以你可以随心所欲地使用任何东西,但你应该尽量让用户使用起来更方便。提供模板标签通常不是一个好主意。最好将您的主要功能挂钩到挂钩中,用户必须将其添加到模板中:do_action( \'plugin_special_hook\' );. 这样可以避免插件未激活时出现错误和警告/通知。

    如果您使用小部件,您就有一个用户界面,用户可以使用它来调整可能的选项。

    如果使用短代码或TinyMCE按钮,则可以调整输出。

    如果您有过滤器或挂钩,那么输出是在没有用户参与的情况下生成的。或者您有一个设置API管理页面,用户可以在其中调整输出。

    重写API与上述内容无关—它与输出无关,而是与路由请求有关。

    名称仅用于组织。。。而hooks

    MU插件紧跟在DropIns之后,按照加载顺序,可以访问最早的hookmuplugins_loaded. 然后你就有了plugins_loaded 钩然后是after_setup_theme 插件挂钩。然后剩下的都是init.

    通常情况下,经验法则是将所有非UI的内容放入插件中-如果有选项,请使用普通插件,否则请使用mu插件。其余部分进入主题。或子主题(可以覆盖父主题文件,而不会丢失对父主题更新的更改)。

    如果需要修改可插拔部件,请更换核心部件。php函数,您可以使用DropIn。提示:不要重写pluggables,因为这通常太容易出错。

    无论您在哪里查看API,都有其他一些API,例如WP HTTP API,and others. 确保你使用它们,否则天空会落到你的头上(迟早)。

    结束

    相关推荐

    Remove Widgets in Dashboard

    另一个noob问题。。。当作者登录并访问其仪表板时,他们会看到各种小部件,例如Internet Explorer警告、WordPress动态新闻。是否要为所有用户(现在和将来)删除所有这些内容,以便他们只看到“快速按”&;\'现在的小部件?谢谢