【问题标题】:Wordpress get post via sql queryWordpress 通过 sql 查询获取帖子
【发布时间】:2019-07-10 13:35:32
【问题描述】:

我获取了 wordpress 用来显示默认日历的代码,它得到的日期如下:

if ( $day == current_time( 'j' ) &&
    $thismonth == current_time( 'm' ) &&
    $thisyear == current_time( 'Y' ) ) {
}

使用这些值(日、月和年),我如何编写一个 mysql 查询来提取在该特定日期创建的帖子?

我尝试将this link 作为参考,但我的 sql 技能几乎没有。

编辑:

我的表名为“wp_posts”,日期列名为 post_date。

根据这里的答案,我做了以下事情:

$date = new DateTime($thisyear."-".$thismonth."-".$day);

$date->setTime($hours, $minutes, $seconds);

$date_format = $date->format("Y-m-d H:i:s");

$request = $pdo->query("SELECT * FROM $wpdb->posts WHERE post_date = ".$date_format);

$result = $request->fetch();

但是当我 var_mp $result 时,什么都没有发生

var_dump($result);

【问题讨论】:

标签: php mysql wordpress


【解决方案1】:

如果您的数据库字段是“日期”类型,您可以(使用 PDO):

$date = new DateTime($thisyear."-".$thismonth."-".$day); //__Create my object date

$date_format = $date->format("Y-m-d"); //__Date formatting

$request = $pdo->query("SELECT * FROM my_table WHERE date_article = ".$date_format); //__Create my SQL query

$result = $request->fetch() //__Or 'fetchAll' if many result could be possible

编辑


如果您的数据库字段是“DATETIME”类型,您可以(使用 PDO):

$date = new DateTime($thisyear."-".$thismonth."-".$day); //__Create my object date

$date->setTime($hours, $minutes, $seconds);

$date_format = $date->format("Y-m-d H:i:s"); //__Date formatting

$request = $pdo->query("SELECT * FROM my_table WHERE date_article = ".$date_format); //__Create my SQL query

$result = $request->fetch() //__Or 'fetchAll' if many result could be possible

$result 将在您的文章中包含您的数组。

【讨论】:

  • 我表中的字段是日期时间类型。有区别吗?
  • 不起作用,但我编辑了我的问题希望它有所帮助
  • 您可能没有匹配的数据?
  • 我刚刚意识到这可能是数据中的一个问题。因为当我转储 date_format 时,我得到了年月日。但是,小时返回为 0,这意味着它不会找到匹配项。那么,有没有办法触发查询并只包含年、月和日?
【解决方案2】:

抱歉,我还不能对上述答案发表评论。所以我将发表我的评论作为答案。

我相信由于您的查询不匹配任何值,所以会返回 note。

第一

转储$date_format 并查看输出。

其次

比较你得到的输出和post_date中的值

最后

编辑$date_format 的构建以相应地匹配post_date 中的值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-23
    • 2013-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多