Типи записів та таксономії у віджеті «На виду» («Прямо зараз») у консолі
Довільні типи записів 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; }
Після того як ми вставимо цей код, у нас вийде приблизно така картина:
Пояснювати як і що працює, мабуть, не буду, кому потрібно розберуться, хто не може розібратися — ставте плагін, згаданий нижче.
Ще фільтри, які можна використовувати у віджеті “На виду” в консолі.
rightnow_end — кінець віджету (місце, де написано: you are using WordPress3.2).
- activity_box_end — кінець віджету (місце, де написано: you are using WordPress3.2).
Плагін для покращення віджету “Прямо зараз”
Поки писав статтю натрапив на плагін для комплексної зміни віджету “Прямо зараз” у консолі, називається він: Right Now Reloaded .
Плагін гарний! І я його навіть поспішно встановив на один із блогів. Сподобався він мені тому, що він не має жодних налаштувань, ніяк не виявляє себе в адмінці, нічого нікуди не зберігає і взагалі, необразливий як черв’як, за винятком навантаження при генерації відповідної сторінки в адмінці, але це вже, як кажуть, витрати виробництва, тут нічого не зробиш. Його в будь-який час можна видалити і не переживати, що після нього залишилося сміття.
Працює він за принципом: видаляє стандартний віджет і створює новий замість цього, зберігаючи при цьому сумісність з плагінами, які можуть використовувати блок “Прямо зараз” у своїх цілях.