إخلاء المسئولية: أنا جديد تمامًا على WP.
أنا أستخدم موضوع إطار عمل Starkers HTML5 . في functions.php
، أرى هذا الرمز:
function starkers_widgets_init() {
// Area 1, located at the top of the sidebar.
register_sidebar( array(
'name' => __( 'Primary Widget Area', 'starkers' ),
'id' => 'primary-widget-area',
'description' => __( 'The primary widget area', 'starkers' ),
'before_widget' => '<li>',
'after_widget' => '</li>',
'before_title' => '<h3>',
'after_title' => '</h3>',
) );
// Area 3, located in the footer. Empty by default.
register_sidebar( array(
'name' => __( 'First Footer Widget Area', 'starkers' ),
'id' => 'first-footer-widget-area',
'description' => __( 'The first footer widget area', 'starkers' ),
'before_widget' => '<li>',
'after_widget' => '</li>',
'before_title' => '<h3>',
'after_title' => '</h3>',
) );
// ... more calls to register_sidebar() ...
}
وفي footer.php
أرى هذا الكود:
<?php get_sidebar( 'footer' ); ?>
لا أفهم كيف يعرف get_sidebar()
كيفية التعامل مع وسيطة السلسلة هذه والعثور على الحاجيات المناسبة التي تم تعريفها بواسطة register_sidebar()
. في مقتطف jobs.php الذي نشرته أعلاه. لا يوجد أي ذكر لـ "تذييل الصفحة" باستثناء الخصائص name
و id
و description
. ولكن يبدو غريبا بالنسبة لي أن get_sidebar()
ستبحث عن "تذييل" داخل تلك الخصائص.
هل هذا منطقي ما أطلبه؟ هل هناك قطعة مفقودة؟
الأسباب التي أطلبها هي - أود معرفة المزيد عن بنية WP - أود أن أكون قادرًا على تحديد مساحة عنصر واجهة مستخدم مخصصة ومعرفة كيفية عرضها على صفحة محددة.
شكرا للطن.
يمكنك فقط الاتصال get_sidebar()
من index.php
ويقوم بتحميل ملف السمة sidebar.php
.
register_sidebar()
، من ناحية أخرى ، يتم استخدامها لعناصر واجهة المستخدم حيث تريد الإضافات وما شابه ذلك إضافة محتوى بشكل ديناميكي في ملف sidebar.php
الخاص بك إذا كان الموضوع الخاص بك يدعمه.
في حالتك ، هل هناك ملف يسمى sidebar-footer.php
في دليل المظهر الخاص بك؟
أنا لم أزعجك أبدًا من get_sidebar()
. بدلاً من ذلك ، استخدم فقط dynamic_sidebar()
. كنت أسميها مثل هذا:
dynamic_sidebar('first-footer-widget-area');
وهذا يعتني الشريط الجانبي بأكمله. لا مزيد من الادراج الملف ، لا مزيد من المجلدات موضوع تشوش. إذا كنت أرغب في امتلاك 5 أشرطة جانبية مختلفة ، فلن تضيف أي ملفات ، بل وظائف إضافية فقط في functions.php
.
get_sidebar('name')
يحصل على قالب الشريط الجانبي للاسم sidebar-name.php
.
داخل sidebar-name.php ، يوجد HTML للشريط الجانبي ، ومكالمة إلى dynamic_sidebar('some-name-hopefully-the-same')
، وهو المكان الذي ستذهب إليه عناصر واجهة المستخدم.
register_sidebar(array(name=>'some-name-hopefully-the-same', ...))
هو ما يسمح لـ dynamic_sidebar بالعمل.
كما ترى ، get_sidebar(templatename)
للاستخدام مع قوالب الشريط الجانبي. إذا لم تكن بحاجة إليهم ، يمكنك فقط الاتصال بـ dynamic_sidebar(sidebarname)
مباشرة من نسختك.
get_sidebar('footer')
يحاول تحميل sidebar-footer.php
من السمة النشطة. يوفر Starkers هذا الملف. تحقق من starkers/sidebar-footer.php
والأشياء يجب أن تصبح واضحة.