Как добавить содержимое по умолчанию в редактор пользовательских типов сообщений
Опубликовано: 2022-01-29В последних двух руководствах по добавлению контента в запись или страницу WordPress мы подробно рассмотрели, как добавить контент, изменив функцию the_content с помощью фильтра. Мы продемонстрировали, как вы можете добавлять контент до или после публикации в WordPress. Во втором уроке мы говорили о добавлении контента по умолчанию в редактор WordPress.
В отзывах, которые я получил от этих двух постов — как добавить контент по умолчанию в редактор WordPress и как добавить контент после публикации контента в WordPress ; общий вопрос заключался в том, как добавить контент по умолчанию в редактор WordPress в пользовательском типе записи.
Добавить содержимое по умолчанию в редактор пользовательских типов сообщений
В этом посте я хочу изменить фильтр, который мы использовали в этом посте, чтобы добавить контент по умолчанию в редакторе WordPress, чтобы мы использовали его для пользовательского типа поста. Таким образом, цель этого руководства — показать вам, как вы можете добавить контент по умолчанию в редактор пользовательских типов сообщений.
Если вы не использовали пользовательские типы сообщений WordPress , они в основном похожи на страницы или сообщения по умолчанию, но вы создаете их самостоятельно.
Вы можете создать их, добавив этот код (ниже) в файл functions.php в вашей теме WordPress, а также есть хороший учебник, я показал, как создать собственный тип записи без использования плагина , которому вы можете легко следовать шаг за шагом.
//Njengah Tutorial Пример пользовательского типа записи //Крюк add_action('init', "njengah_tutorial_cpt"); //функция обратного вызова функция njengah_tutorial_cpt () { $метки = массив( 'name' => _x('tutorials', 'общее имя типа записи'), 'singular_name' => _x('tutorial', 'тип сообщения в единственном числе'), 'menu_name' => _x('учебники', 'меню администратора'), 'name_admin_bar' => _x('учебник', 'добавить новый в панель администратора'), 'add_new' => _x('Добавить новый', ''), 'add_new_item' => __('Добавить новый учебник'), 'edit_item' => __('Редактировать учебник'), 'new_item' => __('Новое руководство'), 'all_items' => __('Все туториалы'), 'view_item' => __('Просмотреть учебник'), 'search_items' => __('Поиск туториалов'), 'not_found' => __('Учебники не найдены'), 'not_found_in_trash' => __('Учебники не найдены в корзине'), 'parent_item_colon' => __('Учебники для родителей:'), ); $аргументы = массив( 'иерархический' => правда, 'метки' => $метки, 'общедоступный' => правда, 'public_queryable' => правда, 'описание' => __('Описание.'), 'show_ui' => правда, 'show_in_menu' => правда, 'show_in_nav_menus' => правда, 'query_var' => правда, 'переписать' => правда, 'query_var' => правда, 'переписать' => массив ('слаг' => 'учебник'), 'capability_type' => 'страница', 'has_archive' => правда, 'меню_позиция' => 22, "show_in_rest" => правда, 'supports' => array( 'название', 'редактор', 'автор', 'миниатюра', 'ревизии', 'атрибуты страницы', 'настраиваемые поля') ); register_post_type('учебник', $args); }
Когда у вас есть готовый пользовательский тип записи, вам нужно получить код, который мы добавили в предыдущем руководстве , в файл функций, чтобы добавить контент по умолчанию в редактор записей WordPress.
Код состоял из фильтра, а функция обратного вызова содержала контент, который нам нужно было добавить в редактор WordPress. Код был следующим:
add_filter('the_content', 'add_content_after'); функция add_content_after($content) { $after_content = «Пример нашей политики комментариев после публикации»; $полный контент = $контент. $после_контента; вернуть $fullcontent; }
Пошаговое резюме
В кратком изложении шагов мы добавим содержимое по умолчанию в редактор настраиваемых типов сообщений, выполнив следующие три шага.
- Создайте хук фильтра для фильтрации default_content и соответствующей функции обратного вызова с содержимым по умолчанию, которое вы хотите добавить в пользовательский редактор сообщений.
- Определите, находитесь ли вы в пользовательском типе записи, добавив условный оператор if/else в функцию обратного вызова для проверки на TRUE/FALSE.
- Если вы находитесь в пользовательском типе сообщения, добавьте контент, если в других сообщениях, таких как страница, сообщение и другие настраиваемые типы сообщений; вернуть содержимое без дополнительного содержимого.
Как добавить контент по умолчанию в редактор типов сообщений
На следующем шаге нам нужно выяснить внутри функции обратного вызова, находимся ли мы на экране пользовательского типа записи, и если нет, мы не будем добавлять контент.
Поэтому в идеале мы будем использовать логическое условие, чтобы определить, находимся ли мы в определенном пользовательском типе записи, и если да, мы добавляем контент по умолчанию в редактор, и если теперь мы возвращаем функцию the_content по умолчанию без дополнительного контента.
Вы можете проверить, находитесь ли вы в пользовательском типе записи, используя следующий условный оператор:
$currentID = get_the_ID(); if (get_post_type($currentID) == "пользовательский тип сообщения" ){ // тогда делай что хочешь здесь }
Вы также можете использовать глобальный объект post в функции обратного вызова кода, который мы использовали ранее, и он должен быть следующим:
функция add_default_content_to_cpt($content, $post) { if($post->post_type == 'настраиваемый тип сообщения' // тогда делай что хочешь здесь } }
Фрагмент кода для добавления содержимого по умолчанию в редактор пользовательских типов сообщений
Теперь полный код для добавления содержимого по умолчанию в редактор настраиваемых типов сообщений должен иметь фильтр и функцию обратного вызова следующим образом:
add_filter('default_content', 'add_default_content_to_cpt', 10, 2); функция add_default_content_to_cpt($content, $post) { if($post->post_type == 'настраиваемый тип сообщения'){ // Контент для добавления в редактор пользовательских типов записей $new_content = 'Пожалуйста, войдите, чтобы оставить комментарий! Спам запрещен, Большой Кахуна наблюдает !'; $полный контент = $контент. $ новое_содержание; вернуть $fullcontent; } вернуть $контент; }
Вы должны заменить слаг пользовательского типа сообщения на соответствующий слаг, который добавляется при регистрации пользовательского типа сообщения.
Когда вы добавите этот код в файл функций или плагин, вы должны увидеть контент, добавленный в пользовательский тип записи, но его не должно быть видно в других редакторах записей, как показано на изображении ниже:
Подведение итогов
Вы можете добавить содержимое по умолчанию в пользовательский редактор сообщений, добавив фильтр, а в функции обратного вызова вы проверяете, является ли это настраиваемым типом сообщения с условным оператором (if/else или Switch Statement), если нет, вы просто показываете обычное содержимое сообщения без добавленный контент. Это полезный совет для разработчика WordPress или сайта, который хочет добавить контент ниже пользовательского типа записи в текущей теме.
Похожие статьи
- Как изменить текст «Нет в наличии» в WooCommerce
- Как удалить или отключить отзывы в WooCommerce
- Как добавить текст перед ценой в WooCommerce »Добавить текст перед ценой
- Как программно добавить товар в корзину в WooCommerce
- 30+ лучших поисковых плагинов WordPress для улучшения поиска и SEO на вашем сайте
- Как перенаправить пользователя, если он не вошел в систему WordPress » Перенаправление страницы
- Тема WooCommerce Storefront Создание нескольких шаблонов категорий
- Как получить текущую категорию продукта WooCommerce
- Как получить пользовательский тип записи в WordPress
- Как создать продукт программно WooCommerce
- Как удалить или скрыть комментарии в произвольном типе сообщений » Отключить комментарии в произвольных типах сообщений
- Как создать страницу в WordPress программно
- Как использовать хук WooCommerce для сохранения заказов
- Как переместить описание под изображением в WooCommerce
- Как получить идентификатор заказа в Woocommerce
- Как динамически вставить содержимое по умолчанию в редактор сообщений WordPress
- Как добавить описание после цены в WooCommerce
- Как удалить встроенную ссылку в футере Storefront и Woocommerce с помощью 4 простых опций
- 5 фрагментов кода разбиения на страницы WordPress с примерами [от простого к сложному]
- Как удалить сообщение «Добавлено в корзину» WooCommerce