if语句中的Wordpress / PHP通配符

时间:2014-04-01 18:52:02

标签: php wordpress

我有这行完美的代码:

<?php if (in_category('CATEGORY-SUFFIX')) { get_header('SUFFIX'); } else { get_header(); } ?>

除此之外,我有很多类别,并希望使用&#34;通配符&#34;对于类别的名称,并且基于在类别名称中仅查找几个字符而使标题切换。

更像是:

<?php if (in_category('*SUFFIX')) { get_header('SUFFIX'); } else { get_header(); } ?>

1 个答案:

答案 0 :(得分:0)

类别存储在数据库中,因此您需要以下内容:

https://codex.wordpress.org/Function_Reference/get_category

这可以帮助您获取在页面加载时访问的页面的名称。然后你可以做类似的事情:

  

get_header($ cat_name);

编辑:

由于您只是在寻找后缀,因此最好的方法是使用strripos或if / else结构中的正则表达式匹配或者根据您的需要使用switch语句:

//lets assume you want to catch all categories that end with ed (like teached)
if(strripos($cat_name,'ed', -2)!== FALSE){
   get_header('ed-header');
} elseif(...){
   ...
}