这在很大程度上取决于你需要什么。
关于这个问题的一般答案重写API基本上完成了所有URl重写工作对于希望使用文本/html编辑器扩展帖子/内容的人来说,Shortcode API是一种易于使用的扩展方法。或者,您还可以使用TinyMCE中的quicktag按钮插入短代码(短代码抽象层之上的层)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之后,按照加载顺序,可以访问最早的hook
muplugins_loaded
. 然后你就有了
plugins_loaded
钩然后是
after_setup_theme
插件挂钩。然后剩下的都是
init
.
通常情况下,经验法则是将所有非UI的内容放入插件中-如果有选项,请使用普通插件,否则请使用mu插件。其余部分进入主题。或子主题(可以覆盖父主题文件,而不会丢失对父主题更新的更改)。
如果需要修改可插拔部件,请更换核心部件。php函数,您可以使用DropIn。提示:不要重写pluggables,因为这通常太容易出错。
无论您在哪里查看API,都有其他一些API,例如WP HTTP API,and others. 确保你使用它们,否则天空会落到你的头上(迟早)。