آموزش افزودن کد سفارشی منو به قالب وردپرس

افزودن کد منو به وردپرس

منوها یا فهرست‌های ناوبری، عنصری حیاتی در هر وب‌سایت هستند. آن‌ها به کاربران کمک می‌کنند تا به راحتی در بخش‌های مختلف سایت حرکت کرده و به اطلاعات مورد نیاز خود دست یابند. یک منوی کارآمد و واضح، تجربه کاربری را بهبود می‌بخشد و هدایت‌پذیری سایت را افزایش می‌دهد. اغلب قالب‌های استاندارد وردپرس امکان مدیریت و شخصی‌سازی منوها را از طریق پیشخوان فراهم می‌کنند، اما گاهی اوقات، به‌ویژه در برخی قالب‌های خاص یا رایگان، گزینه‌های موجود برای تنظیم منوها محدود است یا نیاز به افزودن منو در مکان‌های سفارشی وجود دارد. در چنین شرایطی، اضافه کردن کد منو به فایل‌های قالب وردپرس راه‌حل نهایی است. این مقاله راهنمای گام به گام برای انجام این کار را ارائه می‌دهد.

راهنمای افزودن کد سفارشی منو در قالب وردپرس

فرآیند اضافه کردن منوهای سفارشی در وردپرس شامل استفاده از تابع کلیدی wp_nav_menu است. این تابع به شما امکان می‌دهد تا منوهای ایجاد شده در پیشخوان وردپرس را در هر نقطه‌ای از قالب خود نمایش دهید. همانطور که اشاره شد، گرچه اکثر قالب‌ها به‌صورت پیش‌فرض از قابلیت منوها پشتیبانی می‌کنند، اما ممکن است نیاز داشته باشید منویی را در مکان جدیدی اضافه کنید یا قابلیت‌های موجود قالب شما محدود باشد. این آموزش به شما نشان می‌دهد که چگونه با ویرایش فایل‌های قالب، این امکان را فراهم کنید. با ما همراه باشید تا این فرآیند را به‌صورت عملی یاد بگیرید.

اولین گام برای افزودن یک منوی سفارشی، تعریف مکان‌های جدید برای منوها در فایل functions.php قالب شماست. این فایل قلب تپنده قالب شماست و امکان اضافه کردن قابلیت‌های جدید را فراهم می‌کند. پیش از هر چیز، تصمیم بگیرید که می‌خواهید منوی جدید در کدام قسمت سایت نمایش داده شود؛ برای مثال، در قسمت بالای سایت (تاپ‌بار)، هدر اصلی، یا فوتر.

برای دسترسی به فایل functions.php، می‌توانید از دو روش استفاده کنید:
1. **از طریق پیشخوان وردپرس:** به مسیر “نمایش” » “ویرایشگر” بروید و از لیست فایل‌های قالب، functions.php را پیدا و انتخاب کنید.
2. **از طریق مدیریت فایل هاست (File Manager):** با استفاده از FTP یا File Manager هاست خود به مسیر نصب وردپرس بروید، سپس به پوشه wp-content/themes/ وارد شده و قالب فعال خود را پیدا کنید. در این پوشه، فایل functions.php قرار دارد که می‌توانید آن را برای ویرایش باز کنید.

افزودن کد منو به وردپرس

نکته بسیار مهم امنیتی: فایل functions.php برای عملکرد صحیح قالب حیاتی است. هرگونه اشتباه در کدنویسی می‌تواند باعث از دسترس خارج شدن سایت شما شود. **حتماً قبل از اعمال هرگونه تغییر، یک نسخه پشتیبان از این فایل تهیه کرده و در مکانی امن ذخیره کنید.** در صورت بروز مشکل، می‌توانید به‌راحتی فایل اصلی را جایگزین کنید. 

تمام کدهای PHP در این فایل باید بین تگ‌های <?php و ?> قرار گیرند. قطعه کد مربوط به تعریف منوها را باید درون این تگ‌ها اضافه کنید. بهتر است برای حفظ نظم، کدهای سفارشی خود را در انتهای فایل، پیش از تگ پایانی ?> (در صورت وجود) اضافه کنید.

برای تعریف مکان‌های جدید منو، کد زیر را به فایل فانکشن وارد کنید:

<pre class='lang:default decode:true '>function register_my_menus() {register_nav_menus(array('top-menu' => __( 'Topbar meu' ),'main-menu' => __( 'Main menu' ),'footer-menu' => __( 'footer menu' )));}add_action( 'init', 'register_my_menus' );</pre>

با افزودن این کد، سه مکان جدید با نام‌های ‘Topbar menu’, ‘Main menu’ و ‘footer menu’ در بخش “نمایش” » “فهرست‌ها” در پیشخوان وردپرس شما ظاهر می‌شوند. اکنون می‌توانید منوهای دلخواه خود را ساخته و به این مکان‌ها اختصاص دهید.

**اما توجه داشته باشید:** تعریف مکان‌ها تنها امکان مدیریت آن‌ها را در پیشخوان فراهم می‌کند. برای اینکه این منوها در سایت شما نمایش داده شوند، لازم است کد فراخوانی آن‌ها را در فایل‌های مناسب قالب (مانند header.php برای هدر یا footer.php برای فوتر) اضافه کنید. این فایل‌ها نیز از طریق “ویرایشگر” در پیشخوان یا File Manager هاست قابل دسترسی و ویرایش هستند.

فایل هدر و فوتر

نمایش منو در هدر سایت

پس از تعریف مکان‌های منو در functions.php، اکنون باید کد فراخوانی تابع wp_nav_menu را در فایل‌های قالب خود قرار دهید تا منوها در سایت نمایش داده شوند. برای نمایش منوها در قسمت بالایی سایت، مانند هدر یا تاپ‌بار، فایل header.php قالب خود را ویرایش کنید. محل دقیق قرارگیری کد بستگی به ساختار قالب شما دارد، اما معمولاً در نزدیکی تگ‌های مربوط به ناوبری یا هدر سایت است.

برای نمایش منوی تعریف شده با نام ‘top-menu’ (که برای تاپ‌بار در نظر گرفتیم)، کد زیر را در محل مناسب در فایل header.php اضافه کنید:

<pre class='lang:default decode:true'><?php wp_nav_menu( array( 'theme_location' => 'top-menu', 'container' =>'', 'menu_class' =>'topnav' ) ); ?></pre>

و برای نمایش منوی اصلی که مکان آن را ‘main-menu’ نامگذاری کردیم، کد زیر را به فایل header.php اضافه کنید، معمولاً در جایی که منوی اصلی سایت نمایش داده می‌شود:

<pre class='lang:default decode:true '><?php wp_nav_menu( array( 'theme_location' => 'main-menu', 'container' =>'', 'menu_class' =>'mainnav' ) ); ?></pre>

مطمئن شوید که کدها را در داخل تگ‌های <?php و ?> یا در محل مناسبی که کدهای PHP دیگر قرار دارند، وارد می‌کنید.

نمایش منو در فوتر سایت

مشابه هدر، برای نمایش منوها در بخش فوتر سایت، باید فایل footer.php قالب را ویرایش کنید. این فایل معمولاً حاوی کدهای مربوط به پایین صفحه سایت است.

برای نمایش منوی اختصاص داده شده به مکان ‘footer-menu’، کد زیر را در محل مورد نظر در فایل footer.php اضافه کنید:

<pre class='lang:default decode:true '><?php wp_nav_menu( array( 'theme_location' => 'footer-menu', 'container' =>'', 'menu_class' =>'footernav' ) ); ?></pre>

با اضافه کردن این کدها در فایل‌های مناسب، منوهایی که در پیشخوان وردپرس به مکان‌های تعریف شده اختصاص داده‌اید، اکنون در قسمت‌های مشخص شده سایت شما نمایش داده خواهند شد.

جمع بندی

افزودن منوهای سفارشی با استفاده از کد در وردپرس، انعطاف‌پذیری زیادی به شما می‌دهد. این روش برای مواقعی که قالب شما امکانات پیشرفته‌ای برای مدیریت منوها ندارد یا نیاز به نمایش منو در مکان‌های غیرمعمول دارید، بسیار کارآمد است. با تعریف مکان‌های جدید در functions.php و فراخوانی آن‌ها در فایل‌های قالب مانند header.php و footer.php، می‌توانید کنترل کاملی بر ناوبری سایت خود داشته باشید. این مقاله نحوه انجام این فرآیند را به‌صورت گام‌به‌گام شرح داد.

پرسش‌های پرتکرار

منوهای وردپرس (یا فهرست‌های ناوبری) عناصری در سایت هستند که شامل لینک‌هایی به صفحات، نوشته‌ها، دسته‌بندی‌ها یا لینک‌های سفارشی دیگر می‌شوند. هدف اصلی آن‌ها هدایت کاربران به بخش‌های مختلف وب‌سایت برای بهبود دسترسی و تجربه کاربری است.
آیا این آموزش برای شما مفید بود؟
تقریبا
خیر