【问题标题】:Wordpress: How to programmatically add post for each day?Wordpress:如何以编程方式每天添加帖子?
【发布时间】:2018-11-23 06:57:14
【问题描述】:

我想知道是否有可能有一个脚本可以自动创建“从今天”到“结束日期”的每日帖子(在脚本中手动设置)。所以在每次迭代中,post_date 都会是 $date +1day。

首先我不知道这个脚本是否必须在functions.php或elsswhere中执行...

其次,我是 php 的新手,所以我了解如何使用“wp_insert_post”创建 1 个帖子,但我不明白如何将其插入循环中。

寻求帮助,如果有人有想法... 非常感谢

【问题讨论】:

    标签: php wordpress bulkinsert


    【解决方案1】:

    是的,我们当然可以。
    从挖掘/wp-includes/post.php,看起来您可能需要遵循几个步骤:

    1. 将您的 post_status 设置为未来。
    2. 将 post_date 设置为您希望发布的时间。
    3. 按照您的代码所示插入帖子。

      function daily_post_article() {
      
              $begin = new DateTime("2018-11-01");
              $end = new DateTime("2018-12-15");
      
              $interval = DateInterval::createFromDateString("1 day");
              $period = new DatePeriod($begin, $interval, $end);
      
              foreach ($period as $dt) {
                  $publishDate = $dt->format("Y-m-d");
                  $postTitle = "Daily Post Title => ".$publishDate;
      
                  if ( !get_page_by_title( $postTitle, "OBJECT", "post" ) ){
                      $args = array(
                          "post_title"=> "Daily Post Title => ".$publishDate, 
                          "post_type"=>"post", 
                          "post_date" => $publishDate,
                          "post_status"=>"future"
                      );        
                      $time = strtotime( $postdate . " GMT" );
                      $post_id = wp_insert_post( $args );
                      wp_schedule_single_event( $time, "publish_future_post", array( $post_id ) );
                  }
              }
      }
      add_action("wp", "daily_post_article");
      
    4. 每篇文章都会在选定的日期自动发布。

    5. 此功能由 WordPress 提供。

    【讨论】:

    • 非常感谢,但我可以在没有 CRON 的情况下使用它吗?只需将脚本除外一次并创建从“今天”到“结束日期”的尽可能多的帖子吗?
    • 请将此代码添加到您当前激活的主题的functions.php文件中,如果您遇到任何问题,请告诉我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2014-06-19
    • 1970-01-01
    • 2013-01-14
    • 2019-04-15
    • 2014-05-19
    • 1970-01-01
    相关资源
    最近更新 更多