已解决 (积分将在10分钟内添加.)
我的functions.php(Wordpress)中有一个自定义的帖子类型脚本,我不明白它的含义.
$query_args = array( 'posts_per_page' => 5, 'post_type' => $is_some_page ? CPT_ONE : CPT_TWO, 'post_status' => 'publish', 'paged' => 1 );
脚本加载完美,没有问题.
问题:我想添加一个额外的post_type但我不明白这个:
符号......它的含义是什么?以及如何添加更多?这不起作用:
'post_type' => $is_some_page ? CPT_ONE : CPT_TWO : CPT_THREE,
编辑:感谢您查看并更改问题的标签.非常感谢其他所有人指出我与操作员正确的方向.
你正在看的是三元if运算符(很多语言都有这个,包括PHP和Javascript).
所以这:
$someVar = $someBool ? $val1 : $ val2
相当于:
if ($someBool) { $someVar = $val1; } else { $someVar = $val2; }
所以这:
'post_type' => $is_some_page ? CPT_ONE : CPT_TWO : CPT_THREE
没有意义,因为$is_some_page
只能评估为真或假.但目前尚不清楚你的逻辑应该是什么.在什么情况下你想post_type
成为CPT_ONE
,CPT_TWO
或CPT_THREE
?
你可以这样做:
'post_type' => $is_some_page ? CPT_ONE : ($some_other_condition ? CPT_TWO : CPT_THREE)
这相当于一个 if / else if / else