# Удаление поддержки функции из типа записи в WordPress
Функция remove_post_type_support()
используется для удаления поддержки определённой функции из типа записи в WordPress.
* **Время выполнения**: один раз — 0.000021 сек (очень быстро) | 50000 раз — 0.03 сек (световая скорость)
* **Не имеет хуков (Hooks)**.
## Возвращаемое значение
Функция ничего не возвращает. Результат — null
.
## Использование
Чтобы удалить поддержку функции для типа записи, используйте следующую структуру:
```php
remove_post_type_support( $post_type, $feature );
Параметры
$post_type
(строка, обязательный) — тип записи, для которого удаляется функция.$feature
(строка, обязательный) — функция, которую нужно удалить.
Примеры использования
Пример 1: Удаление метабокса "Цитата" на странице редактирования записи для пользовательского типа записи "XXX"
add_action( 'init', 'my_remove_post_excerpt_feature' );
function my_remove_post_excerpt_feature() {
remove_post_type_support( 'xxx', 'excerpt' );
}
Пример 2: Удаление поддержки форматов записей
add_action( 'init', 'my_remove_post_formats_support', 10 );
function my_remove_post_formats_support() {
remove_post_type_support( 'post', 'post-formats' );
}
Пример 3: Скрытие визуального редактора для определённого шаблона страницы
Если вы хотите отключить визуальный редактор для страницы с определённым шаблоном, используйте следующий код:
add_action( 'init', 'remove_editor_init' );
function remove_editor_init() {
// Если находимся не в админ-панели, завершаем выполнение.
if ( ! is_admin() ) {
return;
}
// Получаем ID записи из параметра GET.
$current_post_id = filter_input( INPUT_GET, 'post', FILTER_SANITIZE_NUMBER_INT );
$update_post_id = filter_input( INPUT_POST, 'post_ID', FILTER_SANITIZE_NUMBER_INT );
// Проверяем, существует ли ID записи.
if ( isset( $current_post_id ) ) {
$post_id = absint( $current_post_id );
} else if ( isset( $update_post_id ) ) {
$post_id = absint( $update_post_id );
} else {
return;
}
// Если есть ID записи, получаем шаблон.
if ( isset( $post_id ) ) {
$template_file = get_post_meta( $post_id, '_wp_page_template', true );
// Если выбран шаблон 'page-your-template.php', скрыть редактор.
if ( 'page-your-template.php' === $template_file ) {
remove_post_type_support( 'page', 'editor' );
// Можно также удалить другие функции.
}
}
}
Заметки
- Глобальный массив:
$_wp_post_type_features
— используется для хранения функций типов записей.
История изменений
- С момента введения: 3.0.0