Pandify - porady jak projektować strony internetowe, darmowe materiały, liczne inspiracje web design.

Trzy funkcje Advanced Custom Fields, których mogliście nie znać

Artykuł pojawił się 18.08.2017, autorem jest Maciek Palmowski i wpadł do kategorii WordPress

Advanced Custom Fields jest moim ulubionym pluginem – w bardzo prosty sposób poszerza możliwości WordPress’a. Najczęściej używamy go jednak tylko do dodawania dodatkowych pól – a ACF ma kilka asów w rękawie.

Synchronizacja pól

Każdy, kto utrzymuje stronę z licznymi grupami pól, w pewnym momencie natrafia na problem związany z kwestią synchronizacji pól pomiędzy wersją developerską oraz produkcyjną. Można na moment usunąć wszystkie pola, a potem wgrać nowe, ale na dłuższą metę jest to po prostu upierdliwe.

Na szczęście Advanced Custom Fields ma bardzo sympatyczny mechanizm zapisywania pól jako JSON oraz ich synchronizacji.

Od teraz, za każdym razem kiedy zapiszemy pola ACF, w katalogu acf-json pojawi się plik json wszystkich grup pól.

Kiedy już wypchniemy nasz motyw na produkcję, musimy jeszcze wejść do “Grupy pól” i zrobić sync wszystkich pól.

Więcej informacji na:
https://www.advancedcustomfields.com/resources/local-json/
https://www.advancedcustomfields.com/resources/synchronized-json/

Formularz na stronie

Najczęściej ACF używamy w panelu admina, ale można go także wykorzystać na froncie. Oto prosty przykład, który pozwoli nam stworzyć formularz do tworzenia nowych eventów – jako, że nie do końca ufamy gościom naszej strony to najpierw będą one zapisywane jako szkice.

Ten krótki kod załatwia nam sprawę. Warto jednak poczytać co jeszcze można osiągnąć za pomocą funkcji acf_form() – więcej informacji na https://www.advancedcustomfields.com/resources/acf_form/

Dodawanie własnych pól

To akurat jest troszkę bardziej rozbudowany temat – teraz napiszę tylko jak go ugryźć.

Najlepiej jest stworzyć nowy plugin bazujący na https://github.com/elliotcondon/acf-field-type-template.

Po rozpakowaniu tego katalogu i wgraniu do wp-content/plugins musimy najpierw pozmieniać nazwy:

  • katalogu
  • pliku acf-FIELD_NAME.php
  • plików acf-FIELD_NAME-v5.php (dla ACF 5) oraz acf-FIELD_NAME-v4.php (dla ACF 4)
  • zastąpić we wszystkich plikach FIELD_NAME na taki jaki chcemy

W tym momencie możemy już uruchomić naszą wtyczką – możemy nawet dodać już nasze pole.

Metody, które na początku interesują nas najbardziej to:

  • render_field_settings – ustawienia danego pola
  • render_field – wygenerowanie pól w panelu administracyjnym

Poza tym warto przejrzeć sobie dokładnie plik acf-FIELD_NAME-v5.php – wszystkie metody są bardzo dokładnie opisane. Po odrobinie lektury i kilku próbach tylko wyobraźnia będzie nas ograniczać.

Maciek Palmowski

Jestem programistą - hobbystycznie i zawodowo (pracuję w Spiders.Agency). Kiedy jednak odejdę od klawiatury jeżdżę na rowerze, biegam albo gram w gry.

Bądź na bieżąco!

Jeżeli chcesz otrzymywać informacje o najnowszych wpisach na blogu Pandify.pl zapisz się do naszego newslettera za pomocą poniższego formularza. Obiecujemy nie wysyłać nic więcej.