Jeśli wykonałeś jakąkolwiek pracę z Kalendarzem wydarzeń z Modern Tribe, istnieje szansa, że znasz różne sposoby wykonywania określonych zadań.
Strona główna kalendarza wydarzeń
Oznacza to programowe tworzenie wydarzeń, zmienianie wydarzeń, konfigurowanie powtarzających się wydarzeń (jeśli jest to wersja pro) i tak dalej.
Co jednak, jeśli musisz przejść do sprawdzania typów wpisów o zdarzeniach – niektóre lub wszystkie nie mają znaczenia – i okaże się, że Twoje zapytanie nie działa? I nie, nie mówię o używaniu surowego zapytania SQL ani nawet sparametryzowanej wersji z klasą $wpdb.
Mówię o WP_Query.
Zapytanie o typy postów o zdarzeniach
Oto skrót: jeśli spróbujesz użyć WP_Query w sposób, do którego jesteś przyzwyczajony (czyli ręcznie określając typ postu), prawdopodobnie nie uzyskasz żadnych wyników. Co oczywiście nie ma sensu, zwłaszcza gdy widać je w WordPressie i bazie danych.
Zamiast tego argumenty zapytania wymagają:
- pod uwagę kilka typów postów,
- pod uwagę kilka statusów postów,
- oraz niestandardowy klucz tablicy, unikalny dla samej wtyczki (od wersji 3.0).
Krótko mówiąc, niesamowicie podstawowa wersja argumentacji powinna wyglądać tak :
Ale o to chodzi: to nie jest przypadek uniwersalny. Czasami możesz nie określić klucza eventDisplay i nadal uzyskiwać wyniki. Więc co daje?
Zawsze czytaj dokumentację
Zgodnie z dokumentacją :
eventDisplay służy do wskazania ogólnego kształtu zapytania – zazwyczaj może to być jedno z nadchodzących, przeszłych lub niestandardowe (a jeśli nie określisz niczego, założysz, że jesteś zainteresowany nadchodzącymi wydarzeniami)
Więc jeśli masz nadchodzące wydarzenie, wszystko będzie dobrze, ale jeśli chcesz pobrać wszystko, co masz w swojej instalacji, określ niestandardowe jako swoją wartość.
Większy obraz
Powód, dla którego natknąłem się na tę specyfikę, ma więcej wspólnego z implementacją tworzenia wydarzeń i kojarzeniem ich z konkretnym kontem użytkownika.
Ale omówię to w innym poście. Na razie chodzi o upewnienie się, że możemy przejść do sprawdzania typów postów o zdarzeniach i uzyskać wyniki, z którymi możemy pracować.