تغییر منو از طریق ویرایش فایل قالب

amin.ir69

تازه وارد
3/11/17
12
0
1
با عرض سلام و خسته نباشید خدمت دوستان 

من برای سایتم از دو قالب توسط یک افزونه استفاده میکنم که بازدیدکننده دستکتاپ رو هدایت میکنه به یه قالب و بازدیدکننده موبایل رو به قالب دیگه!

منتهی من میخوام برای هر قالب منوی منحصر به فرد رو داشته باشم که توی لیست منو هام ساختم اما از اونجایی که هر دو قالب به طور پیش فرض هر منویی رو که من Primary Navigation انتخواب کرده باشم نمایش میدن به این فکر افتادم که خودم تو قالب طور دستی کد رو وارد کنم !

کد رو هم تو قالب پیدا کردم و ممنون میشم دوستان راهنمایی کنن بگن کجای این کد رو باید تغییر بدم تا منوی دیگه رو نشون بده نه Primary Navigation !

<nav id="site-navigation" class="main-navigation col-md-8" role="navigation">
<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_id' => 'primary-menu' ) ); ?>
</nav><!-- #site-navigation -->




امیدوارم متوجه منظورم شده باشید

پیشاپیش از دوستانی که پاسخگو هستند کمال تشکر را دارم.

 

جاویدان

کاربر عضو
27/4/15
2,008
252
63
38
استان تهران
با سلام دوست عزیز

ببینید این الان مثلا یه m  منظور موبایل بهشون اضافه شده خب این در فانکشن قرار می گیره ولی باید شما در خود قالب برگه منو قالب و css هم این رو تغییر بدید اگر مثلا برای موبایل هست.

البته شما باید حتما مطمئن بشید این کد برای قالب شماست اگر از جای دیگه ای برداشتید مطمئنا به مشکل می خورید و بهتره کد مربوط به قالب خودتون رو قرار بدید تا مطمئن تر باشه

امیدوارم کد درست باشه

موفق باشید

کد:
<nav id="site-navigation" class="main-navigation col-md-8" role="navigation">
				<?php wp_nav_menu( array( 'theme_location' => 'primary-m', 'menu_id' => 'primary-menu-m' ) ); ?>
			</nav><!-- #site-navigation -->
 

amin.ir69

تازه وارد
3/11/17
12
0
1
ممنون آقا جاوید گل 

دقیقا این کد مال قالب سایت خودمه و در فانکشن نیست در فایل سربرگ قالب هست. 

من جای اون m ها اسم منوی جدیدمو نوشتم ولی متاسفانه اون که نیومد هیچی و الان در منوی قالبم اسم و لینک تمام صفحات سایتم قرارداده شد!

در ضمن اسم قالب هم TheShop هست.

با تشکر فراوان

 
آخرین ویرایش توسط مدیر:

جاویدان

کاربر عضو
27/4/15
2,008
252
63
38
استان تهران
کد روبه حالت اول برگردونید

ای کد رو تست بگیرید این کد ارسالی شما در ساختار قالب هستش

اینجا قسمت نیوتن شما اسم قالب رو میزنید

دوم بعد در نسخه خودتون که ارسال کردید اسم منو رو مثلا primary-menu بجای اصلی قرار میدید البته اگر شباهتی به نسخه دیگری نداره در غیر اینصورت تغییر بدید 

این رو در فانکشن قالب قرار بدید به جای لیست منوهاتون یادتون باشه از قالب فعلیتون بک آپ بگیرید این الان دو تا منو ایجاد می کنه هر جا که شما بخواید می شه فراخوان زدش

البته اینها در شرایطی هست که تغییرات زیادی در وردپرس 4.9 لحاظ نشده باشه فعلا مستنداتش رو ندیدم این رو تست کنید ببینید چجوریه

موفق باشید

کد:
function register_menu() {
	register_nav_menus( array(
	       'main_menu'   => __( 'اصلی', 'newtooon' ),
	       'top_menu'      => __( 'موبایل', 'newtooon' ),
	)  );
}
 

amin.ir69

تازه وارد
3/11/17
12
0
1
آقا جاوید عزیز بازم ممنون از پاسخ سریعتون

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

// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
'primary' => esc_html__( 'Primary Menu', 'theshop' ),
'secondary' => esc_html__( 'Side menu', 'theshop' ),
) );


بعدش من الان دو تا منو دارم به نام های menu1 , menu2 که منوی۱ منوی اصلی سایتم هست که داخل دو تا قالب نمایش داده میشه و دو تا قالب رو سایت من الان فعال هستند! که بعضی از صفحاتم از یه قالب و بعضی دیگه از قالب دیگه استفاده میکنه. و حالا من میخوام قالب theshop از منوی۲ استفاده کنه !

ممنون میشم راهنمایی کنین این کد رو چه طور باید تغییر بدم.

با تشکر قربان 

 

جاویدان

کاربر عضو
27/4/15
2,008
252
63
38
استان تهران
دوست عزیز این بهتر شد

ببین الان شما تو یکی از قالبهات باید پرمیری رو فراخوان بزنه برای منو دومی سکوندری رو پس شما فقط در قسمت پایین نوشته شده رو جایگزین کنی با بعدی

'theme_location' => 'primary', 'menu_id' => 'primary-menu' ) ); ?>


این رو قسمت رو تغییر میدی در کد بالا قرار دادی اگر جای منو تغییر نکرد یا جای دیگه نمایش داد فقط primary به جای قبلش برگردون

البته احتمال هر گونه خطایی هست

موفق باشید

کد:
<nav id="site-navigation" class="main-navigation col-md-8" role="navigation">
				<?php wp_nav_menu( array( 'theme_location' => 'secondary', 'menu_id' => 'Side menu' ) ); ?>
			</nav><!-- #site-navigation -->
 
آخرین ویرایش توسط مدیر:

amin.ir69

تازه وارد
3/11/17
12
0
1
#:-s :((  

بازم نشد جاویدان جان 

خیلی ممنونت میشم اگه تونستی این قالب رو نصب کنی خودت امتحان کنی این قالب اسمش TheShom هست و میشه از قسمت قالب ها اتوماتیک نصبش کرد.

خیلی گلی