ستساعدك المقالة التالية: الحد من المشاركات في أداة الأرشيف
لقد أوضحت لك كيفية إنشاء عنصر واجهة مستخدم مخصص في منشور سابق. ولكن ماذا عن إضافة عنصر واجهة مستخدم “أرشيفات” إضافي والذي لن يسرد آخر 3 سنوات (إذا كنت موجودًا في هذا الوقت الطويل) في نموذج الشهر الذي يمتد إلى أسفل الشريط الجانبي بالكامل؟
حسنًا ، دعنا نلقي نظرة على الكود الأصلي الموجود في ملف widgets.php في المجلد ./wp-includes/.
<؟ php / ** * عرض ودجة المحفوظات. * *since 2.2.0 * *param array $ args Widget. * / function wp_widget_archives ($ args) {extract ($ args)؛ خيارات $ = get_option ('widget_archives') ؛ $ c = خيارات $['count'] ؟ '1': '0' ؛ $ d = خيارات $['dropdown'] ؟ '1': '0' ؛ $ title = فارغ ($ options['title'])؟ __ ("المحفوظات"): apply_filters ('widget_title'، $ options['title']) ؛ صدى $ before_widget؛ صدى $ before_title. العنوان. $ after_title؛ if ($ d) {؟> <؟ php} else {؟>
- <؟ php wp_get_archives ("type = Monthly & show_post_count = $ c")؛؟>
<؟ php} echo $ after_widget؛} / ** * نموذج خيارات عناصر واجهة استخدام أرشيفات العرض والعملية. * *since 2.2.0 * / function wp_widget_archives_control () {$ options = $ newoptions = get_option ('widget_archives') ؛ if (isset ($ _ POST["archives-submit"])) {$ newoptions['count'] = مجموعة ($ _ POST['archives-count']) ؛ $ newoptions['dropdown'] = مجموعة ($ _ POST['archives-dropdown']) ؛ $ newoptions['title'] = strip_tags (خطوط مائلة ($ _ POST["archives-title"])) ؛ } if ($ options! = $ newoptions) {$ options = $ newoptions؛ update_option ('widget_archives'، $ options) ؛ } عدد دولارات = خيارات دولار['count'] ؟ 'محدد = "محدد":' '؛ القائمة المنسدلة بالدولار = خيارات الدولار['dropdown'] ؟ 'محدد = "محدد":' '؛ العنوان $ = attribute_escape ($ options['title']) ؛ ؟>
<؟ php}؟>
بسيطا بما فيه الكفاية؟ أم لا..
على أي حال ، دعونا نضيف فقط بعض الأشياء وتغييرها. ثم ستضيف الكود النهائي إلى ملف jobs.php الخاص بك.
حسنًا ، بدءًا من الوظيفة الأولى: wp_widget_archive وأعد التسمية إلى widget_archive_limit
يجب أن تبدو هكذا الآن:
الدالة widget_archives_limit ($ args) {
ثم تحت هذا الخط:
$ title = فارغ ($ options[‘title’])؟ __ (“المحفوظات”): apply_filters (‘widget_title’، $ options[‘title’]) ؛
يضيف:
الحد $ = فارغ ($ options[‘limit’])؟ __ (“الحد”): application_filters (“widget_limit” ، خيارات $[‘limit’]) ؛
في هذا الخط:
<؟ php wp_get_archives ("type = Monthly & format = option & show_post_count = $ c & limit = $ limit")؛ ؟>
لقد أضفنا في & Limit = الحد بالدولار. الشيء نفسه ينطبق على wp_get_archives الثاني:
<؟ php wp_get_archives ("type = Monthly & show_post_count = $ c & limit = $ limit")؛ ؟>
أضف في نهاية هذا الرمز:
wp_register_sidebar_widget (‘archives limits’، __ (‘Archive Limit’) ، ‘widget_archives_limit’ ، $ widget_ops) ؛
يجب أن تبدو الكود بالكامل كما يلي:
الدالة widget_archives_limit ($ args) {extract ($ args)؛ خيارات $ = get_option (‘widget_archives’) ؛ $ c = خيارات $[‘count’] ؟ ‘1’: ‘0’ ؛ $ d = خيارات $[‘dropdown’] ؟ ‘1’: ‘0’ ؛ $ title = فارغ ($ options[‘title’])؟ __ (“المحفوظات”): apply_filters (‘widget_title’، $ options[‘title’]) ؛ الحد $ = فارغ ($ options[‘limit’])؟ __ (“الحد”): application_filters (“widget_limit” ، خيارات $[‘limit’]) ؛ صدى $ before_widget؛ صدى $ before_title. العنوان. $ after_title؛ if ($ d) {؟> <؟ php} else {؟>
- <؟ php wp_get_archives (" type = Monthly & show_post_count = $ c & limit = $ limit ")؛؟>
<؟ php} echo $ after_widget؛} wp_register_sidebar_widget ('archives limits'، __ ('Archive Limit')، 'widget_archives_limit'، $ widget_ops)؛
هذا يعتني بالقطعة بنفسه ، نحتاج الآن إلى إنشاء عناصر التحكم. ابحث مرة أخرى عن الوظيفة الثانية وقم بتغيير wp_widget_archive_control إلى widget_archives_limit_control
ابحث عن هذا الخط:
$ newoptions[‘title’] = strip_tags (خطوط مائلة ($ _ POST[“archives-title”])) ؛
وأضف هذا السطر أدناه:
$ newoptions[‘limit’] = strip_tags (خطوط مائلة ($ _ POST[“archives-limit”])) ؛
ثم ابحث عن هذا الخط:
العنوان $ = attribute_escape ($ options[‘title’]) ؛
وأضف هذا السطر أدناه:
الحد $ = attribute_escape ($ options[‘limit’]) ؛
أخيرًا ابحث عن هذا الخط:
وأضف هذا السطر أدناه:
يجب أن يبدو الرمز كما يلي:
الدالة widget_archives_limit_control () {$ options = $ newoptions = get_option (‘widget_archives’) ؛ إذا (مجموعة ($ _ POST[“archives-submit”])) {$ newoptions[‘count’] = مجموعة ($ _ POST[‘archives-count’]) ؛ $ newoptions[‘dropdown’] = مجموعة ($ _ POST[‘archives-dropdown’]) ؛ $ newoptions[‘title’] = strip_tags (خطوط مائلة ($ _ POST[“archives-title”])) ؛ $ newoptions[‘limit’] = strip_tags (خطوط مائلة ($ _ POST[“archives-limit”])) ؛ } if ($ options! = $ newoptions) {$ options = $ newoptions؛ update_option (‘widget_archives’، $ options) ؛ } عدد دولارات = خيارات دولار[‘count’] ؟ ‘محدد = “محدد”:’ ‘؛ القائمة المنسدلة بالدولار = خيارات الدولار[‘dropdown’] ؟ ‘محدد = “محدد”:’ ‘؛ العنوان $ = attribute_escape ($ options[‘title’]) ؛ الحد $ = attribute_escape ($ options[‘limit’]) ؛ ؟>