Jedną z funkcji, której brakowało mi w WordPressie, to brak możliwości wklejania kodu PHP we wpisach (i widgetach). Oczywiście można wklejać kod poprzez edytor, ale co jeśli chcemy umieścić kod tylko w jednym wpisie? Dlatego zacząłem poszukiwania wtyczki, która umożliwiałaby mi wywoływanie skryptów w postach.
Kod PHP we wpisach i widgetach – WordPress
Wtyczki które przetestowałem to:
Jedyną wtyczką, która spełniła moje oczekiwania, była Shortcode Exec PHP. Dlaczego? Korzystam z wtyczki SyntaxHighlighter Evolved do „kolorowania” kodu, który chcę pokazać światu i Shortcode Exec jako jedyna nie gryzła się z tą wtyczką. Zarówno Allow PHP in Posts and Pages, jak i PHP Code for posts korzystają z shortcode [ php] (spacja dodana specjalnie), co powodowało różne konflikty z ww. wtyczką.
Shortcode Exec natomiast pozwala na tworzenie własnych shortcodów. Inne wtyczki także na to pozwalają, ale mają tag [ php] domyślnie przypisany, a to właśnie powodowało konflikt z SyntaxHighlighter Evolved. Dzięki własnym shortcodes możemy dany kod wykorzystywać wielokrotnie, bez potrzeby wklejania go osobno do kilku postów. Dzięki temu będziemy mieli mniej roboty, jeśli zajdzie potrzeba poprawy kodu – wystarczy zrobić to tylko raz, w centralnym miejscu (Narzędzia -> Shortcode Exec).
Tym artykułem rozpoczynam serię opisu wtyczek do WordPressa. Więcej wpisów o WordPressie znajdziesz tutaj. Zapraszam.
Poniżej prezentuję jak działa opisana przeze mnie wtyczka
Warning: readfile(http://pp.skapiec.pl/widgets/top_products.php?s=10&d=0&p=71423): failed to open stream: HTTP request failed! HTTP/1.1 502 Bad Gateway in /usr/home/mskupin/domains/mskupin.pl/public_html/wp-content/plugins/shortcode-exec-php/shortcode-exec-php-class.php(895) : eval()'d code on line 1 Kod PHP we wpisach i widgetach - WordPress,