我们正在努力找到一种方法来计算保存为WP上自定义字段的两个日期之间的时间差。我们实际上使用了两个不同的插件:
(a)Easy Content Types
(b)Advanced post list
对于第一个,我们创建了一系列自定义字段,其中包含开始(ecpt\\u data-consegna)和结束(ecpt\\u data-dismissione)日期,我们希望找到一种方法,在通过高级Post列表插件生成的表的单元格中显示这些日期之间的时差(显示为XX年、XX月、XX天)。请注意,如果缺少播种日期,则应计算开始日期和当前日期(现在)之间的差值。
在与这两个插件的开发人员聊了很久之后,我们陷入了停顿。目前,我们已经开发了一个自定义PHP函数来处理日期计算,如下所示:
function calculateDiff() {
$start_date = new DateTime(get_post_meta( get_the_ID(), \'ecpt_data-consegna\', true ));
$since_start = $start_date->diff(new DateTime(get_post_meta( get_the_ID(), \'ecpt_data-dismissione\', true )));
if($since_start->days == 0) {
$since_start = $start_date->diff(new DateTime());
}
return $since_start->y . \' years, \' . $since_start->m . \' months, \' . $since_start->d . \' days\'; }
但当我们把这个APL短代码放在一个APL生成的单元格中时:
<td>[php_function name="calculateDiff"]</td>
结果是一个断开的网页,在生成表本身之前被切断。当我们尝试使用此代码时:
<td><?php echo calculateDiff();?></td>
结果是一个空白单元格。
我们还尝试直接调用该函数(在APL之外),结果始终为空。所以一定是什么地方出了问题。。。
任何帮助都将不胜感激!