Intereting Posts
Как удалить стандартную ссылку «Войти» Попытка изменить archive.php, чтобы показывать только сообщение, с изображением Как добавить поля пользовательской формы на страницу профиля пользователя? Как определить базовые страницы категории и / тега? Как использовать несколько экземпляров сделки или объявления с помощью виджета подключаемого модуля таймера обратного отсчета Как выполнить настройку WP_Customize_Cropped_Image_Control? Как я могу запрашивать все дочерние сообщения независимо от родительского Различные параметры почтового формата для каждого типа сообщений? WP_Query и разбиение на страницы СНОВА? WordPress Переписывание DOM? Инструмент регистрации Facebook: как использовать WordPress? Как хранить несколько входных значений с помощью той же meta_key Нужно Случайное меню категорий категорий Как получить название текущего меню в качестве переменной? Использование factory.php за пределами магистрали для модульного тестирования

Объединить два пользовательских типа сообщений на одну страницу администратора?

Я создаю сайт с 4 пользовательскими типами сообщений. Чтобы облегчить задачу для нашего клиента / администратора, мне интересно, есть ли способ объединить эти настраиваемые типы сообщений в один список в бэкэнд? Например, если вы посмотрите на обычную страницу администратора бэкэнда со списком и столбцами сообщений, может ли такая страница вытащить еще 3 типа сообщений для удобной сортировки / поиска?

Я не могу объединить CPT в один, они должны оставаться отдельно за пределами одной страницы просмотра в области администратора, если это возможно.

Любые мысли о том, как это сделать? Или даже, где начать искать / думать о том, как это сделать?

Solutions Collecting From Web of "Объединить два пользовательских типа сообщений на одну страницу администратора?"

Просто отправная точка, так как наверняка проблемы появятся во время дальнейшего развития. Например, прямо сейчас функция поиска ломается, поскольку она ожидает строку (post_type) и получает массив.

Чтобы перечислить более одного типа сообщений на экране «Сообщения», мы подключаемся к pre_get_posts и pre_get_posts запрос. В этом тесте сообщения, страницы и продукты будут показаны вместе на экране «Сообщения» ( http://example.com/wp-admin/edit.php ).

 add_action( 'pre_get_posts', 'join_cpt_list_wspe_113808' ); function join_cpt_list_wspe_113808( $query ) { // If not backend, bail out if( !is_admin() ) return $query; // Detect current page and list of CPTs to be shown in Dashboard > Posts > Edit screen global $pagenow; $cpts = array( 'post', 'page', 'product' ); if( 'edit.php' == $pagenow && ( get_query_var('post_type') && 'post' == get_query_var('post_type') ) ) $query->set( 'post_type', $cpts ); return $query; } 

Вспомогательный код для отображения столбца с каждым столбцом Тип сообщения:

 add_filter( 'manage_edit-post_columns', 'add_cpt_column_wspe_113808' ); foreach( array( 'post', 'page', 'product' ) as $cpt ) add_action( "manage_{$cpt}_posts_custom_column", 'show_cpt_column_wspe_113808', 10, 2 ); function add_cpt_column_wspe_113808( $columns ) { $columns[ 'cpt' ] = 'Post Type'; return $columns; } function show_cpt_column_wspe_113808( $column_name, $post_id ) { if ( 'cpt' != $column_name ) return; echo get_post_type( $post_id ); } 

Я бы рекомендовал Admin Menu Editor для этого. Я свяжусь с ним внизу.

Интересно. По определенному проекту, над которым я работал, у меня было несколько CPT (пользовательские типы сообщений), которые были связаны друг с другом. Раздел был «Инфоцентром», и они хотели, чтобы пресс-релизы, «Белые документы», «Отзывы» и т. Д. Были в Центре информации. На лицевой стороне создать это было легко. На заднем конце мы хотели, чтобы он тоже логически соответствовал друг другу. Большинство типов пользовательских сообщений были настроены как СРП из-за определенного контента (метафайлов) и требований к макету. В итоге у нас было около 20 CPT.

Тем не менее, мы использовали плагин редактора admin, чтобы удалить связанные CPT центра Info Center из внешнего меню, а затем создали меню «Инфоцентр» со связанными ссылками CPT внутри. Хотя все они казались объединенными, они не были.

Вот ссылка плагина: http://adminmenueditor.com/ попробуйте демонстрацию.