get_posts_by_author_sql()
Отримує WHERE частину SQL запиту, в якому враховуватиметься статус запису ‘private’ для авторизованих користувачів.
Хуки з функції
Повертає
Строку
. WHERE є частиною SQL запиту.
Використання
get_posts_by_author_sql( $post_type, $full, $post_author, $public_only);
-
$post_type
(рядок/масив) (обов’язковий) - Тип посту чи масив типів постів.
-
$full
(логічний) Повернути повну частину SQL запиту, що містить WHERE , або без нього.
- true
WHERE ( (post_type = 'post' AND (post_status = 'publish' OR post_status = 'private'))))
- false
( ( post_type = 'post' AND ( post_status = 'publish' OR post_status = 'private' ) ) )
Типово: true
- true
-
$post_author
(число) -
Додати в запит ID автора замість ID поточного користувача:
post_author = $post_author
.
Типово: null -
$public_only
(логічний) -
Повернути лише громадські пости (public). Пропустити перевірку статусу ‘private’ для поточного користувача, тобто. для поточного користувача всі приватні посади не потраплять у запит.
Типово: false
Приклади
#1 Демонстрація використання
$where = get_posts_by_author_sql( 'post' ); echo $where; // Авторизований: WHERE ( (post_type = 'post' AND (post_status = 'publish' OR post_status = 'private')))) // Не авторизований: WHERE (post_type = 'post' AND (post_status = 'publish')) // Отримаємо ID посту із заголовком "Hello world!" Global $wpdb; $query = "SELECT ID FROM $wpdb->posts $where AND post_title = %s"; $post_id = $wpdb->get_var( $wpdb->prepare( $query, 'Hello world!' ) );
нотатки
- Дивіться: get_private_posts_cap_sql()
- Global. wpdb. $wpdb WordPress database abstraction object.
список змін
З версії 3.0.0 | Введено. |
З версії 4.3.0 | Introduced ability to pass array of post types to $post_type . |