الطريقة الصحيحة لتفعيل خاصية active للـ navigation

قبل 4 أيام قمت بطرح هذا الموضوع

حيث يتضمن مشكلة واجهتنى عند تفعيل خاصية active فى قائمة الموقع للووردبريس.

○ فى الحقيقة أستفدت من ردود الأخوة @zakariamouhid و @ahmedsaoud31 لكن عندما وجدت طريقة قررت بعد إنتهائى من العمل على القالب بأن أشارككم الحل ربما يحتاج أحدهم المعلومة فى يوماً ما.

تضمين الدالة

أولا قم بالذهاب إلى ملف الـ functions وقم بتضمين تلك الدالة:

add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);
    function special_nav_class($classes, $item){ 
        if( in_array('current-menu-item', $classes) ){
                  $classes[] = 'active '; 
                 }
    return $classes;
    }

 الدالة تقوم بتفعيل الخاصية عندما يختار الزائر تبويبة معينة وكلما أنتقل إلى أخرى تظهر له بلون كالأزرق الغامق.

تحكم فى الخواص

 الآن يمكنك أن تتحكم فى active من خلال عدة طرق الأولى مكتبة الـ Bootstrap والتى قمت بإستخدامها حيث بإمكانك التخصيص كما تشاء، أما الطريقة الثانية فمن خلال ملف الـ Style من خلال القيمة:

  .active{
  background: #00f;
  }

ويمكنك التلاعب كما شئت فى اللون وحجم الخط.

ما الإستفادة من تفعيل خاصة active فى قائمة الموقع

تفيد الزائر فى معرفة المكان الذى يتواجد به داخل الموقع، فيعرف ما الذى تصفحه والمحتوى الذى يقرأه أو يشاهده ينتمى إلى أى تصنيف.

أتمنى أن أكون قد أضفت معلومة جيدة، تقبلوا تحياتى :)

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

بإمكانك التعديل مباشرة على الكلاس current-menu-item بداخل CSS

لكن إذا استخدمت اطار عمل مثل البوتستراب أو غيرها اعتقد بالفعل ستحتاج لهذه الطريقة

شكرا لك اتمنى ان يستفيد الأعضاء من موضوعك

ايضا لزيادة الفائدة : الطريقة في هذا الفيديو :

لا اعلم ما هو الصعب في الموضوع الى هذه الدرجة . انا استخدم هذه الطريقة وهي شغالة 100% .وان استخدم بوتستراب لن يضره اي شيء . سيبقى نفس الكلاس .

ومن قال أن الموضوع صعب

الغرض نشر الفائدة

إن كنت تعلم فهناك غيرك لا يعلم

ارجو أن تراعي بأن هناك أناس مبتدئين

Modern_Creativity أضف ردا

لكن إذا استخدمت اطار عمل مثل البوتستراب أو غيرها اعتقد بالفعل ستحتاج لهذه الطريقة

ما هذا ؟؟؟. هذا خطأ 100% . اطار العمل بوتسراب ليس له علاقة بتغيير كلاسات القائمة .

ولكن ألا يستخدم بوتستراب الكلاس active لتنشيط الرابط

في حين يستخدم الووردبريس الكلاس current-menu-item

اعتقدت بأنه يجب تغيير اسم الكلاس كما قام الأخ بفعله في الموضوع

أنا لم استخدم البوتستراب مع الوورد بريس من قبل ، لكن هل يعمل حقا بدون مشاكل ، فأنا لم اجرب من قبل

اتمنى تصحيح معلوماتي ...؟

نعم اخي البوتستراب يستخدم الكلاس active . لكن لا داعي لاضافة كود ال php كما قال الاخ. فقط قم بتغيير الكلاس active الى current-menu-item من ملف ال css الخاص بالبوتستراب. هكذا افضل للمبتدئين لان القائمة في الوردبريس تكون معقدة قليلا . بلمناسبة ايضا احببت دروس الاليستراتور على قناتك .

فعلا تبدو طرقة بسيطة لكن ماذا لو استخدمت البوتسترتب عن طريق ال CDN ؟ فلن تنفع هذه الطريقة حيث ان الطرقة التي ذكرها الاخ في تلموضوع تبدو اكثر احترافية

ايضا سعيد لان الدروس نالت على اعجابك ولو اني تركت التصميم منذ سنة تقريبا للتفرغ لتطوير الويب

لا داعي لتختصر رابط موضوع من هذا الموقع بموقع خارجي

إذا أردت رابط مختصر لموضوع ما إضغط على زر "المزيد ..." في صفحة الموضوع و ستجد فيه رابطا مختصرا

مثل :