添加动态日期作为 Wordpress 函数

Adding a Dynamic Date as a Wordpress Function

我想在我的 Wordpress 网站中添加一个简码功能,显示一周后、两周后和三天后的日期。我希望能够在我需要的页面上添加简码 [addoneweek]。

这是我的代码,但它不起作用。我做错了什么?

function addoneweek( $aow )
{
  return(<?php $now = new DateTime();
  echo $now->add(new DateInterval('P1W'))->format('m-d-Y');
  ?>)
}
add_shortcode( 'arttime', 'addoneweek');

首先,我建议您阅读 add_shortcode 手抄本条目。它将解释如何使用 attributes/arguments.

其次,您在第三行 returning,这意味着第四行的 echo 不会 运行。

第三,在 return 之后还有一个随机开始的 <?php 标签,然后您尝试在第五行关闭它。

第四,这并不是什么大问题,但实际上你应该return你的最终结果,而不是echoecho 仍会输出您的请求,但您实际上是在 运行 内部 echoecho 当简码 运行s.

你的函数应该是这样的:

function addoneweek()
{
  $now = new DateTime();
  return $now->add(new DateInterval('P1W'))->format('m-d-Y');
}
add_shortcode( 'arttime', 'addoneweek');

在当前 functions.php

中尝试以下代码
add_shortcode('arttime', 'arttime');
function arttime() {

    $Today = date('d:m:y');

    // add 3 days to date
    $html = Date('d:m:y', strtotime("+3 days")) . '<br/>';

    // add 7 days to date
    $html .= Date('d:m:y', strtotime("+7 days")) . '<br/>';

    // add 14 days to date
    $html .= Date('d:m:y', strtotime("+14 days")) . '<br/>';

    return $html;
}