如何使用钩子呈现保存为模板的元素?

时间:2020-02-01 作者:VilleLipponen

我的目标是在每个页面上呈现一个相同的元素。目前,该元素已手动添加到50多页。我将其保存为一个名为“可重用”的模板,然后我想从函数中调用它。php使用钩子。这是否可能(这是一个有效的用例),如果可能,如何实现?我的代码,在函数的最后。php,看起来像:

add_action(\'get_footer\', \'render_reusable\');
function render_reusable() {
    return how_can_i_load_template_component_named(\'reusable\');
}

1 个回复
SO网友:Tony Djukic

可以在函数中创建模板标记。php文件如下:

if ( ! function_exists( \'mytheme_reusable\' ) ) :
     function mytheme_reusable() { 
           //put your HTML or whatever code you need here
     }
endif;
然后,您只需将模板标记应用到任何模板中需要它的地方:

<?php mytheme_reusable(); ?>
或者,您也可以通过add_action, 像这样:

add_action( \'wp_footer\', \'render_reusable\', 1 );
function render_reusable() {
    mytheme_reusable();
}
get_footer(); 旨在包含您的页脚。php内容。我将优先级设置为1,假设您希望在脚本之前加载它。但问题是,如果您正在大量页面上加载此内容,那么您可能只想将模板标记直接放在页脚中。php文件,然后在必要时编写一些条件,以防止它加载到某些页面上。

相关推荐

OOP development and hooks

我目前正在为Wordpress编写我的第一个OOP插件。为了帮助我找到一点结构,a boiler plate 这为我奠定了基础。在里面Main.php 有一种方法可以为管理员加载JS和CSS资产:/** * Register all of the hooks related to the admin area functionality * of the plugin. * * @since 0.1.0 * @access private