如中所述Child Themes 法典中的条目:
主题开发人员提示。子主题的功能。首先加载php意味着您可以通过有条件地声明主题的用户函数,使其可插入,也就是说,可以被子主题替换。
if ( ! function_exists( \'theme_special_nav\' ) ) {
function theme_special_nav() {
// Do something.
}
}
这样,子主题就可以通过预先声明父主题的PHP函数来替换父主题的PHP函数。
如果您正在开发的主题将发布供一般使用(即,您将提交到wordpress.org存储库),那么您应该definitely 内置功能,允许基于您的主题构建子主题的其他人覆盖您主题的某些功能。
允许覆盖哪些功能取决于您自己,您无需内置覆盖每个功能/功能的功能。
为了让其他人更容易从您的主题构建子主题,您可以做的另一件事是在适当的地方合并特定于主题的操作/过滤器。
至于你的OOP和程序问题:这实际上归结为个人风格。
要构建OOP风格的主题,可以明智地使用final方法。也就是说,当程序样式不应将函数包装在if (!function_exists(...)) {
那你就用那种方法final
, 等
编辑answer 对于另一个WPSE问题,为开发OOP风格的主题提供了更多的上下文。