PHP: උප පිටු ලැයිස්තුගත කිරීම සඳහා කෙටි කේතයක් තැනීමට වර්ඩ්ප්රෙස් API භාවිතා කරන්න
අපි දැන් ව්යවසාය සේවාදායකයකු සඳහා තරමක් සංකීර්ණ ක්රියාත්මක කිරීමක් සඳහා කටයුතු කරමින් සිටිමු. වෙබ් අඩවිය වර්ඩ්ප්රෙස් හි ඉදිකරන නමුත් සීනුව හා විස්ල් ටොන් ගණනක් ඇත. බොහෝ විට, මම මේ ආකාරයේ වැඩ කරන විට, වෙනත් වෙබ් අඩවි වල නැවත ප්රතිනිර්මාණය කිරීම සඳහා අභිරුචි කේතය සුරැකීමට මම කැමතියි. මේ අවස්ථාවේ දී, එය එතරම් ප්රයෝජනවත් කාර්යයක් යැයි මම සිතුවෙමි, එය ලෝකය සමඟ බෙදා ගැනීමට මට අවශ්ය විය. අපි පාවිච්චි කරන්නේ ෆියුෂන් පිටු තනන්නා සමඟ ඇවාඩා වර්ඩ්ප්රෙස් තේමාව මව් තේමාවක් ලෙස, සහ අපගේ ළමා තේමාව තුළ අභිරුචි කේත ටිකක් යෙදවීම.
වර්ඩ්ප්රෙස් දැනටමත් එහි API තුළ කාර්යයන් කිහිපයක් ඇති අතර එය wp_list_pages සහ get_pages වැනි උප පිටු ලැයිස්තුගත කිරීමට භාවිතා කළ හැකිය. ගැටළුව වන්නේ ඔබ තොරතුරු සමූහයක් සමඟ ගතිකව ලැයිස්තුවක් නිර්මාණය කිරීමට බලාපොරොත්තු වන්නේ නම් ඔවුන් ප්රමාණවත් තොරතුරු ලබා නොදීමයි.
මෙම ගනුදෙනුකරු සඳහා, ඔවුන්ට රැකියා විස්තර පළ කිරීමට අවශ්ය වූ අතර ඔවුන්ගේ ප්රකාශන දිනය වන විට රැකියා අවස්ථා ලැයිස්තුව ස්වයංක්රීයව බැසීමේ පිළිවෙලට ජනනය වේ. පිටුවේ උපුටනයක් ප්රදර්ශනය කිරීමට ද ඔවුන්ට අවශ්ය විය.
ඉතින්, පළමුව, අපට පිටු අච්චුවට උපුටා දැක්වීම් සහාය එක් කිරීමට සිදු විය. ඔවුන්ගේ තේමාව සඳහා functions.php හි, අපි එකතු කළේ:
add_post_type_support ('පිටුව', 'උපුටා ගැනීම');
ඉන්පසුව, අපට උපසිරැසි ලැයිස්තුවක්, ඒවාට සබැඳි සහ ඒවා සඳහා උපුටා ගැනීමක් ජනනය කරන අභිරුචි කෙටි කේතයක් ලියාපදිංචි කිරීමට අවශ්ය විය. මෙය කරන්න, අපි භාවිතා කළ යුතුයි වර්ඩ්ප්රෙස් ලූප්. Function.php හි, අපි එකතු කළේ:
// ලැයිස්තු ශ්රිතයක උප පිටු ලැයිස්තුගත කරන්න dknm_list_child_pages ($ atts, $ content = "") {ගෝලීය $ post; $ atts = shortcode_atts (අරාව ('ifempty' => 'වාර්තා නැත', 'aclass' => ''), $ atts, 'list_subpages'); $ args = array ('post_type' => 'page', 'posts_per_page' => -1, 'post_parent' => $ post-> ID, 'orderby' => 'public_date', 'order' => 'DESC' ,); $ මාපිය = නව WP_Query (gs args); if ($ parent-> have_posts ()) {$ string. = $ content. ' '; අතර ($ parent-> have_posts ()): $ parent-> the_post (); $ string. = ' '.get_the_title ().' '; if (has_excerpt ($ post-> ID)) {$ string. = '-' .get_the_excerpt (); } $ string. = ' '; මේ අතර; } else {$ string = ' '. $ atts [' ifempty '].' '; } wp_reset_postdata (); ආපසු $ string; } add_shortcode ('list_subpages', 'dknm_list_child_pages');
දැන්, කෙටි පිටුව කේතය වෙබ් අඩවිය පුරා ක්රියාත්මක කර ළමා පිටු සබැඳියක් හා උපුටා ගැනීමක් පෙන්විය හැකිය. භාවිතය:
[list_subpages aclass = "button" ifempty = "කණගාටුයි, අපට දැනට රැකියා අවස්ථා නොමැත."] රැකියා ලැයිස්තුව [/ list_subpages]
මෙහි ප්රති result ලය වනුයේ ඔවුන්ගේ වෘත්තීය පිටුව යටතේ ළමා පිටු වන ප්රකාශිත රැකියා පිළිබඳ ලස්සන, පිළිවෙලට සකස් නොකළ ලැයිස්තුවකි.
රැකියා ප්රකාශයට පත් නොකළේ නම් (ළමා පිටු නොමැත), එය ප්රකාශයට පත් කරනු ඇත:
කණගාටුයි, අපට දැනට රැකියා අවස්ථා නොමැත.
රැකියා ප්රකාශයට පත් කර ඇත්නම් (ළමා පිටු), එය ප්රකාශයට පත් කරනු ඇත:
රැකියා ලැයිස්තුව:
- නවතම ළමා පිටුව - ළමා පිටුවෙන් උපුටා ගැනීමකි
- ඊළඟ ළමා පිටුව - ළමා පිටුවෙන් උපුටා ගැනීමකි
- ඊළඟ ළමා පිටුව - ළමා පිටුවෙන් උපුටා ගැනීමකි