繁体   English   中英

WordPress通过SQL查询获取帖子

[英]Wordpress get post via sql query

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

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

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

我试图将此链接作为参考,但是我的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);

如果数据库的字段是“ DATE”类型,则可以(使用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并查看输出。

其次

将您获得的输出与post_date的值进行post_date

最后

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM