问题描述
简而言之,我所需要的就是让我的 WordPress 做到这一点
In short, all I need is to make my WordPress do this
$var = get_template_part( 'loop', 'index' );
但是,get_template_part()
不返回 HTML,而是打印它.
我需要将此 HTML 存储在 $var
中 - 您有什么想法吗?
but, get_template_part()
does not return HTML, it prints it.
I need this HTML stored in $var
- do you have any ideas how to do it?
推荐答案
这不是 get_template_part
的用途,get_template_part 本质上就像 PHP 的 require 函数.贾斯汀·塔德洛克 (Justin Tadlock) 在这里写了更多相关内容 和还谈到了一个可能对你更有用的 Wordpress 函数 - locate_template
.
This isn't what get_template_part
was for, get_template_part essentially behaves like PHP's require function. Justin Tadlock writes a lot more about this here and also talks about a Wordpress function that might be more useful to you - locate_template
.
或者,如果您确实想使用 get_template_part 破解此功能,则可以使用模板缓冲:
Alternatively, if you did want to hack this functionality using get_template_part, you could use template buffering:
function load_template_part($template_name, $part_name=null) {
ob_start();
get_template_part($template_name, $part_name);
$var = ob_get_contents();
ob_end_clean();
return $var;
}
这篇关于WordPress:将`get_template_part()` 保存到变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!