我想使用 $wpdb->get_results 从数据库中选择我的 post_type,但与从 phpMyAdmin 运行的 SQL 查询相比,我收到了错误的结果。
这是我的 $wpdb 查询:
$new_query = "SELECT `ID`, `post_title`, `post_date` FROM wp_posts WHERE `post_type`='inventory' AND `post_title` LIKE '"."%".$query."%'";
$inventories = $wpdb->get_results($new_query , ARRAY_N);
这是 SQL 查询:
SELECT `ID`,`post_title`,`post_date` FROM wp_posts WHERE `post_type`='inventory' AND `post_title` LIKE "%zoom%";
通过 phpmyadmin 运行的 SQL 查询返回 6 个结果,而 $wpdb 返回零。 $wpdb 找不到太多可以找到简单 SQL 查询的东西。
我的功能尚未完成,但它可以选择所有项目: 我将发布孔函数。这是原始代码,但它可以工作。
function get_inventories_callback(){
global $wpdb;
$query = $_POST['query'];
$cut_inventories = array();
$i = 0;
if ($query == "") {
$inventories = $wpdb->get_results( "SELECT ID, post_title, post_date FROM wp_posts WHERE post_type='inventory' AND post_status='publish'", ARRAY_N);
} else {
$new_query = "SELECT `ID`, `post_title`, `post_date` FROM wp_posts WHERE `post_type`='inventory' AND `post_title` LIKE '"."%".$query."%'";
$inventories = $wpdb->get_results($new_query , ARRAY_N);
}
$page_num = intval($_POST['page_num']);
for($i = $page_num*25; $i < $page_num*25 + 25; $i++) {
$url = wp_nonce_url(
add_query_arg(
array(
'action' => 'trash',
'post' => $inventories[$i][0],
),
site_url( 'wp-admin/post.php' )
),
'trash' . $inventories[$i][0],
'_wpnonce'
);
array_push($inventories[$i], $url);
array_push($cut_inventories, $inventories[$i]);
}
$ready_inventories = array($cut_inventories, count($inventories));
echo json_encode($ready_inventories);
wp_die();
}
你能帮我吗?
$sql = "SELECT * FROM wp_post WHERE ID='10'";
$results = $wpdb->get_results($sql);
foreach( $results as $result ) {
echo $result->name;
}