Php Wordpress:所以我一直在mysql查询中直接调用wp_(tablenames)。纠正这个问题的最佳方法是什么?

Php Wordpress:所以我一直在mysql查询中直接调用wp_(tablenames)。纠正这个问题的最佳方法是什么?,php,mysql,wordpress,plugins,Php,Mysql,Wordpress,Plugins,因此,我一直在wordpress中开发一个插件,它运行得非常慢,并且一直在直接对wp_usermeta进行数据库调用,我刚刚发现您不应该直接调用它,如下所示: $getUserdaetails=pdo_query选择wp_usermeta.user_id,当“设施名称”时选择MinCase meta_键,然后当“健身房描述”时选择MinCase meta_键,当“城市注册”时选择MinCase meta_键,然后当“健身房描述”时选择MinCase meta_键,当“country\u reg

因此,我一直在wordpress中开发一个插件,它运行得非常慢,并且一直在直接对wp_usermeta进行数据库调用,我刚刚发现您不应该直接调用它,如下所示:

$getUserdaetails=pdo_query选择wp_usermeta.user_id,当“设施名称”时选择MinCase meta_键,然后当“健身房描述”时选择MinCase meta_键,当“城市注册”时选择MinCase meta_键,然后当“健身房描述”时选择MinCase meta_键,当“country\u registration”时,请输入MinCase meta\u键,然后从wp\u usermeta中选择不同的country\u MAPPING.country\u名称,其中wp\u usermeta.meta\u键=“country\u registration”,wp\u usermeta.meta\u值=country\u MAPPING.country\u代码和wp\u usermeta.user\u id=?结束GYM_COUNTRY,MinCase meta_key(当“category”时),然后从wp_usermeta中选择不同的category_MAPPING.category_NAME,category_MAPPING,其中wp_usermeta.meta_key=“category”和wp_usermeta.meta_value=category_MAPPING.category_CODE和wp_usermeta.user_id=?结束GYM_类别,在“image_1”时输入MinCase meta_键,然后从wp_usermeta中选择wp_posts.guid,wp_posts其中wp_usermeta.user_id=?wp_usermeta.meta_key='image_1'和wp_posts.post_type='attachment'和wp_usermeta.meta_value=wp_posts.ID结束来自wp_usermeta的健身房_图像,wp_posts,user_ID=?,pdo_real_escape_字符串$row1[user_ID],pdo_real_escape_字符串$row1[user_ID],pdo_real_escape_字符串$1]; $recordCountTest2.=pdo_num_rows$getUserdaetails; foreach$getUserdaetails作为$row2{ $html3a.=类别-{$row2[GYM_类别]} ......... ;
} 运行任何sql查询时,始终使用$wpdb->prefix,而不是wp\ux。就像下面的例子

$table_name = $wpdb->prefix . "liveshoutbox";

运行任何sql查询时,始终使用$wpdb->prefix,而不是wp\ux。就像下面的例子

$table_name = $wpdb->prefix . "liveshoutbox";

在表名之前使用$wpdb->prefix,而不是wp\ux。同样在wordpress中,使用$wpdb进行查询谢谢您的回复。我使用了以下内容,但没有返回任何数据。有什么问题吗$showcountry=$wpdb->get_results$wpdb->prepareSelect distinct meta_value,COUNTRY_MAPPING.COUNTRY_NAME from$wpdb->prefix usermeta,COUNTRY_MAPPING其中meta_key='/COUNTRY_registration'/和meta_value=COUNTRY_MAPPING.COUNTRY_CODE;如果$showcountry{}其他{foreach$showcountry作为$row{}echo json_encode$html,json_PRETTY_PRINT;如果您不想使用$wpdb->prefix,那么后面就没有空格了,例如:$table_name=$wpdb->prefix.tablename;在表名之前使用$wpdb->prefix,而不是wp_。同样在wordpress中,使用$wpdb进行查询谢谢您的回复。我正在使用以下内容,但没有返回数据。有什么问题问题?$showcountry=$wpdb->get_results$wpdb->prepareSelect distinct meta_value,COUNTRY_MAPPING.COUNTRY_NAME from$wpdb->prefix usermeta,COUNTRY_MAPPING其中meta_key='/COUNTRY_registration'/和meta_value=COUNTRY_MAPPING.COUNTRY_代码;如果!$showcountry{}else{foreach$showcountry as$row{}echo json_encode$html,json_PRETTY_PRINT;如果您想使用$wpdb->prefix,那么后面就没有空格,例如:$table_name=$wpdb->prefix.tablename;