Как вывести меню WordPress в теме. Все аргументы wp_nav_menu(). Области для меню. Урок #2

Поделиться
HTML-код
  • Опубликовано: 3 май 2018
  • В этом видео изучим, как вывести меню в теме WordPress с помощью функции wp_nav_menu(), как зарегистрировать области меню и применить их на деле. Мы затронем все параметры, которые принимает функция wp_nav_menu(), а также немного просмотрим ее исходный код. Познакомимся с несколькими важными вспомогательными функциями, без которых сложно себе представить работу с меню.
    Закрепите материал:
    bit.ly/2GxXJu8 - Все уроки о меню в WordPress
    bit.ly/2Gv7kSe - wp_nav_menu() выводит меню на экран.
    bit.ly/2GtG82f - register_nav_menu() регистрирует одну область меню.
    bit.ly/2IoCPdf - register_nav_menus() регистрирует одну и более областей меню.
    bit.ly/2FsstqQ - has_nav_menu() проверяет, имеет ли зарегистрированная область для меню прикрепленное к ней меню.
    bit.ly/2EjEoa6 - рекомендую хостинг.
    Поддержать проект:
    Яндекс и Карты - yasobe.ru/na/wp_plus
    Карта Qiwi и Карты 4890494399032606
    WebMoney Z976669281271
    WebMoney R406002894047
    PayPal paypal.me/campusboy

Комментарии • 85

  • @ivan.peshkov
    @ivan.peshkov 2 года назад +3

    Вот так нужно объяснять устройство какого-либо предмета! Последовательно, что от чего зависит, какие могут быть варианты, и тд. То, как вы преподаете, Дмитрий -- это эталонная подача материала, серьезно. Очень хорошо раскладываете логику поведения -- это важно. Даже начало казаться, что WP -- не такая уж и свалка каких попало функций, а очень богатый инструментарий.
    Научите, пожалуйста, остальных ютуберов как дела делаются, а то тут уже экологическая катастрофа.
    Огромное спасибо, таки не вымер человек разумный.

  • @SergeyMilevich
    @SergeyMilevich 3 года назад +1

    Похоже, эту (10:00) несправедливость в последних версиях WP ликвидировали.
    Отличные мануалы. Качественнее и информативнее многих платных курсов. Лайк.

  • @mishajaglovskiy6418
    @mishajaglovskiy6418 3 года назад

    Думал, что я уже все знаю о применении менюшек в wp, но тебе удается расказать о все новых возможностях, респект

  • @noname-nonaymich
    @noname-nonaymich 4 года назад +2

    Дмитрий отличная подача информации. Такое не часто встретишь, чаще всего в видео что-то делают и "походу пьесы" объясняется как(и то не всегда). Вы же объясняете на примерах и очень доступно. Спасибо за ваш труд!

  • @YevhenZhuchenko
    @YevhenZhuchenko 6 лет назад +6

    Дим, спасибо огромное за видео. Мне сложно представить урок с более подробными объяснениями чем эти. Очень жду продолжения!

    • @wpplus
      @wpplus  6 лет назад +1

      Спасибо! Главное, чтобы польза была))

  • @stevenson5402
    @stevenson5402 4 года назад

    Спасибо. Вы - профессионал

  • @alekseyberezov8020
    @alekseyberezov8020 4 года назад

    Спасибо! Все доходчиво.

  • @byufgfr1449
    @byufgfr1449 5 лет назад +2

    спасибо, все здорово! и отдельное спасибо за увеличенный шрифт!

  • @dimitriitkach7697
    @dimitriitkach7697 2 года назад

    спасибо за урок

  • @user-ru8qb9ze1d
    @user-ru8qb9ze1d 4 года назад

    Лучшее объяснение )

  • @youtubeuser4684
    @youtubeuser4684 4 года назад

    Спасибо за урок! Подписался!

  • @maksymdavydchuk
    @maksymdavydchuk 6 лет назад +17

    Спасибо за проделанную работу Дим. От начала до конца на одном дыхании. Как всегда юмор на высоте('fallback_cb' => 'sosambo') ;)

    • @wpplus
      @wpplus  6 лет назад

      Большое спасибо за поддержку! :-) Причем постоянную, это круто

    • @YevhenZhuchenko
      @YevhenZhuchenko 6 лет назад

      Я сначала не врубился, что за "техническая функция" такая)))

    • @wpplus
      @wpplus  6 лет назад +1

      я сам в шоке был)) надеюсь все поняли, что это была отсылка на "свою подобную функцию"))

    • @user-zv9db7qy4q
      @user-zv9db7qy4q 5 лет назад

      @Maksym Davydchuk, пришлось вбить в поиск 'sosambo' и перейти на сайт, чтобы понять и заценить шутку :)

  • @Professor_Ro
    @Professor_Ro 3 года назад

    спасибо мужик, ты лучший.

  • @sergeyzatsepin513
    @sergeyzatsepin513 2 года назад

    Урок класс! Спс

  • @andreiribac6284
    @andreiribac6284 4 года назад +1

    Огромное спасибо! Это видео мне очень помогло!

    • @wpplus
      @wpplus  4 года назад

      Спасибо! Это лучшая похвала!

  • @vikavictoriya
    @vikavictoriya 4 года назад +1

    Спасибо Вам огромное за понимание Меню))) Два дня не могла разобраться с меню при натяжке шаблона Bootstrap на WORDPRESS, все стили потерялись, получалось не пойми что, в вашем видео нашла ответ "link_before" - вставила туда классы и вуаля, как в оригинале!!Огромнейшее спасибо)
    Если что, я новичок, вторую неделю только изучаю HTML, CSS и WordPress))))

    • @wpplus
      @wpplus  4 года назад +1

      Спасибо за отзыв! Думаю, для полной совместимости лучше использовать walker под это дело. Поищите по фразе "wordpress bootstrap walker" и выберите под свою версию bootstrap нужный walker. Про walker (что такое и зачем) у меня видео пока нет, увы.

    • @vikavictoriya
      @vikavictoriya 4 года назад

      @@wpplus да, обязательно, спасибо, буду разбираться с опытом) ато я третий сайт натягивала, и постоянно проблемы с меню были, сейчас решила эту проблему🥰

  • @user-zv9db7qy4q
    @user-zv9db7qy4q 5 лет назад +1

    Большое спасибо за урок и вообще за весь плейлист о меню!
    По поводу вопроса почему разработчики заложили в функцию wp_nav_menu() вывод страниц (если указанное меню не найдено), а не каких-то других сущностей. Наверное, потому что записей вообще может не быть на сайте, а страница хотя бы одна (главная), обычно бывает. Ещё в пользу страниц то, что изначально они создавались как бы в противовес записям. То есть, записи - для блога, страницы - для служебных страниц, которые обычно выступают основными элементами меню верхнего уровня. Но наверняка разгадка в каком-то техническом нюансе на уровне кода движка :)

  • @andrewbayu3378
    @andrewbayu3378 5 лет назад

    Да ты гений ! В) вп каме респект

  • @user-ri8ow3qh7l
    @user-ri8ow3qh7l 6 лет назад

    Спасибо

  • @Sergey_SL
    @Sergey_SL 6 лет назад

    Респект автору!
    Помню первое поверхностное видео на тему меню. Как раз задал вопрос на тему класса walker. Но это было давно.
    Со временем познакомился с другими CMS системами. Ох! WP детская игрушка (это Я для новичков). В целом лично для меня вопросы улетучились сами собой - скорее не актуальны. Но по прежнему видео интересны и некоторые моменты реально упрощают жизнь.
    Спасибо автору!

    • @wpplus
      @wpplus  6 лет назад

      Спасибо за тёплые слова!

  • @user-xt5qf7gq4n
    @user-xt5qf7gq4n 3 года назад

    счастья здоровья за такие уроки \(^_^)/

  • @fg5128
    @fg5128 4 года назад +5

    Пипец какой то! Почему так сложно сделать своё меню в wordpress? Столько кода нужно использовать чтобы переделать меню под свои нужды... одним словом жестко

  • @jonsmith9748
    @jonsmith9748 4 года назад +3

    Голос как у БАТЬКИ "Лукашенко" :)))) а так круто спасибо за познавательное видео, ЛАЙК

    • @leonid2713
      @leonid2713 3 года назад

      Сейчас, (в 2020) - :((((

  • @itsadmin4372
    @itsadmin4372 5 лет назад

    Дмитрий спасибо за видео ,подскажите как сделать меню в две строки в wordpress,или подскажите где что почитать ,посмотреть в инете не нашел для wordpress

  • @user-jx1fl4jv4n
    @user-jx1fl4jv4n 3 года назад +1

    Как привязать конкретное меню к одной конкретной странице на сайте как фут-меню? и чтобы больше нигде его не было

  • @user-dv3lb9xd7q
    @user-dv3lb9xd7q 2 года назад

    ЛАЙК НЕГЛЯДЯ

  • @SVYashchuk
    @SVYashchuk 4 года назад

    Здравствуйте!
    Спасибо за уроки, очень помогают.
    А как задать класс для , что внутри ?

    • @wpplus
      @wpplus  4 года назад +1

      Здравствуйте. Спасибо! Такое можно сделать на этом хуке wp-kama.ru/hook/nav_menu_link_attributes

  • @user-os7st8fz4l
    @user-os7st8fz4l 5 лет назад +1

    Здравствуйте!
    Спасибо за очень понятные объяснения сложных пока для меня вопросов!
    Очень понравился ваш редактор кода!
    Подскажите, какими плагинами пользуетесь для редактирования кода? Advanced Code Editor? Или каким другим? Где их можно скачать? Если там есть какие-то особенности настройки этого плагина, - подскажите как его правильно настроить.
    Еще раз - спасибо!

    • @wpplus
      @wpplus  5 лет назад +1

      Здравствуйте. Для написания кода использую phpStorm. По дефолту там в целом всё нормально и со временем поднастраиваете под свои предпочтения.

  • @user-xd3ez1gd5u
    @user-xd3ez1gd5u Год назад

    18:00 Walker menu. Будет разказывать о нем в другом выдео

  • @user-er6rl2ir3p
    @user-er6rl2ir3p 3 месяца назад

    Здравствуйте! Подскажите, есть ли у вас видео о том, как скомбинировать в одном меню два типа ссылок: якорные и ссылка на другую страницу?
    Например, меню с такими пунктами:
    /#rules, /#delivery, /#payments, /contacts, /about
    - В WP у активного пункта меню нет ссылки, поэтому в моем меню все якорные ссылки становятся недоступными, если перейти по одному из них.
    - Если же я уберу слеш перед якорями, то они будут срабатывать на любой текущей странице. А мне это не нужно. Например: /contacts#delivery, или /about#rules.
    Тема сайта root. В файлах темы не нашла соответствующего кода, значит, тема не лезет в работу функции, заданной в ядре.
    Как решить эту проблему? Проблема актуальна не только для root, но и других.
    Может быть, вы уже рассматривали такую задачу, поделитесь ссылкой на видео?

  • @TGCreative_
    @TGCreative_ 6 месяцев назад

    Мобильное меню надо сделать, запарилась уже. В теме не было

  • @morisred1741
    @morisred1741 5 лет назад +1

    Здравствуйте! Спасибо, за видео. Мне как человеку севшим писать меню в первый раз было сложно понять некоторые символы в программе набора. Пытался сделать через стандартный файл менеджер на хостинге, но не вышло. Тема появилась, а сколько меню не прописывал, в консоли оно не появлялось. Извините, если что не так сказал, пока учусь, позже может вопросов будет меньше. Но сейчас для очень не искушённого пользователя много непонятного)

    • @wpplus
      @wpplus  5 лет назад

      Здравствуйте, Вадим. Если сели писать меню WordPress на php, то знать php Вы обязаны. Вы же не поедите по городу, не зная как управлять машиной? Когда освоите php, то "непонятных символов" не будет. Само собой, я не могу обучать php в каждом ролике :-)

  • @irritable6166
    @irritable6166 3 года назад

    получается если у меня с бутстрапа код, то меню так сделать не поулчится? вот сейчас делаю и ничего на сайте не появляется, а то меню которое бутстраповское - будто декорация, настроить нельзя, а строки относящиеся к нему не найти

  • @user-wd6nc8pw8n
    @user-wd6nc8pw8n 3 года назад

    Здравствуйте, подскажите какой редактор используете и какое дополнение к нему. Так, например Вы ввели функцию wp_nav_menu, затем кликнули на ней и у вас сразу открылся синтаксис этой функции в виде :
    wp_nav_menu( [ 'theme_location' => '', 'menu' => '', 'container' => 'div', 'container_class' => '', 'container_id' => '', 'menu_class' => 'menu', 'menu_id' => '', 'echo' => true, 'fallback_cb' => 'wp_page_menu', 'before' => '', 'after' => '', 'link_before' => '', 'link_after' => '', 'items_wrap' => '%3$s', 'depth' => 0, 'walker' => '', ] );

    • @wpplus
      @wpplus  3 года назад

      Здраствуйте. Я пользуюсь phpStorm. Никаких дополнительных плагинов не помню, чтобы ставил.

  • @ok_kov
    @ok_kov 2 года назад

    здравствуйте, а если на одном из элементов у меня назначен класс. Как мне это указать при натяжке этого меню на WP ?

    • @wpplus
      @wpplus  2 года назад

      Здравствуйте. При создании меню у самого элемента добавьте в специальное его поле для классов - cdn.discordapp.com/attachments/948329785673793556/948329806368477215/unknown.png

    • @ok_kov
      @ok_kov 2 года назад

      @@wpplus благодарю

  • @memasizm
    @memasizm 2 года назад

    На ютубе есть еще контенты по WP, где так четко объясняли бы? Одни дилетанты попадаются в основном...

  • @MrColins710
    @MrColins710 4 года назад

    планируется урок по параметру walker ?

    • @wpplus
      @wpplus  4 года назад

      Да, уже черновик набросан.

  • @daryapovarenkova9524
    @daryapovarenkova9524 5 лет назад

    Дмитрий, спасибо за уроки, пока не нашла в них решение своей проблемы. Помогите, пожалуйста! У меня в теме две области меню наверху. Пытаюсь сделать выпадающее меню, - а оно не выпадает. В чем может быть причина?

    • @wpplus
      @wpplus  5 лет назад +1

      Функция выводит лишь html разметку Меню. За все красивости и так далее отвечают CSS стили (и иногда JS код), которые нужно писать самостоятельно, если их нет. В комментарии я не смогу Вам дать курс CSS, придётся его учить или попробовать слепить на основе готовых примеров коих предостаточно в сети. Например, можно попробовать найти примеры оформления меню WordPress по такому запросу www.google.com/search?q=стили+для+меню+wordpress

    • @daryapovarenkova9524
      @daryapovarenkova9524 5 лет назад

      @@wpplus Дмитрий, спасибо за оперативный ответ. Сейчас буду изучать все по ссылке. А у Вас какой-то из уроков объясняет это? мне удобнее слушать

  • @karpoc
    @karpoc 6 лет назад

    Видео клевое , но лучше сразу бы с примерами небольшими! Типа рассказал сделал создал !!!

    • @wpplus
      @wpplus  6 лет назад

      Здравствуйте, Андре. Примеры были по каждому параметру и функции. Каких именно примеров Вам не хватило?

  • @user-wd8vb4mx7j
    @user-wd8vb4mx7j 5 лет назад

    Какой плагин был использован для транслитерации?

    • @wpplus
      @wpplus  5 лет назад

      ru.wordpress.org/plugins/cyr3lat/

  • @englishlanguage1281
    @englishlanguage1281 5 лет назад

    Спасибо автору. Повторил всё как в видео - получилось идеально! Вопрос: nav_menu_link_attributes, добавил классы во все уровни тега "а" А нужно только в один уровень! Что нужно доделать? Может кто знает?

    • @wpplus
      @wpplus  5 лет назад

      Здравствуйте. Спасибо за отзыв. Не стесняйтесь заглядывать в документацию wp-kama.ru/hook/nav_menu_link_attributes . Обратите внимание на параметр $depth.

    • @englishlanguage1281
      @englishlanguage1281 5 лет назад

      Вот это да!!! Спасибо за ответ и за оперативность!!!

    • @wpplus
      @wpplus  5 лет назад

      Успешных разработок!

  • @Alex-scc
    @Alex-scc 4 года назад

    Добрый день, может хоть вы подскажите в чем проблема? Вместо того чтобы изменить ul, menu_class и menu_id добавляет класс и айди div'y, в который этот ul вложен, в свою очередь сам ul никак не изменяется, а при внесении изменений в container_class и container_id нет вообще никаких изменений? думал сначала что дело в версии вордпресса, ведь с момента выхода данного видео прошло полтора года, но в комментариях и в документации написано все так-же, как и в вашем видео. Ничего не понимаю

    • @wpplus
      @wpplus  4 года назад

      Приветствую. Без кода сложно что-либо сказать. Показывайте код.

    • @Alex-scc
      @Alex-scc 4 года назад

      @@wpplus как? архив с проектом кинуть? В общем-то я решил уже проблему, точнее отмахнулся от нее, установил англоязычный вордпресс и начал следующий раздел курса по которому учился. В общем-то на англ. вордпрессе все заработало как должно было. Но хотелось бы понять в чем прикол. Ведь если каждый раз при возникновении подобной проблемы придется переустанавливать вп то вряд-ли я начну шарить в этом, а я хотел бы научиться. Надеюсь ваши уроки мне помогут в этом.

  • @daymonmoss7867
    @daymonmoss7867 6 лет назад

    где лежит или должен лежать файл nav-menu-template.php? как он подключается?

    • @aleksandrmakedonsky1295
      @aleksandrmakedonsky1295 5 лет назад

      wp-includes/nav-menu-template.php это файл исходного кода функции, он подключен сразу из коробки, там можно посмотреть стандартные параметры

    • @ildarhall5086
      @ildarhall5086 4 года назад

      В wp-includes лежит, это ядро вордпресса

  • @EvgenOl
    @EvgenOl 4 года назад

    Мужик, ты крут. Самые адекватные уроки по WP, но "эчо"? "зем"? Ну это же не китайски слова а английские. Ну их же легко загуглить и узнать как они читаются, раз уж ты взялся произносить их на широкую аудиторию :(

    • @wpplus
      @wpplus  4 года назад +2

      Мужик, тут главное понять, что аудитория мне ничем не обязана, а я аудитории. Отчасти из-за подобных комментов я и перестал обновлять канал, потому что я вдруг стал "много чего ей должен" по какой-то причине, хотя вроде никаких договоров и оферт с ней не подписывал. И садишься подготовить материал и в голове: надо все слова на английском послушать, а то ж у меня на канале граммар-наци и носители языка, надо крутые примеры найти и код писать отменный и много чего ещё "надо"... и сразу ответ в голове: Да я лучше пойду за деньги поработаю, а видос когда-нибудь потом сделаю, когда время будет для всего этого "надо". Ибо видос ничего не даёт, даже на уроки английского языка не заработать, ведь аудитория мне его не купит (помним, она мне ничего не должна), так что имеем что имеем. Почему говорил "эчо" - где-то в забугорном видосе услышал, так в голове и осталось. Сейчас на forvo послушал, да, был не прав. Но так ли это важно? Ты же ведь понял, что я говорил? Уверен, что понял. Прикол в том, что я раньше прислушивался к таким советам, искал правильное произношение, говорил его и получал пинок от другого лагеря со словами: ну мы же не англичане, у нас это слово принято говорить так. И что делать? Риторический вопрос, хотя ответ у меня есть - игнорить сообщения. Это сообщение исключение, потому что в целом ты прав. И вот сейчас у меня папка с текстами, которые я составлял в течение полугода для плейлиста по WP REST API, где его в сумме на ~100к символов, там куча слов на английском. И что делать? Правильно, как минимум выучить английский, а видео подождут ещё пару годиков. Извини за этот текст и спасибо за поправку, она уместна в целом.

    • @user-vw6or7sv5c
      @user-vw6or7sv5c 4 года назад

      А ты, братан, русский подтяни-ка! Это ж не китайский, а родной.

  • @vld-k
    @vld-k 5 лет назад

    В дочерней теме нужно создать новое меню, в файле functions.php
    Вопрос, вот два фрагмента кода, какой правильно использовать:
    -------------------------------
    if ( function_exists( 'register_nav_menus' ) ) {
    register_nav_menus(
    array(
    'menu-footer' => 'Menu Footer ',
    )
    );
    }
    -------------------------------
    add_action('after_setup_theme', function(){
    register_nav_menus( array(
    'menu-footer' => 'Menu Footer',

    ) );
    });
    -------------------------------

    • @vld-k
      @vld-k 5 лет назад

      Тут пишут wordpress.stackexchange.com/questions/111299/why-use-if-function-exists
      Что if не нужно, можно второй метод.

    • @wpplus
      @wpplus  5 лет назад

      Второй код верный, а первый бессмысленный.

  • @Sergtrader
    @Sergtrader 5 лет назад

    Приветствую! Сделал все как вы описали, но меню так и не появилось joxi.ru/E2pMLKWs95Q9kA версия wp 4.9.8

    • @wpplus
      @wpplus  5 лет назад +3

      Приветствую. Проверьте имя файла, куда вы вписывали код. Если работаете со своей темой, то это должен быть файл functions.php - буква в букву. Допустите какую нибудь ошибку в этом файле, если сайт не упал, значит этот файл не подключается.

    • @Sergtrader
      @Sergtrader 5 лет назад

      огромное спасибо за столь быстрый ответ))))!

    • @user-dr8ps4sv1j
      @user-dr8ps4sv1j 5 лет назад

      @@wpplus В точку! Я назвал function вместо functionS. Спасибо!

  • @user-ud8id7jt8q
    @user-ud8id7jt8q 4 года назад

    Что это за чудо редактор (phpStorm)?
    "Заходим в исходный код функции" - нажимаете на код и Вы уже там!
    Как так?
    Подскажите, пожалуйста.
    Какие надстройки ему требуются для такого?

    • @wpplus
      @wpplus  4 года назад

      Да, это phpStorm. Никаких надстроек. Зажимаешь на клаве ctrl и клацаешь левой кнопкой мыши по названию функции и всё - он перекидывает туда, где определена функция.

  • @sergeyermolaev270
    @sergeyermolaev270 2 года назад

    Кто-нибудь из восторженных комментаторов пробовал этот код?

    • @sergeyzatsepin513
      @sergeyzatsepin513 2 года назад

      Конечно. Тут кода можно сказать нет, просто показана работа некоторых функций WP api.