Pole autora pod wpisem to jeden z tych drobiazgów, które robią więcej, niż się wydaje. Buduje E-E-A-T, daje czytelnikowi kontekst „kto to napisał i dlaczego mam mu wierzyć”, a przy okazji domyka stronę wizualnie. Problem w tym, że w większości motywów albo go nie ma, albo siedzi gdzieś głęboko w szablonie i grzebanie w nim to proszenie się o kłopoty przy aktualizacji. Zrobiłem więc malutką wtyczkę, która załatwia temat w pięć minut i działa wszędzie tak samo.
Po co w ogóle taka wtyczka
Google od dawna patrzy nie tylko na to, co piszesz, ale i kto to pisze. Sygnały autorstwa — kto stoi za treścią, jakie ma doświadczenie, czy da się go zweryfikować – to część układanki E-E-A-T. Pole autora pod wpisem nie jest magicznym przełącznikiem do TOP1, ale jest tanim i sensownym elementem, który warto mieć w blogu, na którym zależy Ci na wiarygodności.
Korzyść czytelnika. Krótka notka „o autorze” buduje zaufanie i kontekst. Ktoś dotarł do końca tekstu, więc jest zaangażowany, to dobry moment, żeby powiedzieć mu, kim jesteś i co robisz.
Korzyść techniczna. Treść doklejasz raz, z panelu, a pojawia się pod każdym wpisem automatycznie. Zero edytowania pojedynczych postów, zero dłubania w single.php.
Szybko, bez dotykania motywu
Najważniejsze założenie: wtyczka nie zależy od motywu. Nie podpina się pod konkretne hooki szablonu, nie wymaga child theme, nie psuje się przy zmianie skórki. Doklejanie treści odbywa się przez filtr the_content, który jest standardem w WordPressie od zawsze, działa tak samo w Astrze, GeneratePress, Kadence, BeTheme czy w czymkolwiek innym, co poprawnie renderuje treść wpisu.
W praktyce wygląda to tak: instalujesz, wchodzisz w Pole autora w menu admina, wpisujesz treść pełnym edytorem WordPress (ten sam TinyMCE, co przy zwykłym wpisie, pogrubienia, linki, media), zapisujesz. I tyle. Notka pojawia się pod każdym wybranym typem treści.
Mega lekka i funkcjonalna
Cała wtyczka to jeden plik PHP i kilka linii CSS wstrzykiwanych inline. Brak zewnętrznych bibliotek, brak własnych tabel w bazie, brak requestów do świata. Ustawienia trzyma w standardowych opcjach WordPressa, a styl jest na tyle neutralny, że łatwo go nadpiszesz w swoim motywie. Mimo to dostajesz konkret:
- Edytor WYSIWYG – treść formatujesz jak normalny wpis, łącznie z przyciskami media.
- Przełącznik włącz/wyłącz – bez deaktywacji wtyczki.
- Własny nagłówek – np. „O autorze”; puste pole = brak nagłówka.
- Wybór typów treści – domyślnie tylko wpisy, ale możesz włączyć strony lub własne typy.
- Lekki, nadpisywalny CSS– klasy
.pa-author-box, więc dopasujesz wygląd do motywu w minutę.
Krótka dokumentacja
Jeśli lubisz wiedzieć, co odpalasz na produkcji (a powinieneś), poniżej masz rozbiór najważniejszych elementów kodu.
Zabezpieczenie przed bezpośrednim wejściem. Klasyk, który powinien być w każdej wtyczce — jeśli ktoś spróbuje otworzyć plik wprost z przeglądarki, skrypt się wyłoży zamiast cokolwiek wykonać.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
Konstruktor, cztery podpięcia: menu w adminie, rejestracja ustawień, filtr doklejający treść oraz załadowanie stylu na froncie.
add_action( 'admin_menu', ... ); // strona ustawień
add_action( 'admin_init', ... ); // rejestracja opcji
add_filter( 'the_content', ... ); // doklejenie pola pod wpisem
add_action( 'wp_enqueue_scripts', ... ); // CSS
Rejestracja ustawień (Settings API). Zamiast samodzielnie obsługiwać zapis formularza, korzystam z natywnego mechanizmu WordPressa. Każda opcja ma własny sanitize_callback, czyli funkcję czyszczącą dane przed zapisem — tytuł leci przez sanitize_text_field, treść przez wp_kses_post (przepuszcza bezpieczny HTML jak w normalnym wpisie, ucina niebezpieczny).
Edytor w panelu. Sercem ustawień jest funkcja wp_editor() — to ten sam edytor, którego używasz przy pisaniu wpisu. Dzięki temu nie uczysz się niczego nowego, a formatowanie jest spójne z resztą strony.
wp_editor(
$content,
'pa_content_editor',
array(
'textarea_name' => 'pa_content',
'textarea_rows' => 10,
'media_buttons' => true,
)
);
Doklejanie treści. Najważniejsza funkcja, a zarazem miejsce, gdzie najłatwiej o błąd. Dlatego są tu trzy bezpieczniki: pole pojawia się tylko na pojedynczym wpisie (is_singular), tylko w głównej pętli (in_the_loop) i tylko w głównym zapytaniu (is_main_query). Bez tego notka potrafiłaby wskoczyć do listingów, widżetów albo treści generowanej przez inne wtyczki — i to jest najczęstszy powód, dla którego „proste” rozwiązania na the_content potrafią narobić bałaganu.
if ( ! is_singular() || ! in_the_loop() || ! is_main_query() ) {
return $content;
}
// ... sprawdzenie typu wpisu i czy treść nie jest pusta
return $content . $html;
Styl wstrzykiwany inline. Żeby utrzymać „jeden plik, zero balastu”, CSS nie leży w osobnym pliku, tylko jest dodawany przez wp_add_inline_style do pustego, zarejestrowanego uchwytu. Efekt: lekka, neutralna ramka, którą bez problemu nadpiszesz własnymi regułami w motywie.
Komu się przyda
Blogerom i firmom, które chcą szybko dorzucić wiarygodną notkę pod wpisami bez przebudowy szablonu. Agencjom, które stawiają strony na różnych motywach i potrzebują rozwiązania, które wszędzie zachowa się tak samo. I każdemu, kto woli jedną lekką wtyczkę zamiast kombajnu, który dokłada pół sekundy do czasu ładowania za funkcje, których i tak nie używa.
Potrzebujesz wersji per autor (notka pobierana z profilu użytkownika) albo osobnego pola dla każdego wpisu? Daj znać — dorobię wariant pod Twój przypadek, to póki co wersja na użytek własny… ale przyda się pewnie i Wam. 🙂
O autorze
Mateusz Ptoszek
Na co dzień pracuję dla różnych agencji, marek i firm pomagając im docierać do swoich odbiorców.Tworzę znaczące więzi i lepszy, zrozumiały internet.