إنشاء قائمة ووردبريس احترافية جزء مهم من أي موقع ناجح. القوائم، أو Menus ووردبريس، هي الطريقة التي يتنقل بها زوارك في موقعك. لو القائمة مش واضحة أو صعبة، الناس ممكن تخرج من موقعك بسرعة. المقال ده هيوريك إزاي تعمل قوائم مخصصة وتعديل القوائم بشكل احترافي باستخدام الكود، عشان تخلي تجربة المستخدم أحسن.
أهم النقاط الاساسية لانشاء قوائم على الوردبريس
- فهم أساسيات القوائم في ووردبريس وأهميتها لتجربة المستخدم، مع معرفة مكوناتها الأساسية والفرق بين الأدوات الافتراضية والإضافات.
- تسجيل مواضع القوائم في قالب ووردبريس باستخدام الدالة register_nav_menus وربطها بالخطافات المناسبة في ملف functions.php.
- عرض القوائم برمجيًا في موقع ووردبريس باستخدام الدالة wp_nav_menu، مع التحقق من وجود القائمة وتحديد مكان عرضها.
- تخصيص وتنسيق قوائم ووردبريس باستخدام الكلاسات والمعرفات الافتراضية، وإضافة كلاسات CSS مخصصة، وتعديل الكلاسات الموجودة عبر الفلاتر.
- اتباع نصائح عملية لجعل القائمة الرئيسية واضحة، واستخدام الألوان والتنسيقات بحكمة، وتحسين تجربة المستخدم بشكل عام عبر القوائم.
فهم أساسيات إنشاء قائمة ووردبريس
تعتبر القوائم في أي موقع ووردبريس بمثابة بوصلة الزائر، فهي تساعده على التنقل بين أقسام الموقع المختلفة بسهولة ويسر. بدون قوائم واضحة، قد يشعر الزائر بالضياع، مما يؤثر سلبًا على تجربته وقد يدفعه لمغادرة الموقع.
القوائم ليست مجرد روابط، بل هي جزء أساسي من تصميم الموقع وتجربة المستخدم. قائمة جيدة التنظيم تعكس احترافية الموقع وتشجع الزوار على استكشاف المزيد من المحتوى. تخيل أنك تبحث عن شيء في متجر كبير بدون لافتات إرشادية؛ هذا هو شعور الزائر بدون قائمة واضحة.
عندما نتحدث عن القوائم في ووردبريس، فإننا نشير إلى مجموعة من الروابط التي يمكن إضافتها إلى أماكن محددة في القالب. هذه الروابط يمكن أن تكون لأي شيء تقريبًا:
- الصفحات: مثل صفحة “من نحن” أو “اتصل بنا”. يمكنك بسهولة إضافة صفحات إلى قائمة ووردبريس من خلال لوحة التحكم.
- المقالات: روابط لمقالات معينة أو تصنيفات.
- روابط مخصصة: أي رابط خارجي أو داخلي ترغب في إضافته.
- التصنيفات: روابط تؤدي إلى صفحات الأرشيف الخاصة بالتصنيفات.
ووردبريس يوفر أداة أساسية لإنشاء وإدارة القوائم، وهي قوية بما يكفي لمعظم الاحتياجات. يمكنك من خلالها إضافة عناصر إلى قائمة ووردبريس وتحديد ترتيبها. لكن، إذا كنت تحتاج إلى خيارات تخصيص أعمق أو وظائف متقدمة، فهناك العديد من الإضافات المتخصصة التي توسع إمكانيات القوائم بشكل كبير، مثل إضافة أيقونات، أو قوائم منسدلة معقدة، أو حتى قوائم بصرية جذابة.
اختيار الأداة المناسبة يعتمد على مدى تعقيد القائمة التي تحتاجها ومدى خبرتك في التعامل مع الأكواد البرمجية.
تسجيل مواضع القوائم في قالب ووردبريس
![]()
بعد ما فهمنا أهمية القوائم وكيفية إنشائها بشكل عام، نيجي بقى للجزء اللي فيه شغل المطورين شوية. عشان القوائم دي تظهر في أماكن معينة في القالب بتاعك، لازم الأول تعرف ووردبريس بيها. ده بيتم عن طريق تسجيل المواضع دي في ملف functions.php بتاع القالب.
استخدام الدالة register_nav_menus
الدالة الأساسية اللي بنستخدمها هنا هي register_nav_menus(). دي بتسمح لك تسجل اسم أو أكتر لمواضع القوائم اللي عايز تدعمها في القالب بتاعك. يعني مثلاً، لو عايز تعمل قائمة رئيسية وقائمة في الفوتر، بتسجلهم بالأسماء دي.
function my_custom_menus() {
register_nav_menus([
'header-menu' => __( 'القائمة الرئيسية في الهيدر' ),
'footer-menu' => __( 'قائمة الفوتر' )
]);
}
add_action( 'init', 'my_custom_menus' );
الكود ده بيضيف مكانين للقوائم: واحد للهيدر وواحد للفوتر. بعد ما تضيف الكود ده وتحفظ الملف، هتروح للوحة تحكم ووردبريس، هتلاقي تحت قسم “المظهر” حاجة اسمها “قوائم”. هناك هتقدر تشوف الأماكن اللي سجلتها دي وتختار القائمة اللي عايز تعرضها في كل مكان.
ربط الدالة بخطافات ووردبريس
عشان الدالة register_nav_menus() تشتغل في الوقت الصح، لازم نربطها بخطاف (hook) مناسب. الخطاف الشائع استخدامه هنا هو init. الخطاف ده بيشتغل بعد ما ووردبريس تحمل كل حاجة أساسية، وده وقت مناسب لتسجيل مواضع القوائم. زي ما شفنا في المثال اللي فات، استخدمنا add_action( 'init', 'my_custom_menus' ); عشان نضمن إن التسجيل ده يحصل.
تسجيل قوائم متعددة في ملف functions.php
ملف functions.php هو المكان اللي بنحط فيه كل الأكواد الإضافية اللي بتعدل سلوك القالب أو بتضيف له وظائف جديدة. تسجيل مواضع القوائم هو واحد من الحاجات دي. تقدر تسجل أي عدد من القوائم عايزه، بس المهم تدي كل مكان اسم واضح ووصف مفهوم عشان تعرف تستخدمه بعد كده. ده بيساعد في تنظيم إدارة قوائم الموقع الإلكتروني بشكل أفضل.
تسجيل مواضع القوائم في القالب بيخليك تتحكم بشكل كامل في أماكن ظهور القوائم، وده بيفتح لك أبواب كتير للتخصيص والتنظيم، وبيخلي تجربة المستخدم أفضل بكتير لما يلاقي اللي بيدور عليه بسهولة.
| اسم الموضع المسجل | وصف الموضع | مكان الظهور المتوقع |
|---|---|---|
header-menu |
القائمة الرئيسية في أعلى الصفحة | شريط الترويسة |
footer-menu |
قائمة الروابط السفلية | أسفل الصفحة |
sidebar-menu |
قائمة جانبية | الشريط الجانبي |
عرض القوائم في موقع ووردبريس برمجيًا
بعد ما سجلنا أماكن القوائم في ملف functions.php باستخدام register_nav_menus، الخطوة الجاية هي إننا نعرض القوائم دي في الواجهة الأمامية للموقع. هنا بيجي دور الدالة wp_nav_menu(). الدالة دي هي اللي بتخليك تحط القائمة اللي أنشأتها في المكان اللي حددته في القالب بتاعك.
الدالة wp_nav_menu لعرض القوائم
الدالة wp_nav_menu() هي الأداة الأساسية لعرض القوائم في ووردبريس برمجيًا. ببساطة، بتستدعيها في ملف القالب بتاعك (زي header.php أو footer.php) وبتمرر لها بعض الإعدادات عشان تحدد أي قائمة هتتعرض وفين بالظبط.
الشكل العام للدالة بيكون كده:
<?php
wp_nav_menu( array( 'theme_location' => 'primary-menu' ) );
?>
هنا، theme_location هو المفتاح اللي بنقول بيه لووردبريس إحنا عايزين نعرض القائمة اللي اتسجلت باسم ‘primary-menu’. لو ما حددتش theme_location، ووردبريس هيحاول يعرض أول قائمة يلاقيها.
التحقق من وجود قائمة قبل عرضها
مهم جدًا إنك تتأكد إن فيه قائمة فعلاً متخصصة للمكان اللي بتعرض فيه قبل ما تستدعي الدالة wp_nav_menu(). ده بيمنع ظهور أخطاء أو مساحات فاضية لو المستخدم ما أنشأش قائمة للمكان ده. بنعمل ده باستخدام دالة has_nav_menu():
<?php
if ( has_nav_menu( 'primary-menu' ) ) {
wp_nav_menu( array( 'theme_location' => 'primary-menu' ) );
}
?>
بهذه الطريقة، القائمة هتظهر بس لو فيه قائمة مخصصة للموقع ‘primary-menu’ متسجلة وموجودة.
تحديد مكان عرض القائمة باستخدام theme_location
زي ما شفنا، theme_location هو أهم بارامتر في الدالة wp_nav_menu(). هو اللي بيربط القائمة اللي بتنشئها في لوحة تحكم ووردبريس بالمكان اللي بتحدده في الكود بتاع القالب. لما سجلنا القوائم باستخدام register_nav_menus في ملف functions.php، إحنا عرفنا أماكن (مواقع) للقوائم دي. الـ theme_location لازم يتطابق مع اسم المكان اللي سجلته.
مثلاً، لو سجلت مكانين للقوائم:
register_nav_menus( array(
'primary' => __( 'القائمة الرئيسية', 'text_domain' ),
'footer' => __( 'قائمة التذييل', 'text_domain' )
) );
يبقى عشان تعرض القائمة الرئيسية، هتستخدم:
<?php
if ( has_nav_menu( 'primary' ) ) {
wp_nav_menu( array( 'theme_location' => 'primary' ) );
}
?>
ولعرض قائمة التذييل:
<?php
if ( has_nav_menu( 'footer' ) ) {
wp_nav_menu( array( 'theme_location' => 'footer' ) );
}
?>
ده بيضمن تنظيم قوائم الموقع في ووردبريس بشكل صحيح وبيخليك تتحكم في مكان ظهور كل قائمة على حدة، وده جزء مهم من تنظيم قوائم التنقل في ووردبريس بشكل احترافي.
استخدام wp_nav_menu مع التحقق من وجود القائمة بيخلي موقعك شغال كويس حتى لو المستخدم ما عملش قائمة في كل الأماكن المتاحة. ده بيوفر تجربة أفضل وبيمنع أي مشاكل شكلية.
باختصار، الدالة wp_nav_menu() هي مفتاحك لعرض القوائم اللي بتنشئها في لوحة تحكم ووردبريس في الأماكن المخصصة لها داخل قالبك. فهم كيفية استخدامها مع theme_location والتحقق من وجود القائمة بيخليك تتحكم بشكل كامل في هيكل قوائم موقعك.
تخصيص وتنسيق قوائم ووردبريس
بعد ما عرفنا إزاي نسجل مواضع القوائم ونعرضها، نيجي بقى للجزء الممتع وهو التخصيص والتنسيق. ده اللي بيخلي القائمة شكلها حلو ومتناسق مع باقي تصميم موقعك، وبيساعد الزوار يلاقوا اللي بيدوروا عليه بسهولة. تخصيص شريط القوائم ووردبريس بشكل احترافي بيفرق كتير في تجربة المستخدم.
استخدام الكلاسات والمعرفات الافتراضية
ووردبريس بيوفر لنا شوية كلاسات ومعرفات جاهزة بنقدر نستخدمها عشان ننسق القوائم. لما بتستخدم الدالة wp_nav_menu()، بيتم إضافة وسم <ul> للعناصر بتاعت القائمة، وجواها عناصر <li> لكل رابط. كل عنصر من دول بياخد كلاسات ومعرفات معينة. مثلاً، القائمة نفسها ممكن تاخد id="menu"، وكل عنصر فيها ممكن ياخد كلاس زي menu-item.
دي شوية أمثلة للكلاسات اللي ممكن تلاقيها:
| الكلاس/المعرف | الوصف |
|---|---|
menu-item |
يُطبق على كل عنصر في القائمة. |
menu-item-has-children |
يُطبق على العناصر اللي ليها قوائم فرعية. |
current-menu-item |
يُطبق على العنصر النشط حاليًا في القائمة. |
تقدر تستخدم الكلاسات دي في ملف الـ CSS بتاعك عشان تغير الألوان، الخطوط، الهوامش، أو أي حاجة تانية.
إضافة كلاسات CSS مخصصة لعناصر القائمة
أحيانًا الكلاسات الافتراضية مش بتكون كافية عشان توصل للشكل اللي أنت عايزه. هنا بيجي دور إنك تضيف كلاسات CSS مخصصة لعناصر معينة في القائمة. ده بيخليك تتحكم في كل عنصر لوحده. عشان تعمل كده، وانت بتعدل القائمة من لوحة التحكم، هتلاقي خيار اسمه “خيارات العرض” (Display Options) فوق على اليمين. فعل منه “فئات CSS” (CSS Classes). بعد كده، كل عنصر في القائمة هيظهر له حقل تقدر تكتب فيه اسم الكلاس اللي أنت عايزه.
مثلاً، لو عندك زرار “اتصل بنا” وعايزه يظهر بلون مختلف، ممكن تضيف له كلاس اسمه contact-button وتنسقه في الـ CSS.
تعديل الكلاسات الافتراضية باستخدام الفلاتر
لو مش عايز تعدل القائمة من لوحة التحكم أو عايز تعمل تغييرات برمجية أكتر، ممكن تستخدم الفلاتر. فيه فلتر اسمه nav_menu_css_class بيسمح لك تعدل الكلاسات اللي بتضاف لعناصر القائمة. ده مفيد لو عايز تضيف كلاسات بناءً على شروط معينة، زي مثلاً لو المستخدم مسجل دخوله أو لو الصفحة دي صفحة منتج.
ده مثال بسيط إزاي تستخدم الفلتر ده في ملف functions.php:
function my_custom_menu_classes($classes, $item, $args) {
if ($item->title == 'About Us') {
$classes[] = 'about-us-link';
}
return $classes;
}
add_filter('nav_menu_css_class', 'my_custom_menu_classes', 10, 3);
الفلتر ده بيضيف كلاس about-us-link لأي عنصر في القائمة عنوانه “About Us”. تخصيص قوائم ووردبريس للمستخدمين بيحتاج شوية دقة في التفاصيل دي.
التنسيق الجيد للقوائم مش بس بيخلي الموقع شكله حلو، ده كمان بيساعد الزوار يلاقوا اللي بيدوروا عليه بسرعة. لما القائمة تكون واضحة وسهلة الاستخدام، ده بيقلل نسبة خروج الزوار من الموقع وبيخليهم يقضوا وقت أطول فيه. فكر فيها كأنها خريطة للموقع، كل ما كانت الخريطة أوضح، كل ما كان أسهل للناس توصل لوجهتها.
نصائح لإنشاء قائمة ووردبريس احترافية
![]()
بعد ما عرفنا كيف نسجل مواضع القوائم ونعرضها، نيجي للجزء المهم وهو إزاي نخلي القائمة دي شكلها حلو ومفيدة للزوار. الموضوع مش بس شكل، ده كمان بيأثر على تجربة المستخدم وممكن يقلل نسبة الارتداد عندك.
وضوح القائمة الرئيسية ومكانها
أول حاجة، لازم القائمة الرئيسية تكون واضحة وسهل يلاقيها أي حد يزور موقعك. مكانها المتوقع غالبًا بيكون فوق الصفحة، سواء في النص أو على اليمين أو الشمال. لو حبيت تميزها شوية، استخدم ألوان أو تنسيقات بس خلي بالك إنها تكون متناسقة مع باقي تصميم الموقع. متخليش القائمة تبان غريبة أو منفصلة عن باقي العناصر.
استخدام الألوان والتنسيقات بحكمة
التنسيق مش بس عشان الشكل، ده كمان عشان الوضوح. ممكن تستخدم ألوان مختلفة لعناصر القائمة أو تضيف كلاسات CSS مخصصة عشان تتحكم في شكل كل عنصر لوحده. بس خليك حذر، كتر الألوان أو التنسيقات المعقدة ممكن تشتت الزائر بدل ما تساعده. الهدف هو سهولة الاستخدام.
تحسين تجربة المستخدم عبر القوائم
القائمة الاحترافية بتساعد الزائر يوصل للي هو عايزه بسرعة. فكر في الزائر وهو بيدور على حاجة معينة، هل القائمة بتساعده ولا بتعقده؟
- اجعل الروابط واضحة ومباشرة: استخدم أسماء واضحة للعناصر في القائمة.
- لا تضع عدد كبير من العناصر: القائمة الطويلة جدًا ممكن تكون مربكة.
- اختبر القائمة على أجهزة مختلفة: تأكد إنها بتظهر بشكل كويس على الموبايل والتابلت.
تذكر دائمًا أن القائمة هي واجهة موقعك الأولى للزائر، فاجعلها سهلة الاستخدام وجذابة بصريًا قدر الإمكان. هذا سيشجعه على استكشاف المزيد من محتوى موقعك.
الخلاصة
في النهاية، إنشاء قوائم مخصصة في ووردبريس مش بس بيخلي موقعك شكله أحسن، ده كمان بيساعد الزوار يلاقوا اللي بيدوروا عليه بسهولة. سواء كنت بتشتغل على قالب جديد أو بتعدل قالب موجود، تذكر إن القوائم دي جزء مهم من تجربة المستخدم. استخدمنا هنا أكواد بسيطة عشان نسجل أماكن القوائم ونعرضها وننسقها، ودي كلها خطوات بتخليك تتحكم أكتر في شكل موقعك ووظيفته. جرب بنفسك وشوف إزاي القوائم دي ممكن تفرق مع موقعك.
