الأخبار التكنولوجية والاستعراضات والنصائح!

الموضوع الجديد في WPCult

ستساعدك المقالة التالية: الموضوع الجديد في WPCult

لقد أوضحت لك كيفية إنشاء عنصر واجهة مستخدم مخصص في منشور سابق. ولكن ماذا عن إضافة عنصر واجهة مستخدم “أرشيفات” إضافي والذي لن يسرد آخر 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’]) ؛ ؟>


الكود النهائي:

/ ** * عرض أرشيفات القطعة. * *since 2.2.0 * *param array $ args Widget. * / function 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 limit'، __ ('Archives Limit')، 'widget_archives_limit'، $ widget_ops)؛ / ** * نموذج خيارات عنصر واجهة المستخدم لعرض ومعالجة المحفوظات. * *since 2.2.0 * / function widget_archives_limit_control ( ) {$ options = $ newoptions = get_option ('widget_archives') ؛ إذا (isset ($ _ 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']) ؛ ؟>


مثل تحميل …