Tarkib Marketing

PHP: Quyidagi sahifalarni ro'yxatlash uchun qisqa kod yaratish uchun WordPress API-dan foydalaning

Biz hozirda korporativ mijoz uchun juda murakkab dastur ustida ishlayapmiz. Sayt WordPress-da qurilgan, ammo bir necha qo'ng'iroq va hushtak bor. Ko'pincha, men ushbu turdagi ishlarni bajarayotganda, keyinchalik boshqa saytlarda repurpozitsiya qilish uchun maxsus kodni saqlashni yaxshi ko'raman. Bunday holda, men buni juda foydali funktsiya deb o'yladim, uni dunyo bilan bo'lishishni xohladim. Biz ishlatmoqdamiz Avada WordPress mavzusi Fusion Page Builder bilan ota-ona mavzusi sifatida va bizning bolalarimiz mavzusida biroz maxsus kodlarni joylashtirish.

WordPress allaqachon API-da wp_list_pages va get_pages kabi pastki sahifalarni ro'yxatlash uchun ishlatilishi mumkin bo'lgan ikkita funktsiyaga ega. Muammo shundaki, agar siz bir qator ma'lumotlarga ega bo'lgan ro'yxatni dinamik ravishda yaratmoqchi bo'lsangiz, ular etarli ma'lumotni qaytarishmaydi.

Ushbu mijoz uchun ular ish tavsiflarini joylashtirmoqchi va ish joylari ro'yxati avtomatik ravishda nashr etilgan sanasi bo'yicha kamayib boradigan tartibda tuzilishini xohladilar. Shuningdek, ular sahifaning bir qismini ko'rsatishni xohlashdi.

Shunday qilib, avval sahifa shabloniga parcha yordamini qo'shishimiz kerak edi. Functions.php-da ularning mavzusi uchun biz quyidagilarni qo'shdik:

add_post_type_support ('sahifa', 'ko'chirma');

Keyin, biz subpages ro'yxatini, ularga havolalarni va ular uchun parchani yaratadigan maxsus qisqa kodni ro'yxatdan o'tkazishimiz kerak edi. Buni qiling, biz foydalanishimiz kerak WordPress Loop. Functions.php-da biz quyidagilarni qo'shdik:

// Ro'yxat funktsiyasidagi pastki sahifalarni ro'yxati dknm_list_child_pages ($ atts, $ content = "") {global $ post; $ atts = shortcode_atts (array ('ifempty' => 'Yozuv yo'q', 'aclass' => ''), $ atts, 'list_subpages'); $ args = array ('post_type' => 'sahifa', 'posts_per_page' => -1, 'post_parent' => $ post-> ID, 'orderby' => 'published_date', 'order' => 'DESC' ,); $ parent = yangi WP_Query ($ args); if ($ parent-> have_posts ()) {$ string. = $ content. ' '; while ($ parent-> have_posts ()): $ parent-> the_post (); $ string. = ' '.get_the_title ().' '; if (has_excerpt ($ post-> ID)) {$ string. = '-' .get_the_excerpt (); } $ string. = ' '; tugaydi; } boshqa {$ string = ' '. $ atts [' ifempty '].' '; } wp_reset_postdata (); return $ string; } add_shortcode ('list_subpages', 'dknm_list_child_pages');

Endi yorliq va parcha bilan bolalar sahifalarini ko'rsatish uchun qisqa kodni sayt bo'ylab amalga oshirish mumkin. Foydalanish:

[list_subpages aclass = "button" ifempty = "Kechirasiz, hozirda bizda hech qanday ochilish joyi yo'q."] Ishlar ro'yxati [/ list_subpages]

Natijada, nashr etilgan ishlarning chiroyli, toza tartibsiz ro'yxati, bu ularning martaba sahifasi ostidagi bolalar sahifalari.

Agar ish joylari bo'lmagan bo'lsa (bolalar sahifalari yo'q), u quyidagilarni e'lon qiladi:

Kechirasiz, hozirda bizda biron bir ish joyi mavjud emas.

Agar ish joylari (bolalar sahifalari) chop etilgan bo'lsa, u quyidagilarni e'lon qiladi:

Ishlar ro'yxati:

Douglas Karr

Douglas Karr ning CMO hisoblanadi OpenINSIGHTS va asoschisi Martech Zone. Duglas o'nlab muvaffaqiyatli MarTech startaplariga yordam berdi, Martechni sotib olish va investitsiyalarida 5 milliard dollardan ortiq mablag'ni sinchkovlik bilan tekshirishda yordam berdi va kompaniyalarga savdo va marketing strategiyalarini amalga oshirish va avtomatlashtirishda yordam berishda davom etmoqda. Duglas xalqaro miqyosda tan olingan raqamli transformatsiya va MarTech mutaxassisi va ma'ruzachisi. Duglas, shuningdek, Dummie's qo'llanmasi va biznes rahbariyati kitobining nashr etilgan muallifi.

Haqida Maqolalar

Yuqoriga qaytish tugmasi
yaqin

Adblock aniqlandi

Martech Zone Sizga ushbu kontentni hech qanday to'lovsiz taqdim eta oladi, chunki biz saytimizni reklama daromadlari, sheriklik havolalari va homiylik orqali monetizatsiya qilamiz. Saytimizni ko'rayotganingizda reklama blokeringizni olib tashlasangiz, biz juda minnatdormiz.