我好像犯了个错误:

WordPress database error ERROR:  column p.id does not exist LINE 1: SELECT p.id FROM wp_posts AS p  WHERE p.post_date > '2013-01...

来自这段代码:
<?php
$posts=$wpdb->get_results($wpdb->prepare(
 "SELECT post_id, meta_value FROM $wpdb->postmeta WHERE meta_key = %s " .
 "ORDER BY CHAR_LENGTH(meta_value) DESC, meta_value DESC LIMIT 5",
 '_wp-svbtle-kudos'
));
?>

我在wordpress中使用postgresql。我实现了this并且使用this主题。问题来自第78行here
对于post,数据库如下所示:
而对于postemeta,它看起来是这样的:

最佳答案

根据错误消息,我怀疑WordPress创建了这样的表。

create table "wp_posts" (
  "ID" int8 primary key,
  ...
);

在PostgreSQL中,如果在双引号中使用大写来声明列名,则必须以相同的方式访问它。
SELECT p."ID" FROM wp_posts p ...

10-05 20:29
查看更多