怎么在日志发布时间超过15天的文章中展示广告? - wordpress开发

想加广告又怕读者抗拒?试试这个两全其美的办法吧。

在新编辑的日志里添加广告,难免会引来一些读者的不满,那么就在日至发布一段时间后再显示广告吧,也算的上是一个两全其美的方法。

这样,喜欢你的读者因为在第一时间看了,不知道有广告,后续从其他地方来看到你文章的,就会看到广告啦。

打开主题根目录下的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>

如果您有问题,还请通过首页右侧联系方式联系我为您解决。

怎么在日志发布时间超过15天的文章中展示广告? - wordpress开发-Npcink
怎么在日志发布时间超过15天的文章中展示广告? - wordpress开发-Npcink

官方模板层次结构与加载顺序 - WordPress开发

国外主题

Wythe - 创意组合WordPress主题

2020-2-12 7:28:15

教程

WordPress入门

2018-7-10 11:38:26

⚠️
Npcink上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。
无意侵害您的权益,请发送邮件至 1355471563#qq.com 或点击右侧 私信:Muze 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索