如何整齐地组合多个条件语句

时间:2018-05-14 01:16:38

标签: php wordpress conditional

我正在尝试将侧边栏小部件添加到两个不同的位置。我的代码正在运行但是有重复,所以我的问题是如何组合这些语句?

            if( tribe_is_month() && !is_tax() ){ // Month View Page
                dynamic_sidebar( 'lavida_calendar' ); 
            } 
            elseif ( tribe_is_past() || tribe_is_upcoming() && ! is_tax() ) { // List View Page
                dynamic_sidebar( 'lavida_calendar' ); 
            }
            else {
            }

3 个答案:

答案 0 :(得分:2)

由于!is_tax存在于两个分支中,因此您可以领先。然后,请注意剩下的所有是OR条件:

if (!is_tax() && (tribe_is_month() || tribe_is_past() || tribe_is_upcoming())) {
    dynamic_sidebar(...);
}

这次改写的副作用是只调用is_tax一次。

答案 1 :(得分:1)

您好,只需在一个带OR条件的语句中设置两个条件

if( (tribe_is_month() && !is_tax())  || 
    (tribe_is_past() || tribe_is_upcoming() && ! is_tax() )){
    dynamic_sidebar( 'lavida_calendar' ); 
}

答案 2 :(得分:1)

此外,它确实可以简化这条规则,因为它会让你想要显示任何月份,过去和即将到来的不是税的边栏

/