如果有人能帮忙,我会非常感激的。
我知道如何使用POST上的高级自定义字段来使用if语句,但这次我想从类别中的高级自定义字段中提取值,我已成功地将此代码组合在一起,但无法确定如何使其成为if语句。
此代码从类别自定义字段提取值-如果值为空,则如何将其转换为do“X”如果值为真,则如何将其转换为do“Z”
<?php
$queried_object = get_queried_object();
$taxonomy = $queried_object->taxonomy;
$term_id = $queried_object->term_id;
the_field( \'logo_src\', $taxonomy . \'_\' . $term_id );
?>
我失败的尝试:
<?php
$queried_object = get_queried_object();
$taxonomy = $queried_object->taxonomy;
$term_id = $queried_object->term_id;
if ( get_field(\'logo_src\', \'true\', $taxonomy . \'_\' . $term_id ) ) {
?>
do x
<?php } else { ?>
do z
<?php } ?>
提前感谢!
最合适的回答,由SO网友:dotZak 整理而成
你在正确的轨道上。
但是,您的参数get_field()
在您的示例中不正确。第二个值应为ID或false
(true
无效):
// Incorrect. Uses \'true\' as second parameter:
if ( get_field(\'logo_src\', \'true\', $taxonomy . \'_\' . $term_id ) ) {
试试这个。使用
get_field()
返回条件语句参数中字段的值。使用
the_field()
要打印字段的值,请执行以下操作:
$queried_object = get_queried_object();
$taxonomy = $queried_object->taxonomy;
$term_id = $queried_object->term_id;
if ( get_field( \'logo_src\', $taxonomy . \'_\' . $term_id ) )
{
the_field( \'logo_src\', $taxonomy . \'_\' . $term_id );
}
else
{
echo \'Nope.\';
}