Intereting Posts
WP Walker с использованием пользовательских классов CSS размер пользовательского миниатюры не работает Создайте собственный слайдер изображения, используя настраиваемое мета-поле в пользовательском сообщении wp_mail BCC admin Сортировка столбцов с псевдонимами Как сначала показать сообщения какой-то категории, а затем все остальные Как добавить filetype в мета значение при использовании wp_upload_bits? Как создать список ссылок для публикации с определенной категорией nginx – постоянные ссылки с .php в url не работают Режим веб-приложений оставляет пользователей застрявшими, когда следующие ссылки на изображения при использовании WPTouch с W3 Total Cache переменные конечные точки для webservice Переводы, не возвращающие переведенные строки Принудительная страница для открытия в режиме html Перевод для плагина Переписать пользовательский тип URL-адреса типа сообщения

Отображать количество ожидающих сообщений в обратном / переднем конце

Я хочу отобразить общее количество ожидающих сообщений, которые есть на моем сайте. Мой сайт – это единственный сайт, а не сеть. Я ищу эхо, что подсчет в фоновом режиме (пользовательская страница плагина) и в интерфейсе.

введите описание изображения здесь

Как я могу это сделать?

Легкий собственный SQL-запрос:

global $wpdb; $sql = <<<SQL SELECT post_status, COUNT( * ) AS count FROM {$wpdb->posts} WHERE post_status = 'pending' SQL; $result = $wpdb->get_results( $sql ); 

Результатом будет что-то вроде

 + ----------- + ----- + | post_status | count | + ----------- + ----- + | pending | 158 | + ----------- + ----- + 

Таким образом, вы сможете показать количество ожидающих сообщений с $result->count .

is_user_logged_in() проверяет, вошел ли пользователь в систему.

И с помощью edit_post_link() вы сможете напрямую ссылаться на эти сообщения (после того как вы запросите их отдельно). Следующие ссылки будут связаны с таблицей администраторов сообщений, отфильтрованной из состояния отправки сообщения:

 printf( '<a href="%s">Pending Posts</a>', admin_url( 'edit.php?post_status=pending' ) ); 

Plugin

Как плагин:

 <?php /** * Plugin Name: (#115946) Post Count by status * Plugin URI: http://wordpress.stackexchange.com/questions/115946 * Author: Franz Josef Kaiser <wecodemore@gmail.com> * Author URI: http://unserkaiser.com */ function wpse115946PostCountByStatus( $status ) { global $wpdb; $sql = <<<SQL SELECT post_status, COUNT( * ) AS count FROM {$wpdb->posts} WHERE post_status = %s SQL; $result = array_shift( $wpdb->get_results( $wpdb->prepare( $sql, $status ) ) ); $title = sprintf( _e( '%s %s posts', ucwords( $status ), $result->count ) ); return printf( '<a href="%1$s" title="%2$s">%2$s</a>', admin_url( 'edit.php?post_status=pending' ), $title ); }