优化 Wordpress 的条件代码

Optimising conditional code for Wordpress

我对 Wordpress 的两种页面类型感兴趣:页面和帖子。

在我的帖子模板的顶部,我有一些代码如下显示不同的横幅广告:

<?php if ( ! is_single() && ! is_search() && ! is_category() && ! is_tag() && my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_single() && my_wp_is_mobile() ) {?>
ad code
<?php } ?>


<?php if ( ! is_single() && ! is_search() && ! is_category() && ! is_tag() && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_single() && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>

在我的页面模板顶部,我有一些代码如下显示不同的横幅广告:

<?php if ( is_page(1302) && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_page(3651) && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_page(602) && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( ! is_front_page() && ! is_page(array(602,3651,1302)) && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_front_page() && ! my_wp_is_mobile() ) {?>
ad code
<?php } ?>


<?php if ( is_page(1302) && my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_page(3651) && my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( is_page(602) && my_wp_is_mobile() ) {?>
ad code
<?php } ?>

<?php if ( ! is_front_page() && ! is_page(array(602,3651,1302)) && my_wp_is_mobile() ) {?>
ad code
<?php } ?>

所有"ad codes"都是不同的。我想将横幅广告移动到我的主题中的不同位置,并且一直在尝试类似的方法:

<?php
    if ( is_single() ) {
        get_template_part( 'postads' );
    }
?>

<?php
    if ( is_single() ) {
require("postads.php");
    }
?>

postads.php 是我的子主题中的一个文件,包含上述相关横幅代码和条件。

我一直在尝试 php include 和 get_template_part 都无济于事 - 它根本不会显示(网站加载,没有广告代码)。

有没有人对如何巧妙地优化这段代码有任何想法?我相信有更好的方法!

在 postads.php 文件之上添加 global $post;。条件查询取决于此。

<?php
  global $post;

  // your add codes

?>