修改答案以回答问题
为了排除具有特定模板的所有页面,只需运行
meta_query
排除带有自定义字段的所有页面
_wp_page_template
设置为
bedankt
. 记住,WordPress将分配给页面的模板保存为一个隐藏的自定义字段,该字段名为
_wp_page_template
考虑到这一点,我们可以执行以下操作
$args = [
\'s\' => $s,
\'post_type\' => [\'post\', \'page\', \'p24_cases\'],
\'meta_key\' => [
[
\'key\' => \'_wp_page_template\',
\'value\' => \'bedankt.php\',
\'compare\' => \'NOT IN\'
]
]
];
原始答案-误读问题您只需获取该页面的帖子ID,然后将其作为数组传递给
post__not_in
\'post__not_in\' => [1], // Replace 1 with actual page ID
或PHP 5.4之前的版本
\'post__not_in\' => array( 1 ), // Replace 1 with actual page ID