wordpress设定文章的显示时间期限或过期时间的标志

反诈示警:如遇到文章内跳转至别的网站或产生需要交钱,交易等行为,均为诈骗行为,请谨慎对待。对于网上兼职、刷单、刷信誉的就是诈骗,请勿相信!需要提供身份证明、短信验证和短信链接点击都是诈骗, 请不要提供!同时请下载“国家反诈中心”App能自查自检,规避诈骗电话,免遭损失。

对于类似发布各种活动通知或到期时间内容的wordpress站点,也许会需要这样一个功能:发布活动内容的时候设定活动的到期日期,当活动还没有过期,网页显示“进行中”;当活动已过了设定的日期,网页则显示“已到期”或者不再显示该文章。有了这个功能,wordpress站长就不需要每次在活动过期后再编辑文章,实现的方法可以通过wordpress内置的自定义字段。

字段名称使用:expiration

设定日期的格式必须是:mm/dd/yyyy 00:00:00 如:01/01/2015 00:00:00

修改主题模板:

编辑当前使用的主题模板,修改文章主循环代码:

<?php
if (have_posts()) :
	while (have_posts()) : the_post();
		$expirationtime = get_post_custom_values('expiration');
		if (is_array($expirationtime)) {
			$expirestring = implode($expirationtime);
		}
		$secondsbetween = strtotime($expirestring)-time();
		if ( $secondsbetween > 0 ) {
?>
		<div class="post" id="post-<?php the_ID();?>">
			<h2><?php the_title();?></h2>
			<div class="entry">
				<?php the_excerpt();?>
			</div>
		</div>
<?php
		}
	endwhile;
endif;
?>

上面代码的作用是如果当前时间超过设定的时间,文章则不显示。

编辑当前使用的主题模板,修改文章主循环代码:

<?php
if (have_posts()) :
	while (have_posts()) : the_post();		
?>
		<div class="post" id="post-<?php the_ID();?>">
			<h2><?php the_title();?></h2>
			<div class="entry">
				<?php the_excerpt();?>
				<?php 
					$expirationtime = get_post_custom_values('expiration');
					if (is_array($expirationtime)) {
						$expirestring = implode($expirationtime);
					}
					$secondsbetween = strtotime($expirestring)-time();
					if ( $secondsbetween > 0 ) { 
						echo '进行中';
					}else {
						echo '已过期';
					}
				?>
			</div>
		</div>
<?php	
	endwhile;
endif;
?>

上面代码的作用是如果当前时尚没有超过设定的时间内容中就显示“进行中”,否则就显示“已过期”。

如需 WordPress 优化加速、二次开发、网站维护、企业网站建设托管等服务,点此联系我 | 近期站内热门福利推荐:
文章版权及转载声明

本文地址:https://www.zycang.com/116291.html
文章转载或复制请以超链接形式并注明来源出处。 本文最后更新于:2023-07-08 15:19:00
声明:某些文章或资源具有时效性,若有 错误 或 所需下载资源 已失效,请联系客服QQ:11210980

喜欢就支持一下吧
点赞260赞赏 分享
相关推荐
评论 抢沙发

请登录后发表评论