Shortcodes i WordPress – przewodnik dla początkujących

Shortcodes zostały wdrożone w wersji 2.5. Od tego czasu okazały się jedną z najbardziej użytecznych funkcji tego CMSa. Przeciętny użytkownik działający, jako wydawca lub edytor ma możliwość publikowania dynamicznej zawartości za pomocą makr, bez konieczności posiadania zaawansowanych umiejętności programistycznych.

Po dodaniu kodu shortcode do postu lub strony – jest on zastępowany inną zawartością. Innymi słowy, możemy zawartością makr w nawiasach kwadratowych [treść] i zastąpić go odpowiednią zawartością dynamiczną, która jest produkowana przez funkcję PHP.

Użycie jest bardzo proste. Powiedzmy, że chcemy pokazać najnowsze posty w danym miejscu. Do takiego zadania możemy użyć następujący fragment:

				
					[recent-posts]


				
			

Innym przykładem uzycia shortcode jest możliwość sterowania liczby wyświetlanych postów:

				
					[recent-posts posts="5"]
				
			

Idąc jeden krok dalej możemy zdefiniować nagłówek na liście najnowszych postów:

				
					[recent-posts posts="5"]Nagłówek[/recent-posts]
				
			

Proste Shortcodes

W tej części będziemy tworzyć proste shortcode’y :)

				
					[recent-posts]
				
			

Sam proces tworzenia jest dość prosty i nie wymaga zaawansowanej wiedzy z zakresu PHP. Podstawowe kroki to:

  1. Stworzenie funkcji, która będzie wywoływana przez WordPressa, gdy znajdzie shortcode.
  2. Zarejestrowanie shortcode ustawiając unikalną nazwę.
  3. Rejestracja funkcji.

Cały kod musi być umieszczony w pliku functions.php lub w odzielnym pliku PHP, który będzie odwoływany z pliku functions.php

Funkcja Callback

Gdy shortcode zostanie odnaleziony, jest zastępowany przez dany kawałek kodu, który jest funkcją zwrotną (callback). Tak, więc utworzymy funkcję, która sprawdza najnowsze posty w nazie danych MYSQL.

				
					function recent_posts_function() {
query_posts(array(’orderby’ => 'date’, 'order’ => 'DESC’ , 'showposts’ => 6));
if (have_posts()) :
while (have_posts()) : the_post();
$return_string = ”.get_the_title().”;
endwhile;
endif;
wp_reset_query();
return $return_string;
}
				
			

Powyższy fragment kodu odpytuje bazę danych, aby uzyskać najnowszy post i zwracać ciąg z linkiem do niej. Warto zaznaczyć, że funkcja zwrotna nic nie „drukuje”, a zwraca ciąg znaków (stringów).

Rejestracja shortcode

Teraz dla WordPressa,ta funkcja jest shortcode’m.

				
					function register_shortcodes(){
add_shortcode('recent-posts', 'recent_posts_function');
}
				
			

Jeśli shortcode [recent-posts] zostanie znaleziona w treści, następnie zostanie wywołana funkcja recent_posts_function().Należy upewnić się, że nazwa dla naszego shortcode jest unikalna, aby uniknąć konfliktów.

Hooks

Haki to część API WordPressa dodające akcje i filtry. W celu realizacji naszego shortcode’u musimy użyć funkcji register_shortcodes().

				
					add_action( 'init', 'register_shortcodes');
				
			

Testowanie shortcode

				
					[recent-posts]
				
			

Po opublikowaniu postu w przeglądarce powinniśmy zobaczyć, listę najnowszych postów na swoim blogu, np. po ostylowaniu jak na poniższym zrzucie:

shortcode w praktyce
Powyższy przykład jest wzbogacony o miniaturki postów oraz datę publikacji. Shortcodes są elastycznie, ponieważ pozwalają dodać parametry w celu uczynienia ich bardziej funkcjonalnych. W następnym wpisie przyjrzymy się bliżej zaawansowanymi przykładami shortcodes.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *