我对PHP、mySQL和脚本都是新手。我正在尝试设计一个WP自定义帖子类型,就像时间轴上的一个点或简历上的一个项目。我在以一种好的、整洁的方式设计数据结构时遇到了困难。每篇文章或“项目”可以注明日期或不注明日期。如果它有日期,它可以是一个事件,在这种情况下它有一个日期属性,也可以是一个时间跨度,在这种情况下它有一个开始和结束日期。如果它发生在某个时间段内,那么该时间段可能是“持续的”,它将在将来结束,然后编辑会回来更新记录以反映该结束日期(例如,简历上的最近职位可以从开始日期一直到“现在”)。帖子可以包含内容和其他元信息,比如自定义分类法,但我真正关心的是如何将这些子类别分解为WP Posteta表中最少的元字段。我所理解的子类别是
未注明日期的事件(!Start!End!Present)
已注明日期的事件(Start!End!Present)正在进行的时间跨度(Start!End Present)已完成的时间跨度(Start End!Present)这是对这些事件/Span/CV项目建模的最佳方法吗?谢谢
最合适的回答,由SO网友:Max Yudin 整理而成
如果我理解正确,您只需要两个元字段:start_date
和end_date
对于您的帖子。然后,您可以将当前日期与这些字段进行比较,并为帖子创建(更新)分类法:
如果职位没有开始和结束日期,则未注明日期如果只存在开始日期且当前日期较小,则为日期如果当前日期介于开始日期和结束日期之间,则为持续如果当前日期大于结束日期,则完成每次有人访问站点时,您的主题或插件功能将检查日期,并更新分类法,以查找当前日期不再符合其分类法的帖子。