Настраиваем порядок меню в административной панели WordPress
Добавление следующего кода в файл functions.php вашей темы позволит вам настроить порядок вывода меню в админке (Записи, Страницы и т.д.)
function custom_menu_order($menu_ord) {
<div style="float:right;width:350px;margin:0 0 10px 15px;">
<div id="yandex_rtb_R-A-187781-2"></div>
</div>
if (!$menu_ord) return true;
return array(
'index.php', // этот пункт отвечает за консоль
'edit.php?post_type=events', // это пользовательский тип записи - События
'edit.php?post_type=news',
'edit.php?post_type=articles',
'edit.php?post_type=faqs',
'edit.php?post_type=mentors',
'edit.php?post_type=testimonials',
'edit.php?post_type=services',
'edit.php?post_type=page', // это стандартное меню - Страницы
'edit.php', // Этот стандартная страница редактирования записи
);
}
add_filter('custom_menu_order', 'custom_menu_order');
add_filter('menu_order', 'custom_menu_order');
Перенаправляем страницы админ.панели на любое расположение
Перенаправление страниц админки недавно понадобилось в одном из наших проектов. Следующий сниппет позволит вам редиректить любую из страниц на любое другое расположение в зависимости от ролил пользователя. Другая же доступная опция — заменить wp_redirect на wp_die(«настраиваемое сообщение»); для вывода сообщения вместо перенаправления.
function wps_admin_pages_redirect() {
global $pagenow;
$admin_pages = array(
'edit-tags.php?taxonomy=category',
'edit-tags.php?taxonomy=post_tag',
'link-manager.php',
'options-writing.php',
'options-reading.php',
'options-discussion.php',
'options-media.php',
'options-privacy.php',
'options-permalink.php',
);
if(in_array($pagenow, $admin_pages)){
wp_redirect( admin_url('/') ); exit;
}
}
if(!current_user_can('edit_post')){
add_action('admin_init', 'wps_admin_pages_redirect');
}
Активируем Contact form 7 на определенных страницах с помощью wp_deregister_script
Как и многие другие плагины, Contact form 7 добавляет CSS и Javascript в заголовки ваших страниц. Как и другие плагины, это происходит на ВСЕХ страницах, даже там, где форма контактов не выводится вовсе. Добавление этого сниппета в файл functions.php вашей темы разрешит подгрузку скриптов формы только на определенных страницах.
В коде вы видите !is_page(array(8,10)) внутри каждого массива, где 8 и 10 — это ID записей, на которых нужно вывести форму и соответственно подгружать CSS и Javascript на странице.
add_action( 'wp_print_scripts', 'deregister_cf7_javascript', 100 );
function deregister_cf7_javascript() {
if ( !is_page(array(8,10)) ) {
wp_deregister_script( 'contact-form-7' );
}
}
add_action( 'wp_print_styles', 'deregister_cf7_styles', 100 );
function deregister_cf7_styles() {
if ( !is_page(array(8,10)) ) {
wp_deregister_style( 'contact-form-7' );
}
}
