
📄 Jak wstawić plik HTML do strony WordPress: wtyczka Include Me
Opracowali Państwo formularz zwrotny w osobnym pliku .html, napisali skrypt raportu w PHP, a edytor WordPress tnie kod przy każdym zapisie? Znajomy ból każdego, kto wychodzi poza standardowy konstruktor blokowy.
Include Me rozwiązuje to zadanie jednym wierszem shortcode: podłącza zewnętrzny plik HTML/PHP lub treść innego wpisu bezpośrednio w treść posta. Wtyczka znajduje się w katalogu WordPress.org z ponad 4000 aktywnych instalacji, oceną 4,8 i aktualizacją pod WP 6.9.4. Autorem jest Stefano Lissa, twórca Newsletter i Hyper Cache.
Poniżej pełna analiza: od instalacji po przekazywanie zmiennych do skryptów PHP i bezpieczny tryb iframe.
💡 Szybki przegląd:
- Zainstaluj Państwo Include Me z katalogu WordPress.org (Wtyczki → Dodaj nową, wyszukaj „Include Me").
- Wgraj docelowy plik HTML/PHP do folderu
/wp-content/include-me/na serwerze. - Wstaw shortcode
[includeme file="ваш-файл.html"]w wybranym miejscu posta lub strony. - Dla plików PHP: wtyczka wykona skrypt i wyświetli wynik. Dla HTML wstawi go bez zmian.
- Alternatywnie podłącz inny wpis WordPress przez
post_idlub zewnętrzny URL przez składnię iframe.
Czym jest Include Me i kiedy jest potrzebny
Include Me to lekka wtyczka (zaledwie kilka linii kodu, jak mówi autor), która rozwiązuje konkretne zadanie: wstawianie zewnętrznego pliku w treść posta lub strony WordPress za pomocą shortcode.
Kiedy jest to potrzebne w praktyce:
- Formularze i kalkulatory. Napisali Państwo formularz HTML z CSS i JS, edytor bloków zniekształca znaczniki przy każdym przełączeniu między trybem wizualnym a tekstowym. Include Me wstawia plik bajt po bajcie, niczego nie ruszając.
- Raporty PHP. Skrypt zbiera dane z bazy, tworzy tabelę i generuje HTML. Include Me wykonuje PHP i pokazuje wynik wewnątrz posta, bez edycji szablonu.
- Współdzielone bloki. Ten sam plik (cennik, disclaimer, blok kontaktowy) trzeba pokazywać na kilkudziesięciu stronach. Zmieniają Państwo plik, aktualizuje się wszędzie automatycznie.
- Treść obcego wpisu. Podłączają Państwo tekst innej strony przez
post_idi jest on zsynchronizowany: edytują Państwo w jednym miejscu, wyświetla się we wszystkich.
Główna przewaga nad niestandardowym szablonem strony: przy zmianie motywu Państwa pliki pozostają na swoim miejscu. Motyw się zmienia, treść żyje niezależnie.
Instalacja i pierwsze uruchomienie
Instalacja standardowa, przez panel administracyjny WordPress:
- Wtyczki → Dodaj nową.
- W polu wyszukiwania wpisz „Include Me".
- Znajdź wtyczkę autorstwa Stefano Lissa, kliknij Zainstaluj → Aktywuj.
Po aktywacji wtyczka jest gotowa do pracy, nie ma żadnych ekranów konfiguracyjnych. Cała „konfiguracja" odbywa się przez składnię shortcode.
Domyślna ścieżka do plików: /wp-content/include-me/. Do tego właśnie folderu wgrywajcie Państwo pliki, które zamierzacie podłączać. Jeśli potrzebny jest inny katalog, dodajcie w wp-config.php:
1 define('INCLUDE_ME_DIR', '/путь/к/вашей/папке');
Jeśli chcą Państwo podłączać pliki z dowolnego miejsca na serwerze, proszę wstawić gwiazdkę (ale bezpieczniej ograniczyć do jednego folderu):
1 define('INCLUDE_ME_DIR', '*');
Ważne ograniczenie bezpieczeństwa: od wersji 1.3.0 shortcode [includeme] jest wykonywany tylko w postach należących do administratora. Pliki domyślnie są wyszukiwane wewnątrz folderu głównego witryny (ABSPATH i niżej). To nie błąd, a zabezpieczenie: Include Me wykonuje kod PHP i nie można dawać takiej możliwości byle komu.
Podstawowa składnia: podłączamy pliki HTML i PHP

Podstawowy shortcode, [includeme file="имя-файла"]. Działa w każdym poście, na stronie lub w widżecie (przez do_shortcode).
Przykład 1: Plik HTML. Przygotowali Państwo price-table.html z układem cen i stylami. Wgrali do /wp-content/include-me/. W poście wpisują Państwo:
1 [includeme file="price-table.html"]
Wtyczka odczytuje plik i wstawia jego zawartość dokładnie w to miejsce, gdzie stoi shortcode. Znacznik <style> wewnątrz pliku działa. Inline JS działa. Żadnego „czyszczenia" znaczników.
Przykład 2: Skrypt PHP. Plik report.php wykonuje SELECT z bazy i wyświetla tabelę. Rozszerzenie .php jest wyzwalaczem dla Include Me: wtyczka nie tylko odczytuje plik, ale wykonuje go przez include. Wyjście skryptu (echo/print) trafia do posta:
1 [includeme file="report.php"]
Przykład 3: Ścieżka względna. Ścieżka bez ukośnika na początku (file="myfolder/data.html") jest liczona od katalogu głównego witryny (ABSPATH). Ścieżka bezwzględna (file="/var/www/external/widget.html") od katalogu głównego systemu plików serwera. W większości przypadków używa się ścieżki względnej do pliku wewnątrz /wp-content/include-me/.
Podłączanie innego wpisu lub strony przez post_id
Twórcy Include Me dodali składnię do pobierania treści istniejącego wpisu WordPress. Shortcode:
1 [includeme post_id="42"]
Gdzie 42 to numeryczne ID żądanego posta lub strony. Jak sprawdzić ID: w panelu administracyjnym proszę najechać kursorem na link „Edytuj" danego wpisu, w pasku stanu przeglądarki zobaczą Państwo post=42.
Ten chwyt jest wygodny w przypadku stron prawnych. Polityka prywatności lub warunki korzystania często się powielają: jeden egzemplarz na stronie „nadrzędnej", na pozostałych Include Me z post_id. Prawnik poprawia tekst w jednym miejscu, aktualizuje się wszędzie.
Proszę zwrócić uwagę: pobierana jest tylko treść wpisu, bez tytułu. Jeśli potrzebny jest również tytuł, trzeba go zduplikować wewnątrz treści lub użyć [includeme file="..."] ze skryptem PHP, który pobierze get_post().
Tryb iframe: osadzamy zewnętrzny URL
Trzecia składnia generuje <iframe> zamiast bezpośredniego włączenia:
1 [includeme src="https://example.com/widget"]
Wszelkie dodatkowe atrybuty są przekazywane do <iframe> jako atrybuty HTML:
1 [includeme src="https://example.com/widget" frameborder="0" width="600" height="450"]
Rezultat to pełnoprawny iframe o zadanych wymiarach. Jest to alternatywa dla bezpośredniego włączenia w przypadkach, gdy:
- Trzeba pokazać zewnętrzną stronę jako „okno" wewnątrz posta.
- Podłączana treść ma żyć w izolowanym kontekście (własne CSS/JS, które nie kolidują z motywem).
- Trzeba wstawić interaktywny widget (kalkulator, mapę), który nie powinien być wykonywany w kontekście WordPress.
Ograniczenie: tryb iframe nie wykonuje PHP, po prostu pokazuje URL w ramce. Dla kodu serwerowego proszę używać file="...".
Przekazywanie zmiennych do skryptów PHP
Najpotężniejsza możliwość Include Me to przekazywanie parametrów z shortcode do podłączanego pliku PHP. W shortcode wpisują Państwo:
1 [includeme file="greeting.php" name="Алексей" plan="Pro"]
Wewnątrz greeting.php uzyskują Państwo dostęp do atrybutów przez globalną tablicę $attrs:
1 <?php 2 $user_name = $attrs['name'] ?? 'Гость'; 3 $user_plan = $attrs['plan'] ?? 'Free'; 4 5 echo "<p>Здравствуйте, {$user_name}! Ваш тариф: {$user_plan}.</p>";
To zmienia Include Me w mini silnik szablonów. Ten sam plik PHP generuje różne wyjście w zależności od atrybutów shortcode. Praktyczne scenariusze:
- Kalkulator ceny. Jeden skrypt
calc.phpotrzymujebase_priceidiscountz shortcode, na różnych stronach pokazuje różne wyliczenia. - Spersonalizowany blok.
cta.phpprzyjmujeheadingibutton_text, w każdym poście własny nagłówek i przycisk, szkielet HTML wspólny. - Dashboard dla klienta.
client-stats.phpotrzymujeclient_idi wyświetla dane konkretnego klienta z zewnętrznego CRM.
Czego Include Me nie robi: ograniczenia
Wtyczka rozwiązuje wąskie zadanie i nie próbuje być kombajnem. Wady, które warto znać przed instalacją:
- Tylko dla administratorów. Shortcode działa tylko w postach, których autorem jest administrator. Autorzy i redaktorzy nie mogą używać Include Me, to świadome ograniczenie bezpieczeństwa (wersja 1.2.2+).
- Brak edytora wizualnego. Żadnego UI w panelu administracyjnym: wtyczka nie dodaje metaboksu do wyboru pliku. Wszystko ręcznie przez shortcode.
- Rozszerzenie
.phpjest obowiązkowe do wykonania. Plikscript.incz kodem PHP NIE zostanie wykonany, wtyczka wstawi go jako tekst. Proszę zmienić nazwę nascript.php. - Brak cache. Każde wywołanie shortcode odczytuje plik z dysku lub wykonuje PHP od nowa. Dla stron o dużym obciążeniu z ciężkimi skryptami proszę cachować wyjście samodzielnie (przez Transients API lub wtyczkę cache na poziomie strony).
⁉️🤔 Często zadawane pytania
Czy Include Me działa z nowoczesnymi wersjami WordPress?
Tak, wtyczka jest przetestowana aż do WordPress 6.9.4 i wymaga wersji nie niższej niż 6.1. Ostatnia aktualizacja (1.3.7) wyszła w lutym 2026 roku, autor utrzymuje kompatybilność z każdym głównym wydaniem WP.
Czy bezpiecznie jest podłączać pliki PHP przez shortcode?
Od wersji 1.2.2 wtyczka wykonuje pliki PHP tylko z folderu wewnątrz katalogu głównego witryny i tylko dla postów administratora. Uniemożliwia to uruchomienie dowolnego kodu przez XSS lub podstawienie URL. Dodatkowo proszę ograniczyć folder przez
define('INCLUDE_ME_DIR', '...'), nie używać'*'bez absolutnej konieczności.
Czym Include Me różni się od wtyczki Insert Pages?
Insert Pages koncentruje się na wstawianiu treści innych wpisów, ma bogaty zestaw opcji formatowania i opakowań. Include Me jest prostszy i nastawiony na pracę z plikami: HTML, PHP, TXT. Jeśli zadaniem jest tylko pobranie innego wpisu, Insert Pages jest wygodniejszy. Jeśli potrzebne są skrypty PHP i pliki zewnętrzne, Include Me.
Czy można wstawić ten sam plik na dziesięć stron?
Tak, właśnie do tego wtyczka została stworzona. Jeden plik w
/wp-content/include-me/podłącza się przez identyczny shortcode na dowolnej liczbie stron. Zmienili Państwo plik, treść zaktualizowała się wszędzie natychmiast, bez ponownego zapisywania każdego posta.
Dlaczego mój plik PHP wyświetla pustkę?
Trzy częste przyczyny: (1) plik nie znajduje się w folderze
INCLUDE_ME_DIR, a ścieżka jest podana nieprawidłowo; (2) w kodzie PHP jest błąd krytyczny, proszę sprawdzićWP_DEBUGi logi serwera; (3) plik został zapisany z rozszerzeniem.htmllub.inczamiast.php, Include Me wykonuje tylko.php.
Co zrobić, jeśli wtyczka przestanie być aktualizowana?
Include Me składa się zaledwie z kilku linii kodu (jak mówi autor) i nie zależy od zewnętrznych serwisów. Nawet bez aktualizacji będzie działać latami, jej logika nie jest powiązana z WP REST API, blokami ani specyfiką Gutenberga. Podstawowy mechanizm shortcode WordPress nie zmienił się od wersji 2.5.
Co zrobić, jeśli potrzeba więcej: alternatywy i następny krok
Jeśli Include Me nie pokrywa Państwa zadania, oto dwa kierunki rozszerzenia:
- Wstawianie wpisów z formatowaniem: wtyczka Insert Pages pobiera treść innych postów z elastycznymi ustawieniami wyświetlania (tytuł, zajawka, dowolne opakowanie).
- Pełnoprawny silnik PHP: wtyczka WPCode (dawniej Insert Headers and Footers) pozwala wstawiać snippety PHP globalnie lub warunkowo, z podświetlaniem składni i kontrolą błędów.
Proszę zacząć od Include Me: do typowego zadania „wstawić zewnętrzny plik do posta" wystarcza z nawiązką. A jeśli już Państwo używali tej wtyczki lub rozwiązywali podobne zadanie inaczej, proszę opowiedzieć w komentarzach, które narzędzie wybrali Państwo.



