Advanced Custom Fields w WordPress to jedna z najpopularniejszych metod tworzenia edytowalnej treści w tym CMS. Są proste do wdrożenia, łatwe w samej edycji i proste w obsłudze.
Szczegółową dokumentację wtyczki znajdziecie na oficjalnej stronie ACF

Pomijam podstawowe wdrożenia które odbywają się przez funkcję:

Takie rzeczy bardzo łatwo znaleźć w sieci, jak i na wcześniej przytoczonej stronie wydawcy pluginu.

 

Chcę tutaj opisać przeszkodę, z jaką zetknąłem się jakiś czas temu, wykonując portal dla jednego z klientów. Przyjąłem architekturę, która opierać ma się na napisanych wcześniej template stron, nadając im kolejny człon content-page.php. Takie rozwiązanie daje bardzo duże pole do popisu, kiedy zajmujemy się pisaniem stron/podstron od podstaw. Możliwości tutaj są niczym nieograniczone przez sam CMS.

 

Na czym więc polegał problem?

 

Pola ACF sprawdzały się znakomicie na podstronach należących do grupy content-page.php. Główną przeszkodą stało się przypisanie pól/grup pól do strony głównej lub sidebar. Zwyczajnie przestały się wyświetlać. Okazuje się, że sam problem nie jest zbyt popularny, jednak został opisany w wątku na stronie producenta wtyczki, przez jednego z użytkowników.

 

Jak to rozwiązać?

 

Advanced Custom Fields mogą zostać przypisane dla konkretnej strony/posta pobierając jego ID z WordPress. W tym wypadku należy je przypisać do konkretnego pola.
Dlaczego? Dlatego, że wywołanie funkcji the_field() znajduje się w tym przypadku poza pętlą:

 

 

Aby plugin wiedział, skąd pobrać wartość określoną w panelu do pola przypisanego w kodzie, należy dodać ID strony:

 

 

Gdzie ’22’ oznacza właśnie ID strony, które znajdziecie znów w panelu w 2 miejscach.
Pierwsze to query po wejściu w stronę przez panel:

 

Id dla Pola ACF

 

Drugie ukarze się po najechaniu na stronę również w panelu:

 

Id strony Pola ACF

 

Jak widać powyżej, rozwiązanie jest bardzo proste, niemniej jednak znalezienie go zajęło trochę czasu, stąd chciałbym zaoszczędzić go Wam, opisując je tutaj w tym krótkim artykule 🙂 Mam nadzieję, że będzie dla Was użyteczne!

Dobrze prawi dać mu lajka i udostępnić!