Intereting Posts
Что представляет собой глобальная переменная $ s? Запрос геоданных внутри wp_query? Группировка сообщений с помощью настраиваемой метавыставки Проблемы с дочерью, functions.php Как я могу изменить пользовательский тип сообщения и шаблон пользовательской страницы для дочерней темы, если все штыри контента обрабатываются «родным» плагином темы? Использование XML RPC для импорта данных в WordPress Добавление комментариев к моей теме Страница тегов Не показывать все сообщения с тегом Несколько категорий с общими подкатегориями Добавить srcset и размеры для более старых загрузок? Фотографии, чтобы отображать фотографии из библиотеки содержимого Фиксация разбивки на страницы с помощью таксономического архива wp фокус фокуса, отключение без касания ядра Создать пользовательский тип сообщения, использующий шаблон Page.php Должна ли фотогалерея размещаться в сообщении или на странице?

Пользовательские полевые итоги

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

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

Есть ли разумный способ сделать это?

Solutions Collecting From Web of "Пользовательские полевые итоги"

Получите все идентификаторы сообщений из определенного типа сообщения, пройдите через них и просто добавьте настраиваемые поля вместе и покажите сумму ниже заголовка типа post на edit.php (обратите внимание на первый параметр add_filter, вам нужно изменить часть продукта на ваше имя типа сообщения)

add_filter('views_edit-products','products_price_sum'); function products_price_sum($views) { $args = array( 'post_type' => 'products', 'posts_per_page' => -1, 'post_status' => 'any', 'fields' => 'ids' ); $postslist = get_posts( $args ); $sum_total = 0; foreach ($postslist as $post) { $price = get_post_meta( $post, 'price', true ); $sum_total = $sum_total+$price; } //This is the sum of the price field $views['price_sum'] = '<strong>Price Sum:</strong> '.$sum_total; return $views; } 

Вот окончательная версия, которая изменяется в зависимости от состояния щелчка или таксономии.

Будущим читателям нужно будет изменить:

custom_post_name – имя слива вашего пользовательского сообщения

custom_taxonomy_name – если он у вас есть, иначе просто таксономия,

_custom_field_id – мета-идентификатор поля, которое вы хотите подытожить

Причиной имени пользовательской таксономии является то, что у меня есть столбец с ценами и столбец с «категорией». Когда вы нажмете на статус, вы увидите цену всех пользовательских сообщений в этом статусе, но я хотел бы дополнительно отфильтровать цену на основе «категории». Когда вы нажимаете на нее, она показывает только те конкретные должности и общие изменения цен только для этой таксономии.

Спасибо всем за помощь!

 foreach( array( 'custom_post_name' ) as $hook ) add_filter( "views_edit-$hook",'products_price_sum_dpf'); function products_price_sum_dpf($views) { $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); $slug = $term->slug; if ($_GET['post_status'] != NULL) { $args = array( 'post_type' => 'custom_post_name', 'posts_per_page' => -1, 'post_status' => $_GET['post_status'], 'fields' => 'ids', 'custom_taxonomy_name' => $slug ); } else { $args = array( 'post_type' => 'custom_post_name', 'posts_per_page' => -1, 'post_status' => 'test', 'custom_taxonomy_name' => $slug, 'fields' => 'ids' ); }; $postslist = get_posts( $args ); $sum_total = 0; foreach ($postslist as $post) { $price = get_post_meta( $post, '_custom_field_id', true ); $sum_total = $sum_total+$price; } //This is the sum of the price if ($_GET['post_status'] == NULL && $slug == NULL) { echo ''; } else { $views['price_sum'] = '<strong style="color:#ff0000">Total: '.$sum_total.'</strong>'; } return $views; }