Automatyczne linkowanie wewnętrzne SEO: konfiguracja i pomoc
Szybki start
- Zainstaluj ZIP w Moduły > "Module Manager" i otwórz "Improve" > Wewnętrzny linker SEO.
- Sprawdź Maksymalna liczba linków na stronę i Maksymalna liczba linków na grupę w Ustawienia > Konfiguracja.
- Dodaj grupę linków z polami Nazwa, Encja docelowa lub Docelowy URL oraz Słowa kluczowe.
- Wybierz wąskie Strefy treści i Typy stron, ustaw Maks. linków z tej grupy i pozostaw Aktywny na Tak.
- Zapisz i otwórz stronę zawierającą pasującą frazę w wybranej strefie treści.
- Sprawdź wygenerowaną kotwicę oraz jej adres docelowy, język, atrybuty i liczbę linków.
Wymaga PrestaShop 1.6.1 lub nowszego oraz PHP 7.1 lub nowszego.
Instrukcja konfiguracji
Instalacja i otwieranie konfiguracji
Prześlij ZIP w Moduły > "Module Manager" > "Upload a module". Zainstaluj go i kliknij "Configure". Otwórz "Improve" > Wewnętrzny linker SEO, aby przejść do Panel, Grupy linków i Ustawienia > Konfiguracja. "Configure" otwiera ekran konfiguracji.
Przetwarzanie końcowej strony używa actionOutputHTMLBefore od PrestaShop 1.7.1, a w starszych obsługiwanych wersjach displayHeader i filtra wyjściowego Smarty. Moduł pomija odpowiedzi AJAX i odpowiedzi inne niż HTML. Silnik końcowej strony wymaga sekcji body. Sprawdź wynik z używanym rdzeniem i motywem.
Konfiguracja sekcji Ogólny
| Ustawienie | Wartość domyślna | Co skonfigurować |
|---|---|---|
| Maksymalna liczba linków na stronę | 5 | Ogranicza liczbę wygenerowanych linków na stronie. Istniejące linki nie zużywają tego limitu wygenerowanych linków. |
| Maksymalna liczba linków na grupę | 3 | Wartość zastępcza, gdy grupa nie ma własnego dodatniego limitu. |
| Domyślny cel linku | _self |
Wybierz domyślny cel. Użyj _blank, jeśli linki mają otwierać inne okno lub kartę. |
| Domyślny atrybut rel linku | Puste | Opcjonalne wartości, takie jak nofollow lub noopener. |
| Domyślna klasa CSS linku | mpr-autolink |
Klasa używana, jeśli grupa nie podaje własnej. |
| Włącz profilowanie debugowania | Nie | Dodaje diagnostykę w komentarzach HTML na potrzeby rozwiązywania problemów. |
| Adresy IP debugowania | Puste | Rozdzielone przecinkami adresy IP odwiedzających, którzy mogą zobaczyć diagnostykę. Puste pole nie ogranicza debugowania według IP. |
Dla pierwszej reguły użyj małych dodatnich limitów. Zapisz i sprawdź wynik, zanim je zwiększysz.
Konfiguracja sekcji Reguły
| Ustawienie | Wartość domyślna | Obecne działanie |
|---|---|---|
| Zapobiegaj duplikatom href | Tak | Zmiana tego ustawienia nie ma wpływu na wynik. Istniejące linki do celu zawsze wliczają się do dodatniego limitu grupy. |
| Zapobiegaj linkowi w już zlinkowanym elemencie nadrzędnym | Nie | Zmiana tego ustawienia nie ma wpływu na wynik. Tekst wewnątrz linku jest pomijany, ale pozostały tekst w tym samym elemencie nadrzędnym może otrzymać linki. |
| Zapobiegaj wielu automatycznym linkom w tym samym elemencie | Tak | Ogranicza linki w każdym ciągłym fragmencie tekstu. Zagnieżdżone elementy i kolejne grupy mogą dodawać dalsze linki w tym samym elemencie nadrzędnym. |
| Proporcjonalna dystrybucja limitu globalnego | Tak | Przydziela efektywne limity grup, gdy ich suma przekracza dodatni limit strony. |
| Równomierny rozkład linków w tekście | Tak | Zmiana tego ustawienia nie ma wpływu na wynik. Linki są dodawane według kolejności obszarów treści, grup, słów kluczowych i dopasowań w tekście. |
Konfiguracja sekcji Wyświetlanie i Wykluczenia
W Wyświetlanie ustaw te wartości zastępcze. Wybrane strefy treści grupy mają pierwszeństwo przed jej zaawansowanymi selektorami, a te przed selektorami globalnymi.
| Ustawienie | Wartość domyślna | Sposób użycia |
|---|---|---|
| Uwzględnione selektory CSS | .product-description, #description, .page-content, .post-content |
Obszary dopuszczone do przetwarzania, gdy grupa nie określa węższego zakresu. |
| Uwzględnione tagi HTML | p,div,span,blockquote,li,td |
Tagi bezpośrednich elementów nadrzędnych tekstu dopuszczające wstawianie. Grupa może nadpisać tę listę. |
Zaawansowane dopasowanie obsługuje proste selektory: .class, #id, tag, tag.class i tag#id. Nie zakładaj, że dostępna jest pełna składnia selektorów CSS przeglądarki. Wbudowane strefy mogą zawierać dodatkowe predefiniowane wzorce motywów.
W Wykluczenia sprawdź:
| Ustawienie | Wartość domyślna | Sposób użycia |
|---|---|---|
| Pomiń URL bieżącej strony | Tak | Pomija grupę, której ścieżka docelowa pasuje do bieżącej strony. |
| Wyklucz nagłówki | Tak | Pomija tekst, którego bezpośrednim elementem nadrzędnym jest nagłówek. Osobno sprawdź niestandardowy kod zagnieżdżonych nagłówków. |
| Wyklucz tekst pogrubiony | Nie | Pomija tekst, którego bezpośrednim elementem nadrzędnym jest strong lub b. |
| "Excluded pages" | Puste | Wybierz strony CMS, które nie mogą być przetwarzane. |
Wybrane wykluczone strony CMS są zapisywane w postaci takiej jak {"cms":[3,4,6]}. Używaj formularza, zamiast bezpośrednio edytować zapisane dane.
Tworzenie grupy linków
Otwórz Grupy linków i dodaj jedną grupę o wąskim zakresie.
| Pole | Wartość domyślna nowej grupy | Co wpisać |
|---|---|---|
| Nazwa | Puste | Wymagana etykieta wewnętrzna. |
| Encja docelowa | Puste | Opcjonalny pojedynczy produkt, kategoria, strona CMS, producent lub dostawca jako cel. |
| Docelowy URL | Puste | Wymagany URL docelowy; wybór encji może go uzupełnić. Dla ręcznego celu użyj względnego lub bezwzględnego URL. |
| Docelowy URL (nadpisanie językowe) | Puste | Ręczny zastępczy URL dla danego języka. Uwzględnij właściwą ścieżkę języka. |
| Słowa kluczowe | Puste | Wymagane terminy rozdzielone przecinkami. |
| Słowa kluczowe (nadpisanie językowe) | Puste | Opcjonalne przetłumaczone terminy; puste pole korzysta z podstawowych słów kluczowych. |
| Strefy treści | Puste | Wybierz "Product description (long)", "Product short description", "Category description", "CMS page content", "Blog post content", "Manufacturer description" lub "Supplier description". Puste pole korzysta z selektorów zastępczych. |
| Typy stron | Puste | Ogranicz przetwarzanie do stron produktów, kategorii, CMS, bloga, producentów, dostawców lub strony głównej. Puste pole nie nakłada filtra typu strony na grupę. |
| Pozycja linku | "First occurrence" | Oferuje opcje pierwszego, środkowego, ostatniego i rozproszonego położenia. Zmiana wyboru nie zmienia położenia linków. |
| Maks. linków z tej grupy | 0 | Użyj globalnej wartości domyślnej dla grup. Wpisz dodatnią wartość, aby ją nadpisać. |
| Ignoruj wielkość liter | Tak | Dopasowuj bez rozróżniania wielkości liter. |
| Dodaj tag | Nie | Otocz dopasowany tekst kotwicy znacznikiem strong. |
| Włącz ogólny limit linków | Nie | Istniejące linki do celu wliczają się do limitu grupy niezależnie od tego, czy to pole jest włączone. |
| Cel linku | Puste | Użyj globalnej wartości domyślnej lub nadpisz ją za pomocą _self albo _blank. |
| Atrybut rel linku | Puste | Użyj globalnej wartości domyślnej lub podaj wartość dla grupy. |
| Klasa CSS linku | Puste | Użyj globalnej wartości domyślnej lub podaj wartość dla grupy. |
| Selektory CSS (zaawansowane) | Puste | Nadpisz globalne selektory, gdy nie wybrano stref treści. |
| Tagi HTML (zaawansowane) | Puste | Nadpisz globalne tagi, np. p,li. |
| Priorytet | 0 | Niższe wartości są przetwarzane wcześniej. |
| Aktywny | Tak | Wyłącz grupę bez jej usuwania. |
Gdy cel encji zostanie poprawnie rozwiązany, URL encji w bieżącym języku ma pierwszeństwo przed ręcznym nadpisaniem URL dla języka. Aby w pełni kontrolować cel za pomocą ręcznych adresów URL dla języków, pozostaw Encja docelowa puste.
Na przykład:
Name: Shower trays
Target URL: /12-shower-trays
Keywords: shower tray, shower trays, walk-in shower tray
Content Zones: Product description (long), Product short description
Page Types: product
Max links from this group: 1
Ignore case: Yes
Active: Yes
Składnia słów kluczowych obsługuje * wewnątrz terminu oraz alternatywy rozdzielone |:
shower tray, walk-in shower tray, shower*, seo|search engine|SEO tool
Symbol wieloznaczny dopasowuje znaki inne niż białe znaki wewnątrz terminu. Nie zastępuje dowolnego tekstu obejmującego wiele słów.
Weryfikacja linków i stylów motywu
Zapisz grupę, a następnie otwórz stronę z pasującą frazą w wybranej strefie. Sprawdź adres docelowy, tekst, target, rel i klasę linku. Sprawdź stronę wykluczoną oraz stronę bez tej frazy.
Istniejące kotwice są pomijane. Istniejące linki do tego samego celu zmniejszają dodatni limit tej grupy. Zapisane opisy produktów, kategorii, CMS i bloga pozostają bez zmian, ponieważ wstawianie odbywa się podczas renderowania.
Wygenerowany link może wyglądać tak:
<p>Choose a <a href="/12-shower-trays" class="mpr-autolink">shower tray</a> for your bathroom.</p>
Z włączonymi atrybutami grupy:
<a href="/12-shower-trays" target="_blank" rel="noopener" class="internal-seo-link"><strong>shower tray</strong></a>
Możesz nadać automatycznym linkom styl w motywie:
.mpr-autolink {
text-decoration: underline;
text-underline-offset: 2px;
}
Panel pokazuje grupy, słowa kluczowe, wykorzystanie stref i encji, ostatnie grupy oraz pokrycie katalogu. Nie weryfikuje każdej możliwej strony źródłowej.
Import i eksport CSV
Użyj "Import CSV" lub Eksportuj CSV w Grupy linków. Import tworzy nowe rekordy. Nie aktualizuje istniejących grup według nazwy, więc ponowny import eksportu może utworzyć duplikaty. Przed importem wybierz właściwy kontekst sklepu.
Wymagane kolumny:
name,target_url,keywords
Pełny zestaw eksportowanych kolumn:
name,target_url,keywords,link_position,max_links,ignore_case,add_strong,link_target,link_rel,link_class,content_zones,page_types,entity_type,entity_id,position,active
Przykład:
Shower trays,/12-shower-trays,"shower tray, shower trays, shower*",first,1,1,0,_self,,mpr-autolink,"[""product_description""]","[""product""]",category,12,10,1
Używaj rozszerzenia .csv małymi literami i przecinków jako separatorów. Sprawdź liczbę zaimportowanych i pominiętych pozycji. Ten format eksportu nie obejmuje przetłumaczonych nadpisań słów kluczowych/URL ani wszystkich zaawansowanych pól, więc zachowaj kopię bazy danych, jeśli potrzebujesz pełnego przywrócenia.
Rozwiązywanie problemów i odinstalowanie
Przy brakujących linkach sprawdź Aktywny, bieżący język, rozwiązywanie celu, typ strony, selektory strefy, dozwolone tagi nadrzędne i oba limity. Sprawdź, czy cel jest bieżącym URL lub ma już wystarczającą liczbę linków. Słowo kluczowe rozdzielone między elementy HTML może nie pasować do jednego segmentu tekstu.
Włącz Włącz profilowanie debugowania i wpisz swój IP w Adresy IP debugowania. Sprawdź źródło strony w pobliżu zamykającego tagu body, aby znaleźć "MPR Internal Linking Debug v2.0", typ strony, liczbę istniejących linków, liczbę wygenerowanych linków i dopasowania grup. Odpowiedzi debugowania są oznaczane jako private i no-store. Po zakończeniu wyłącz debugowanie.
Użyj Ustawienia > Integralność do kontroli infrastruktury. Po zmianach odśwież odpowiednią pamięć podręczną stron.
Wyłącz grupy lub moduł, aby tymczasowo zatrzymać wstawianie. Odinstalowanie usuwa menu administracyjne, ustawienia, preferencje i zapisane grupy linków. Najpierw wyeksportuj grupy lub wykonaj ich kopię zapasową. Zapisane teksty katalogu i CMS pozostają bez zmian.
Pytania
2
Czy automatyczne linki naruszają moją nawigację, okruszki (breadcrumbs) lub dane strukturalne JSON-LD?
Przetwarzanie całej strony przez Automatic Internal SEO Linker działa w skonfigurowanych obszarach treści wewnątrz <body>. Sekcja <head> jest wyłączona. Domyślne dozwolone tagi bezpośrednich elementów nadrzędnych tekstu to p,div,span,blockquote,li,td; <script> nie jest na tej liście.
Nawigacja i okruszki pozostają poza przetwarzaniem, jeśli Twoje strefy lub selektory je wykluczają. Wybieraj wąskie obszary i sprawdzaj końcowy wynik, w tym osadzone w nich dane JSON-LD. Niestandardowy kod HTML nie jest objęty ogólną ochroną.
Czy automatyczne wstawianie linków wymaga śledzenia odwiedzających?
Dopasowywanie słów kluczowych przez Automatic Internal SEO Linker nie wymaga skryptu śledzącego odwiedzających ani pliku cookie zgody.
Moduł odczytuje skonfigurowane grupy linków i przetwarza HTML sklepu na serwerze przed zwróceniem odpowiedzi.
Znane problemy
12
Wykluczone strony list nadal otrzymywały linki
Wykluczenia CMS nie zapisywały się spójnie
Importy CSV używały niewłaściwego kontekstu sklepu
Brak linków wewnętrznych w starszych wersjach PrestaShop
Etykiety panelu administracyjnego pozostawały po angielsku
Uszkodzone tłumaczenia etykiet
Niezmienione wskazanie celu wybierało wszystko
Brak ikon przy łączeniu zasobów
Przetłumaczone strony linkowały do slugów w złym języku
Automatyczne linki wstawiano wewnątrz istniejących linków
Linki poza treścią zużywały limit strony
Nieprawidłowe linkowanie przy fragmentach HTML
Zgłoszenia funkcji
5
Zaimplementowane
Wykluczenia stron CMS z automatycznego linkowania
Automatyczne linki słów kluczowych
Wykluczenia stron
Sprawdzanie i naprawa instalacji
Aktualizacje modułu jednym kliknięciem
Dziennik zmian
v3.0.92026-08-30
- AddedAdmin UI for excluded pages — checkbox grid in Exclusions tab
- Addedcomplete FR/DE/ES/IT/PL translations
- ImprovedSync fragment-aware internal linking engine
- ImprovedV3.0.0 — 19x faster link injection engine + shared package + page exclusion
- ImprovedPre-scan CSS selectors to eliminate redundant regex scans
- FixedResolve localized internal link targets
- FixedSync entity selector package
- FixedVendor prestashop-admin as module files
- FixedExisting-link counting scoped to content regions (package update)
Starsze wersje
v2.1.02026-04-20
- Addedself-healing integrity checks for automatic diagnostics and repair
- Addedadmin menu management via MenuInstaller for streamlined module setup
- AddedLicense management tab with key management and renewal options
- Addedcomplete FR/DE/ES/IT/PL translations
- Improvedsettings form organization with tabbed layout
- FixedPrevent autolinking inside existing anchor tags
- Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns
v1.2.02025-09-10
- Addedlink group management: bundle related keyword-URL pairs and enable/disable as a set
- Improvedcase-insensitive matching with configurable per-rule override
- Fixedlinks being injected inside existing <a> tags causing nested anchor violations
- Addedmax-links-per-page limit with configurable threshold
v2.0.02025-08-01
- Addedfull compatibility with PrestaShop 9.x and Hummingbird theme
- Complete architecture rewrite: link rules now stored as a versioned JSON document for faster import/export
- AddedCSS selector targeting: apply linking rules only within specified content containers
- Improvedregex-based keyword matching with optional word boundary enforcement
- Addedper-link attribution — track click-throughs via a lightweight redirect proxy
- Fixedmemory exhaustion on pages with very long product descriptions containing repeated keywords
v1.1.02025-05-15
- Addedbulk import/export of keyword-URL rules via CSV
- Improvedexclusion list: skip linking on CMS pages, specific categories, or product IDs
- Fixedduplicate link injection when the same keyword appeared in page title and body
- Addednofollow/noopener attribute toggle per rule
v1.0.02025-01-17
- Initialrelease: automatic keyword-to-URL linking for product descriptions and CMS content
- InitialAdmin rule builder with keyword, target URL, and match-count-per-page settings
- InitialProcessed server-side using DOMDocument — no JavaScript dependency
- InitialMulti-language support for keyword sets and target URLs
Demo
Przetestuj pełny moduł przed zakupem
Licencję kupisz później, a ustawienia zostaną.
- Twoje 30-dniowe demo Przetestuj go we własnym sklepie przez 30 dni od pierwszej instalacji.
- Gotowy sklep demo Poznaj gotowy sklep demo w przeglądarce.
- Bez rejestracji Bez konta, adresu e-mail ani domeny sklepu.
Pobierając, akceptujesz warunki dema i politykę prywatności.
Otwierając to demo, akceptujesz regulamin wersji demo oraz politykę prywatności.