如果数据库中存在POST--每次都会继续`alies`

时间:2014-08-11 作者:Stefan

首先,我是一个php新手。我有一个插件,可以定期将帖子导入我的网站。通常,它应该检查帖子是否已经存在,如果已经存在,它会更新帖子。否则会创建一个新的。现在出于某种原因else 无论发生什么,都要走这条路。

这个if 是这样的:

if ( nmp_post_exists( $cam->username ) ) {
其功能是:

function nmp_post_exists($title) {
    global $wpdb;
    return $wpdb->get_row("SELECT * FROM wp_posts WHERE post_title = \'" . $title . "\'", \'ARRAY_A\');
}   

2 个回复
SO网友:kqw

我怀疑PHP考虑了$wpdb->get_row("SELECT * FROM wp_posts WHERE post_title = \'" . $title . "\'", \'ARRAY_A\'); 无论发生什么,都是真实的(另请参见this). 您必须计算返回的行数

请尝试以下操作:

$query = "SELECT COUNT(*) FROM wp_posts WHERE post_title = \'$title\'";
$count = $wpdb->get_var($query);
return $count > 0;

SO网友:Stefan

代码运行良好。我的问题是,我忘记更改了数据库的默认前缀。抱歉浪费你们的时间。祝你过得愉快

结束

相关推荐

参数POSTS_PER_PAGE的WP_QUERY问题

我有一个查询,其中显示了捐赠者的姓名以及献礼。它使用日期元查询显示。$args = array( \'post_type\' => \'donors\', \'order_by\' => \'id\', \'order\' => \'DESC\', \'posts_per_page\' => -1, \'date_query\' => array( array( \'