WordPress — меню страниц

Как сделать, чтоб шаблон поддерживал меню?

wordpress меню страницОчень многие шаблоны WordPress изначально не поддерживают меню. И зайдя в раздел меню, вы видите надпись: «Текущая тема не поддерживает создание меню, однако вы можете использовать виджет «Произвольное меню», чтобы добавить любое из созданных здесь меню в боковую колонку темы».

Сегодня я покажу вам, как легко сделать так, чтоб ваша тема WordPress поддерживала меню, и вы легко смогли управлять пунктами своего меню. То есть добавлять и убирать необходимые пункты меню.

Для этого вам необходимо открыть файл functions.php Вашего шаблона и вставить в него следующую функцию:

if ( function_exists( 'register_nav_menus' ) )
	{
		register_nav_menus(
		array(
		'custom-menu'=>__('Меню:'),
		)
	);
	}
function custom_menu(){
	wp_list_pages('title_li=&');
	}

 

Не забудьте сохранить файл.

После этого открываем файл header.php и находим в нем код похожий на этот:

<li><a href="<?php echo get_settings('home'); ?>">Главная</a></li>
 <?php wp_list_pages("title_li="); ?>

Почему похожий, потому что у всех темы разные и код может отличаться. Можно сделать проще, вбить в поиск вашего браузера слово «menu» и он вам покажет где находится ваш код отвечающий за вывод меню.

Обратите внимание, что каждое меню имеет свой стиль оформления, который прописан как правило в контейнере <div class=»Menu»> или похожем, и надо аккуратно вставить новый код, не стерев стиль оформления меню.

Вставляем новый код:

<ul>
    <li>
	    <?php
		if ( function_exists( 'wp_nav_menu' ) )
wp_nav_menu( array( 'theme_location' => 'custom-menu','fallback_cb'=> 'custom_menu','container' => '','menu_id' => '', ) );       
else 
custom_menu();
?>
	</li>
</ul>

Сохраняем файл и обновляем страницу.

После этого идем в раздел «Меню» и создаем свое новое меню(например: верхнее). Добавляем в него те пункты, которые вам необходимы, сохраняем меню и наслаждаемся!  🙂

меню wordpress

Вы ждали большего, но это все.

Есть и еще один способ.

Добавляем в файл functions.php следующую функцию:

   register_nav_menus(
   array(
  'primary'=>__('Меню'),
  )
);

Если ваша тема изначально имеет два меню, тогда код будет выглядеть следующим образом:

  register_nav_menus(
    array(
    'primary'=>__('Первое меню'),
    'secondary'=>__('Второе меню'),
    )
);

Сохраняем файл.

Добавляем в файл header.php, в то место, которое мы определили как и в первом случае код:

<?php wp_nav_menu( array( 'theme_location' => 'primary','fallback_cb'=> '' ) ); ?>

Сохраняем файл и настраиваем свое меню, как вам необходимо.

Удачи Вам и процветания!

Автор - Александр

Меня зовут Александр.
Я Вебмастер и SEO — специалист по созданию и продвижению сайтов на WordPress.
В профессиональном интернет-маркетинге c 2007 года. Основные направления: создание и продвижение web-проектов в российском сегменте интернет. Специализация: создание сайтов и их комплексное продвижение, внутренняя оптимизация, внешняя оптимизация, трафиковое продвижение, контентное продвижение...

Связаться со мной >>
Посмотреть все публикации

    Ваше имя (обязательно)

    Ваш e-mail (обязательно)

    Сообщение (обязательно)

    "Поставьте галочку, если вы не робот"

    и решите пример ответ буквами

    10 комментариев

    • Вот спасибо, так спасибо.
      Решил попробовать парочку тем от yootheme, но не одна из них (даже самые последние) не понимают произвольное меню горизонтальное.
      Сделал шаблончик для wp на Artisteer, так там все нормально.
      Еще раз спасибо.

    • А вот с меню у меня по вашим советам не получилось… В админке все появилось, а вот на сайте отображаться никак не захотело… пришлось все обратно вернуть.

      • Александр

        Михаил, я все шаблоны делаю именно так как я описываю и этот шаблон тоже доделывал… Почему у вас не получилось, могу только предположить, что что-то сделали не правильно… Пробуйте экспериментируйте и наверняка у вас получится! 🙂

    • У меня все получилось, но вот только стили слетают и меню тупым текстом в низ идёт, как сделать чтобы стиль не нарушался?
      вот кусок коды меню которое идёт по умолчанию в шаблоне:

      <li class="»><a href="»>Главная

      Подскажите как отредактировать именно вот этот кусок:

      так чтобы не разваливать стиль меню

    • блин вордпресс съел код не удаётся выложить

    • Здравствуйте, Александр.

      Пользуюсь таким же шаблоном как у вас. С поддержкой меню, вроде бы, получилось. Но хотелось, чтобы меню было выпадающим. Не подскажете, как это сделать?
      Спасибо.

      • Александр

        Виталий, надо просто в главном меню создать подменю, средствами wordpress, и у вас появится выпадающее меню.

    • У меня все получилось!!!!!!)))неделю не мог настроить(((Спасибо, Александр за полезную статейку!

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *