WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

Типы записей и таксономии в виджете «На виду» («Прямо сейчас») в консоли

Произвольные типы записей в WordPress продолжают набирать обороты и сегодня это уже неотъемлемый атрибут в каждом втором сайте на WordPress. Поговаривают даже что, этот виток развития способен создать серьезную конкуренцию такой крутой CMS, как Drupal. Но мы то с вами знаем...

Так вот, создавать произвольные типы записей мы уже умеем и даже умеем создавать таксономии и прикручивать их к произвольным типам записей, а как выводить статистику всего этого созданного в консоли WordPress в виджете "Прямо сейчас", пока не знаем.

Надо исправить сей пробел в знаниях и дополнить виджет "Прямо сейчас" прямо сейчас. Для этого вставим в functions.php такой код:

## Добавляем все типы записей в виджет "Прямо сейчас" в консоли
add_action( 'dashboard_glance_items' , 'add_right_now_info' );
function add_right_now_info( $items ){

	if( ! current_user_can('edit_posts') ) return $items; // выходим

	// типы записей
	$args = array( 'public' => true, '_builtin' => false );

	$post_types = get_post_types( $args, 'object', 'and' );

	foreach( $post_types as $post_type ){
		$num_posts = wp_count_posts( $post_type->name );
		$num       = number_format_i18n( $num_posts->publish );
		$text      = _n( $post_type->labels->singular_name, $post_type->labels->name, intval( $num_posts->publish ) );

		$items[] = "<a href=\"edit.php?post_type=$post_type->name\">$num $text</a>";
	}

	// таксономии
	$taxonomies = get_taxonomies( $args, 'object', 'and' );

	foreach( $taxonomies as $taxonomy ){
		$num_terms = wp_count_terms( $taxonomy->name );
		$num       = number_format_i18n( $num_terms );
		$text      = _n( $taxonomy->labels->singular_name, $taxonomy->labels->name , intval( $num_terms ) );

		$items[] = "<a href='edit-tags.php?taxonomy=$taxonomy->name'>$num $text</a>";
	}

	// пользователи
	global $wpdb;

	$num  = $wpdb->get_var("SELECT COUNT(ID) FROM $wpdb->users");
	$text = _n( 'User', 'Users', $num );

	$items[] = "<a href='users.php'>$num $text</a>";

	return $items;
}

После того как мы вставим этот код у нас получится примерно такая картина:

Виджет На виду

Объяснять как и что работает пожалуй не буду, кому нужно разберутся, кто не может разобраться — ставьте плагин, упомянутый ниже.

Еще фильтры, которые можно использовать в виджете «На виду» в консоли.

Плагин для улучшения виджета "Прямо сейчас"

Пока писал статью наткнулся на плагин для комплексного изменения виджета "Прямо сейчас" в консоли, называется он: Right Now Reloaded.

Плагин хорош! И я его даже поспешно установил на один из блогов. Понравился он мне потому, что он не имеет никаких настроек, никак не проявляет себя в админке, ничего никуда не сохраняет и вообще, безобидный как червяк, за исключением нагрузки при генерации соответствующей страницы в админке, но это уже, как говорится, издержки производства, тут ничего не сделаешь. Его в любое время можно удалить и не переживать, что после него остался мусор.

Работает он по принципу: удаляет стандартный виджет и создает новый, взамен, сохраняя при этом совместимость с плагинами, которые могут использовать блок "Прямо сейчас" в своих целях.

14 комментов
  • @ Евгений sovetywebmastera.ru

    У вас очень интересный блог и полезные статьи, есть чему поучиться, буду Вашим постоянным посетителем. good

    1
    Ответить7.8 лет назад #
  • ivanchuk

    Немного отклоняюсь от темы, но в пределах названия )) Сталкивались ли Вы с произвольными полями для таксономий? В частности - добавление изображения (не дедовским способом в виде http://..../..../id_таксономии.img), а именно с вызовом media-upload.php. Нашел несколько плагинов, ultimate-taxonomy-manager и taxonomy-meta-1.0, но последний, к сожалению не запустился, а ultimate-taxonomy-manager только при активации уже кушает 20 запросов к б.д. (но решает все задачи). Если есть возможность, натолкните на более легкое решение, т.к. не очень хочется перегружать сайт плагинами и черезмерно увеличивать нагрузку.
    Благодарен.

    Ответить7.7 лет назад #
    • Kama7602

      К сожалению, не знаю решения такой задачи, ничем помочь не могу.

      Ответить7.7 лет назад #
    • @ Social Insect socialinsect.com

      Артем, попробуй taxonomy-images. Автор даже скринкаст сделал по установке-настройке.

      Ответить7.6 лет назад #
  • mozg www.webscs.ru

    А можно ли добавить таксономий к рубрикам? тот же title?

    Ответить7.6 лет назад #
  • Kasab kasab.kiev.ua

    Полезно и интересно, а как у него с sql запросами? не сильно ли базу загрузит?
    Спасибо smile

    Ответить7.5 лет назад #
    • Kama7602

      Зависит от объема данных. Беспокоиться, думаю, не стоит.

      Ответить7.5 лет назад #
  • @ Окна www.winstyle.by

    Прикольно!!!!!!!!!! Люблю новые фишки на блогах. Надо попробывать.

    Ответить7.4 лет назад #
  • Гость

    Очень хороший блог, жаль что Вы перестали писать посты

    Ответить7.4 лет назад #
    • Otshelnik-Fm203 otshelnik-fm.ru

      Полностью согласен. С октября нету новых записей, и русский вордпресс остановился вместе с вами Kama

      Ответить7.4 лет назад #
  • exar avto-vip.com

    Даже не обратил внимания на дату поста. А интересного здесь много.
    Будет ли еще?

    Ответить7.4 лет назад #
  • Mike mybiz777.com

    Норм себе также сделаю smile

    Ответить7.3 лет назад #
  • nastenka12 www.xtrue.ru

    Мне очень понравился ваш пост и я хотела бы его разместить на своем сайте. Естественно ссылка на ваш сайт будет присутствовать. Надеюсь вы не будите против?  

    Ответить7.3 лет назад #
Здравствуйте, !     Войти . Зарегистрироваться