我有以下开关声明:
switch($post->post_type) {
default:
echo 'default';
<?php }
这本质上是尽可能基本的。 post->post_type
只是一个变量,它将根据项目的帖子类型(WordPress)返回一个字符串。
我希望能够做的是插入switch语句,就像某个数组一样 - 就像这样:
function add_extra_fruits($fruits) {
$extra_fruits = array(
'plums',
'kiwis',
'tangerines',
'pepino melons'
);
// combine the two arrays
$fruits = array_merge($extra_fruits, $fruits);
return $fruits;
}
add_filter('add_fruits', 'add_extra_fruits');
使用array_merge()
函数。
我给出了以下示例来尝试:
switch ( true /* we're comparing a boolean, not the post type! */ ) {
case has_action( "basey_loop_single_$post->post_type" ) :
do_action( "basey_loop_single_$post->post_type" );
break;
default :
// default post layout
}
但是我不确定这是否能完成我通过示例动作后所做的事情,如下所示:
function basey_loop_single_page_output() {
echo 'test';
}
add_action('basey_loop_single_page', 'basey_loop_single_page_output');
当指定满足$post->post_type
条件时,不返回任何内容。任何人都知道如何处理这个问题?最简单的,这是一个核心PHP问题(关于插入switch语句),但显然这里的一些术语更适合WordPress。
谢谢!