ПХП: Користите ВордПресс АПИ за изградњу кратког кода за листање подстраница
Тренутно радимо на прилично сложеној имплементацији за клијента у предузећу. Сајт је направљен у ВордПресс-у, али има мноштво звука и звиждука. Често када радим ову врсту посла волим да сачувам прилагођени код за касније намене на другим веб локацијама. У овом случају сам мислио да је то тако корисна функција, желео сам да је поделим са светом. Користимо Тема Авада ВордПресс са Фусион Паге Буилдер-ом као надређену тему и примењујући прилично прилагођеног кода у нашу подређену тему.
ВордПресс већ има неколико функција у свом АПИ-ју које се могу користити за навођење подстраница, попут вп_лист_пагес и гет_пагес. Проблем је у томе што они не враћају довољно података ако се надате да ћете динамички направити листу са гомилом информација.
За овог купца желели су да објаве описе послова и да се списак радних места аутоматски генерише у опадајућем редоследу до датума објављивања. Такође су желели да прикажу одломак странице.
Дакле, прво смо морали да додамо извод за подршку шаблону странице. У фунцтионс.пхп за њихову тему смо додали:
адд_пост_типе_суппорт ('страница', 'одломак');
Затим смо морали да региструјемо прилагођени кратки код који ће генерисати листу подстраница, везе до њих и извод за њих. Урадите то, морамо да користимо ВордПресс Лооп. У фунцтионс.пхп смо додали:
// Листање подстраница у функцији листе дкнм_лист_цхилд_пагес ($ аттс, $ цонтент = "") {глобал $ пост; $ аттс = схортцоде_аттс (низ ('ифемпти' => 'Нема записа', 'ацласс' => ''), $ аттс, 'лист_субпагес'); $ аргс = арраи ('пост_типе' => 'паге', 'постс_пер_паге' => -1, 'пост_парент' => $ пост-> ИД, 'ордерби' => 'објави_дате', 'ордер' => 'ДЕСЦ' ,); $ надређени = нови ВП_Куери ($ аргс); иф ($ парент-> хаве_постс ()) {$ стринг. = $ цонтент. ' '; вхиле ($ родитељ-> има_постове ()): $ родитељ-> пост_ (); $ стринг. = ' '.гет_тхе_титле ().' '; иф (хас_екцерпт ($ пост-> ИД)) {$ стринг. = '-' .гет_тхе_екцерпт (); } $ стринг. = ' '; ендовер; } остало {$ стринг = ' '. $ аттс [' ифемпти '].' '; } вп_ресет_постдата (); ретурн $ стринг; } адд_схортцоде ('лист_субпагес', 'дкнм_лист_цхилд_пагес');
Сада се кратки код може применити на целој веб локацији да би приказао подређене странице са везом и изводом. Употреба:
[лист_субпагес ацласс = "буттон" ифемпти = "Жао нам је, тренутно немамо ниједно отворено радно место."] Списак послова [/ лист_субпагес]
Резултат је лепа, чиста неуређена листа објављених послова, а то су подређене странице испод њихове странице каријере.
Ако није било објављених послова (нема подређених страница), објавит ће:
Жао нам је, тренутно немамо отворених радних места.
Ако су објављени послови (подређене странице), објавит ће:
Списак послова:
- Најновија дечја страница - Извод из странице детета
- Следећа подређена страница - Извод из странице детета
- Следећа подређена страница - Извод из странице детета