Jak używać shortcode w widgecie tekstowym w WordPressie?
- Poziom trudności:
Pomogłem rozwiązać Twój problem? Wspieraj moje działania bym pisał więcej:
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:
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ę:
Pomogłem rozwiązać Twój problem? Wspieraj moje działania bym pisał więcej:
W jednym artykułów pisałem na temat shortcodes. Najprostszy sposób – skorzystać się wtyczki. Mogę polecić wtyczkę Cherry Shortcodes
Nie wszystko co najprostsze jest najlepsze. Tu wystarczy dodanie dwóch linijek kodu.