在新编辑的日志里添加广告,难免会引来一些读者的不满,那么就在日至发布一段时间后再显示广告吧,也算的上是一个两全其美的方法。
这样,喜欢你的读者因为在第一时间看了,不知道有广告,后续从其他地方来看到你文章的,就会看到广告啦。
- 代码来源:详情
打开主题根目录下的functions.php文件,在底部添加以下代码:
function is_old_post($post_id=null){
$days = 15;
global $wp_query;
if(is_single() || is_page()) {
if(!$post_id) {
$post_id = $wp_query->post->ID;
}
$current_date = time();
$offset = $days *60*60*24;
$post_id = get_post($post_id);
$post_date = mysql2date('U',$post_id->post_date);
$cunning_math = $post_date + $offset;
$test = $current_date - $cunning_math;
if($test > 0){
$return = true;
}else{
$return = false;
}
}else{
$return = false;
}
return $return;
}
在需要展示广告的位置,例如日志页的single.php文件(2020主题就是主题根目录的template-parts/content.php文件底部),在其适当位置添加以下代码:
<?php if(is_old_post()){ ?>
我是广告 - Npcink
<?php } ?>
修改完之后,广告只会显示在发布日期超过15天的日志里,当然这个时间是可以修改的。在复制到functions.php中的代码中,有一句是:$days = 15;
这里是$days=num;
num的值可以随意设定。
文章过期提醒
还要一个用法,提示文章过期时使用,在当前使用主题的根目录下的single.php文件中的适当位置(例如代码开始的位置)添加以下代码:
<div class="row justify-content-center <?= Ctx::SidebarArray()[0] ?>">
<div class="j-alt warning">
本文最后更新于<?php echo date('Y年m月d日' , $this->modified);?>,已超过<?php echo floor((time()-($this->modified))/86400);?>天没有更新。如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!
</div>
如果您有问题,还请通过首页右侧联系方式联系我为您解决。