Отключение функционала блогов в WordPress и удаление разделов "Записи"

29 июл. 2011 г., 23:03:38
Просмотры: 14.8K
Голосов: 5

В настоящее время я использую WordPress для сайта, который будет функционировать исключительно как CMS, а не как блог-платформа. Это означает, что раздел "Записи" в WordPress не нужен. Можно ли как-то отключить его, добавив код в файл functions.php?

Будет достаточно просто убрать опцию "Записи" из админ-панели wp-admin.

1
Комментарии

Просто перестаньте использовать записи и скройте меню записей? Вы можете использовать что-то похожее на то, что я сделал здесь.

t31os t31os
30 июл. 2011 г. 12:45:08
Все ответы на вопрос 3
1

Записи — это более широкая категория, чем может показаться на первый взгляд. Запись — это любой контент, даже если вы используете WordPress в качестве CMS. Хотя может показаться, что запись — это только пост в блоге, на самом деле это любой опубликованный на сайте материал. Отключение записей приведёт к удалению всего контента. Лучше отключить связанные с блогами функции, такие как комментарии, а затем изменить файлы шаблонов, чтобы убрать упоминания об авторе, дате публикации и т. д., добившись таким образом сайта в стиле CMS.

30 июл. 2011 г. 00:09:56
Комментарии

Это верно с точки зрения базы данных, то есть все хранится в таблице *_posts. Однако API делает различие в виде post_type. Возможно, более четкий способ задать вопрос был бы: "Как отключить тип записи 'post'". Точного решения не знаю, но вряд ли можно его "отменить регистрацию". Лучший вариант — найти хук для отключения стандартного запроса, создаваемого для Цикла.

Hari Honor Hari Honor
6 июн. 2012 г. 14:53:13
1

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

add_action( 'admin_menu', 'remove_admin_menus' );
add_action( 'wp_before_admin_bar_render', 'remove_toolbar_menus' );
add_action( 'wp_dashboard_setup', 'remove_dashboard_widgets' );

function remove_admin_menus() {
    remove_menu_page( 'edit.php' );
}

function remove_toolbar_menus() {
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu( 'new-post' );
}

function remove_dashboard_widgets() {
    global $wp_meta_boxes;
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
}

Единственные оставшиеся ссылки, которые я вижу, находятся в метабоксе "Прямо сейчас" на консоли; вы также можете удалить этот блок целиком, добавив следующий код в функцию remove_dashboard_widgets:

unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
3 мая 2013 г. 03:15:32
Комментарии

Никогда не удаляйте основные переменные, если WordPress изменит название основной переменной, например, с $wp_meta_boxes на $wp_metaboxes, ваш код перестанет работать. Используйте remove_meta_box( 'dashboard_right_now', 'dashboard', 'normal' );

Ralf912 Ralf912
3 мая 2013 г. 04:00:37
1

Используйте этот плагин для скрытия админ-панелей чтобы скрыть панели.

29 июл. 2011 г. 23:37:37
Комментарии

скрытие — это не отключение

User User
15 окт. 2015 г. 06:50:08