我在wordpress中有一个自定义的术语元字段,目前我使用以下代码来显示它:
<?php $terms = get_the_terms($post->ID, 'camera');
foreach ($terms as $term) {
$term_id = $term->term_id;
echo get_term_meta( $term_id, 'model', true );
}?>
但是,我需要在几个页面中多次显示此元数据。我尝试创建一个全局变量,但是没有成功。
这是我尝试过的:
我把这个放到我的functions.php里:
$camera = <"?php $terms = get_the_terms($post->ID, 'camera');
foreach ($terms as $term) {
$term_id = $term->term_id;
echo get_term_meta( $term_id, 'model', true );
}?">
然后我把这个放到我的模板文件中:
<p><?php global $camera;echo $camera;?><p/>
但它不起作用。
有什么想法吗?谢谢!
发布于 2018-07-23 06:30:59
您可以在functions.php
中定义camera
。那你为什么不把它做成一个呢?
functions.php
<?php
function camera() {
$terms = get_the_terms($post->ID, 'camera');
$result = "";
foreach ($terms as $term) {
$term_id = $term->term_id;
$result .= get_term_meta( $term_id, 'model', true );
}
return $result;
}
然后在template.php
中使用require("functions.php");
,您将能够简单地调用camera()
template.php
<?php
require("functions.php");
... other code and html ...
<p><?php echo camera(); ?></p>
https://stackoverflow.com/questions/51469703
复制相似问题