在一个函数中添加多个条件标记?

时间:2020-08-08 作者:Henry

我有大约30个类别需要包含在此功能列表中:

add_filter( \'generate_blog_columns\',\'tu_portfolio_columns\' );
function tu_portfolio_columns( $columns ) {
    if ( is_category( \'16\' ) ) {
        return true;
    }

    return $columns;
}
我试过这个:

if ( is_category( \'16\',\'12\',\'45\' ) ) {
        return true;
    }
如何调整此函数以添加更多类别?

谢谢

1 个回复
最合适的回答,由SO网友:Ben 整理而成

如果要将这些类别ID放入数组中,那么IF一次只能处理一个条件,因此可以将IF语句更改为:

if( is_category(\'16\') || is_category(\'12\') ) {
在PHP中|| 代表OR, 同时&& 代表AND, 所以你的if声明是说如果第16类,OR 上述第12类。

但是,创建一个数组并在其中循环更有意义,因此最终会得到如下结果:

add_filter( \'generate_blog_columns\',\'tu_portfolio_columns\' );
function tu_portfolio_columns( $columns ) {
    $cats = array(\'16\', \'12\', \'45\');

    foreach($cats as $cid) {
        if ( is_category( $cid ) ) {
            return true;
        }
    }

    return $columns;
}
这是未经测试的,但我认为它应该对你有用。。。在第3行中,我们创建您想要的类别ID数组,然后在第5行中,我们将该数组放入foreach循环中,这样每个ID都可以一次调用一次。然后在其中是您的IF语句,它检索当前循环迭代类别ID,并使用WP的is_category 作用

相关推荐

将自定义代码移出主题的函数.php文件

我已经编写了在单个页面上使用的代码,但我已经将其放置在主题函数中。php创建了一个javascript文件,并将其放置在主题的JS目录中。最近,更新了主题和功能。php被覆盖,JS文件消失。我需要把这些代码放在哪里,这样当主题更新时,我的代码就不会丢失?功能。php: add_action(\'wp_ajax_zip_search\', \'zip_search\'); add_action(\'wp_ajax_nopriv_zip_search\', \'zip_search\' );&