W rozwoju WordPressa filtr może być używany do zmiany lub rozszerzenia funkcjonalności WordPressa. Robi to, pobierając pewne dane dostarczone przez WordPress, zmieniając je w coś innego, a następnie przekazując je z powrotem.
Filtry są jedną z najważniejszych funkcji, które sprawiają, że WordPress jest tak konfigurowalny. Są to fragmenty kodu PHP, które są „podłączone” do zdarzenia WordPress. Gdy zdarzenie zostanie wyzwolone, filtr zostanie zastosowany do danych wyjściowych wygenerowanych przez hak zdarzenia.
Są one szeroko stosowane przez twórców wtyczek i motywów. Jeśli jednak nie jesteś programistą, możesz wkleić fragmenty kodu z sieci, aby utworzyć nowe funkcje na twojej witrynie internetowej. Wiele z nich zawiera filtry.
Czym jest filtr w WordPress?
Filtr modyfikuje domyślne zachowanie określonej funkcji na twojej witrynie internetowej WordPress. Robi to poprzez manipulowanie otrzymywanymi danymi, a następnie zwraca te dane do WordPressa, zanim zostaną wyświetlone w przeglądarce.
Na przykład filtry mogą być używane do obcinania tekstu, zmiany formatu treści, dołączania odnośników do wpisów, modyfikowania bloków na stronie i zmiany opcji pobieranych z bazy danych. Mogą one również zmieniać długość zajawki, umieszczać powiązane wpisy pod twoją główną treścią lub zmieniać cenę w WooCommerce.
Filtry są dodawane za pomocą funkcji add_filter()
. WordPress ma kilka funkcji, które pozwalają na użycie działań, ale te są najczęściej używane:
- add_filter(
)
: powoduje dołączenie funkcji do haka remove_filter
(): usuwa funkcję dołączoną do określonego haka filtrującegodoing_filter
(): wykrywa aktualnie wykonywany filtr.has_filter
(): sprawdza, czy filtr został zarejestrowany.
Filtry są używane przez twórców wtyczek i motywów do dodawania dodatkowych funkcji do WordPressa. Możesz również użyć filtrów, aby dostosować swój motyw, dodając fragmenty kodu z poradników online.
Uwaga: Jeśli jesteś początkującym użytkownikiem, zdecydowanie przestrzegamy przed edytowaniem jakichkolwiek plików WordPress. Tylko doświadczeni użytkownicy, którzy czują się komfortowo z edytowaniem pliku functions.php i mają pewną wiedzę na temat PHP, powinni wypróbować tę metodę.
Początkujący powinni albo użyć wtyczki do wykonania zadania, które chcą wykonać, albo skonsultować się z profesjonalistą, aby edytował dla nich kod.
Przed edycją jakiegokolwiek kodu na twojej witrynie WordPress zalecamy wykonanie kopii zapasowej witryny internetowej na wypadek błędu w kodowaniu. Jeśli nie masz wtyczki do tworzenia kopii zapasowych, koniecznie przeczytaj nasz artykuł, w którym porównujemy najlepsze wtyczki do tworzenia kopii zapasowych WordPress.
Zalecamy również, aby nie dodawać kodu bezpośrednio do plików motywu, w przeciwnym razie utracisz własne konfiguratory przy następnej aktualizacji motywu.
Zamiast tego powinieneś użyć wtyczki fragmentów kodu, aby dodać własny kod w WordPress, utworzyć wtyczkę specyficzną dla witryny lub utworzyć motyw potomny i zmodyfikować go zamiast motywu nadrzędnego.
Zobacz nasz przewodnik na temat aktualizacji motywu WordPress bez utraty konfiguratora.
Jaka jest różnica między hakami, działaniami i filtrami?
Aby lepiej zrozumieć filtry w WordPressie, warto zobaczyć, w jaki sposób odnoszą się one do dwóch innych taksonomii, haków i działań. Zrozumienie tych trzech terminów razem sprawi, że termin „filtr” będzie nieco łatwiejszy do zrozumienia.
Hooki są podstawą rozwoju wtyczek i motywów WordPress. Są to miejsca, w których programiści mogą „podpiąć” swój własny kod do WordPressa w określonych lokalizacjach i zmienić sposób działania WordPressa bez edytowania plików rdzenia.
Istnieją dwa rodzaje haków.
- Haki filtrów pozwalają coś zmienić. Przechwytują przetwarzane dane i pozwalają je zmodyfikować, a następnie przekazać z powrotem. Służą do filtrowania danych wyjściowych wysyłanych do bazy danych lub przeglądarki użytkownika.
- Hakidziałań pozwalają coś zrobić. Pozwalają na dodanie dodatkowej funkcjonalności i są wykonywane w przypadku zdarzeń, takich jak włączanie motywu lub wtyczki lub publikowanie wpisów. Po wykonaniu działania nie muszą przekazywać żadnych informacji z powrotem.
Te działania i filtry są podstawą działania rdzenia WordPressa, motywów i wtyczek. Współpracują ze sobą, aby umożliwić programistom dużą elastyczność w modyfikowaniu domyślnych zdarzeń, filtrów i działań WordPress.
Deweloperzy mogą również tworzyć własne niestandardowe działania i filtry, aby inni deweloperzy mogli rozszerzyć swoje wtyczki lub motywy.
Przykłady filtrów WordPress
Jak wygląda filtr? Oto kilka przykładów.
Załóżmy, że chcemy wyświetlić ikonkę obrazka, gdy wpis należy do określonej kategorii. W tym scenariuszu tworzymy funkcję, która sprawdza, czy wpis należy do danej kategorii. Jeśli tak, to wyświetla obrazek.
Następnie podpinamy tę funkcję do zdarzenia the_content
. Teraz za każdym razem, gdy ma miejsce zdarzenie the_content
, nasza funkcja jest automatycznie uruchamiana w celu filtrowania danych wyjściowych zdarzenia the_content
.
// First we hook our own function with the_content event
add_filter( 'the_content', 'wpb_content_filter' );
// Now we define what our function would do.
// In this example it displays an image if a post is in news category.
function wpb_content_filter( $content ) {
if ( in_category('news') )
$content = sprintf('<img class="news-icon" src="%s/images/news_icon.png" alt="News icon" title="" />%s', get_bloginfo( 'stylesheet_directory' ), $content);
// Returns the content.
return $content;
}
Oto kolejny przykład użycia filtra WordPress.
Ten przykładowy kod dodaje funkcję wpb_custom_excerpt
do filtra get_the_excerpt
.
function wpb_custom_excerpt( $output ) {
if ( has_excerpt() && ! is_attachment() ) {
$output .= wpb_continue_reading_link();
}
return $output;
}
add_filter( 'get_the_excerpt', 'wpb_custom_excerpt' );
Możesz dowiedzieć się więcej, studiując nasze przewodniki WordPress, które wykorzystują filtry. Na przykład, oto kilka przewodników, które pokazują, jak osiągnąć coś praktycznego za pomocą filtrów WordPress:
- Jak pokazać różne menu logującym się użytkownikom?
- Jak wyłączyć pasek administratora dla wszystkich użytkowników, w tym administratorów
- Jak automatycznie aktualizować wtyczki WordPress
- Jak wyłączyć podpowiedzi logowania w WordPress
- Jak wyłączyć powiadomienia e-mail o automatycznych aktualizacjach
WordPress ma wiele predefiniowanych filtrów, które pozwalają programistom dodawać własny kod w określonych punktach całego rdzenia WordPress. Interfejs API wtyczek WordPress zapewnia obszerną listę dostępnych haków filtrów.
Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się więcej o filtrach w WordPress. Możesz również zapoznać się z naszą listą dodatkowych lektur poniżej, aby znaleźć powiązane artykuły na temat przydatnych wskazówek, sztuczek i pomysłów WordPress.
Jeśli podobał Ci się ten przewodnik, rozważ subskrypcję naszego kanału YouTube, na którym znajdziesz filmy instruktażowe dotyczące WordPressa. Można nas również znaleźć na Twitterze i Facebooku.