WordPress как убрать страницу или рубрику (категорию) из главного меню
|Во многих шаблонах WordPress встроено верхнее меню, которое выводит одно из двух возможных вариантов:
- Страницы (чаще всего)
- Рубрики (реже)
Но в большинстве случаев нам надо выводить не все статьи, а исключить одну или несколько из списка. Мы уже делали нечто похожее в статье Не выводить (скрыть) статьи из определенной рубрики (категории) на главной в WordPress. В этой статье мы будем делать кое-что похожее, но не совсем тоже самое. А именно, мы научимся скрывать из главного меню определенную рубрику или страницу. Если вы хоть немного знаете php, то вам будет совсем просто, но если вы не знаете даже что это такое — не расстраивайтесь, я все изложил предельно просто, поэтому в вас не должны возникнуть вопросы. Итак, приступим.
- Прежде чем что либо делать вам надо записать ID — некий идентификатор вашей рубрики или страницы. Как найти ID вы можете прочитать в статье — Как определить ID страницы или рубрики в WordPress. Запишите ID страниц которые нужно скрыть.
- Теперь вам надо подправить файл header.php. Есть два способа как это сделать:
- Зайдите в админку вашего блога и перейдите с помощью левого меню по пути «Внешний вид»->»Редактор».
А в меню, которое откроется слева выберите пункт «Заголовок».
- Для второго способа требуется FTP доступ к сайту. Если он у вас есть, зайдите по FTP и проследуйте по маршруту wp-content->themes->Ваша_тема->header.php, где Ваша_тема — это собственно название вашей темы. Скопируйте файл header.php к себе на компьютер, и откройте в любом редакторе.
- Зайдите в админку вашего блога и перейдите с помощью левого меню по пути «Внешний вид»->»Редактор».
- Далее вам надо найти код, который отвечает за вывод страниц или рубрик. Для страниц он будет начинаться следующим образом:
1
<?php wp_list_pages
К примеру, в одном из шаблонов он был таким:
1
<?php wp_list_pages('title_li=<h2>Pages</h2>'); ?>
Для категорий код будет начинаться соответственно:
1
<?php wp_list_categories
- Далее, все что вам осталось — это дописать код
&exclude=25,44,41
в уже существующую функцию (внутри скобок и символов ‘). Номера25, 44, 41
— это соответствующие ID страниц или категорий, которые мы записали в первом пункте. В результате, код будет выглядеть так:1
<?php wp_list_pages('title_li=<h2>Pages</h2>&exclude=25,44,41'); ?>
- Сохраните изменения и обновите главную страницу сайта. Выбранные вами элементы должны быть скрыты.
На этом все, но если у вас остались какие-то вопросы или пожелания — пишите в комментариях, я попробую вам помочь.
Способ без плагина всегда предпочтительней, но в данном случае он будет не в приоритете, так как для исключения какой-то статьи придется каждый раз вносить правки в файл шаблона, который у вас установлен. Но все же я покажу несколько различных вариант реализации подобного решения, так как вполне реально, что вас это устроит. Замечу, что каждый следующий параметр прописывается внутри предыдущего через 2 вертикальных черты и находится в своих скобках. То есть, посмотрев на предыдущий код увидите, что второе условие для главной страницы заключено в свои скобки и находится внутри общих скобок, которые оборачивают первое условие для категорий.
А что если в заголовке нет такой строки? <?php wp_list_pages
Тема Fabulous Fluid, не могу понять как убрать страницы из верхнего меню, он туда их автоматом лепит, каждую новосозданную.
Все, отбой, спасибо. Нашла. Оно настраивается не через редактор, а через пункт меню и созданием нового списка + отключением галки «добавлять новые страницы в меню»