Есть три способа извлечения данных из базы данных.
1 $wpdb->get_var
.: используйте это, чтобы получить одно значение из таблицы базы данных. Например, если вы хотите посчитать общее количество комментариев. Вы можете сделать это следующим образом:
<?php
$comment_count = $wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM $wpdb->comments;"));
echo '<p>Total comments: ' . $comment_count . '</p>';
?>
2 $wpdb->get_row
.: Чтобы получить всю строку таблицы, вы можете использовать это.
Пример:
<?php
$thepost = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE ID = 1" ) );
echo $thepost->post_title;
?>
ИЛИ
<?php
$thepost = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE ID = 1" ), ARRAY_A );
print_r ($thepost);
?>
При использовании ARRAY_A
параметра в get_row ваши данные возвращаются в виде ассоциативного массива. В качестве альтернативы, вы можете использовать ARRAY_N
параметр, чтобы вернуть ваши данные поста в числовом индексированном массиве.
3 $wpdb->get_results
.: Стандартные SELECT
запросы должны использовать функцию get_results для извлечения нескольких строк данных из базы данных.
<?php
global $wpdb;
$allposts = $wpdb->get_results( $wpdb->prepare("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'publish'") );
foreach ($allposts as $singlepost) {
echo '<p>' .$singlepost->post_title. '</p>';
}
?>
и вам нужен последний, как вы можете ожидать.