Jak używać shortcode w widgecie tekstowym w WordPressie?

  • Poziom trudności:

Czy chciałeś kiedyś umieścić w bocznej kolumnie galerię albo prosty formularz kontaktowy ale nie wiedziałeś jak się za to zabrać? Jest bardzo prosty sposób aby funkcjonalności, które wywołujesz we wpisach/stronach przy pomocy shortcodów wywoływać także w sidebarze. Wystarczy dodać taką możliwość dla widgetów tekstowych. W poniższym kursie dowiesz się w jaki sposób szybko dodać taką funkcjonalność.

Shortcode to taki fragment kodu umieszczony w nawiasie kwadratowym wywołujący określoną treść. Shortcode’ów używa się np. przy umieszczaniu we wpisie/stronie galerii, formularza kontaktowego albo rozwijanych bloków. Shortcode charakteryzuje się tym, że na jego początku znajduje się otwarcie nawiasu kwadratowego, a na końcu jego zamknięcie.

Na samym początku sprawdźmy wspólnie jak wygląda próba dodawania shortcodu z galerią do bocznego paska:

niedzialajacy-shortcode-w-sidebarze

Tak jak można było przypuszczać – przestrzeń na Widgety domyślnie nie odczytuje shortcodów. Zamiast estetycznej, dwukolumnowej galerii WordPress zwrócił nam tekst, który w tym miejscu wpisaliśmy. Stało się tak dlatego, ponieważ WP nie wiedział, że w widgetach tekstowych może się znaleźć coś innego aniżeli tekst. Domyślnie ma za zadanie wyświetlić to, co zostanie w widgecie wpisane i tu sprawdził się idealnie.

Jak zadeklarować wykonywanie shortcodów jako widgety tekstowe?

Sprawa jest banalnie prosta. Wystarczy przejść do edycji pliku functions.php w sekcji Wygląd -> Edytor, a następnie dopisać pomiędzy <?php i ?> następujący fragment kodu:

add_filter( 'widget_text', 'shortcode_unautop');
add_filter( 'widget_text', 'do_shortcode');

Po zapisaniu zmian shortcode umieszczony w sidebarze zmieni się w galerię:

galeria-z-shortcodu
UDOSTĘPNIJ
WordPress dla początkujących