目前,我正在开发一个带有 functions.php 的 Wordpress 主题,其中将包含多个帮助函数文件。如果基于主题制作子主题,我希望这个主题非常灵活和可定制。
我的functions.php中目前有这段代码:
add_action( 'template_redirect', 'wpf_contact' );
/**
* Include the logic/settings for tpl-contact.php.
*
* Includes the logic/settings for tpl-contact.php. It will load the child's
* mail.inc.php first if that is available.
*/
if ( ! function_exists( 'wpf_contact' ) ) {
function wpf_contact() {
if ( is_page_template( 'tpl-contact.php' ) && is_child_theme() && file_exists( get_stylesheet_directory() . '/inc/wpf/mail.inc.php' ) ) {
include( get_stylesheet_directory() . '/inc/wpf/mail.inc.php' );
} else {
include( get_template_directory() . '/inc/wpf/mail.inc.php');
}
} // end wpf_contact()
}
如果文件存在,上面的代码会从子级加载 mail.inc.php。如果它没有从父主题加载它。
因为我有多个文件我想像这样加载。我在想可能没有更简单的方法可以做到这一点?在 WordPress 中是否有内置函数可以执行此操作?
或者我应该只是调整上述函数并添加参数,以便它也可以用于其他文件?不确定这是否有效。