Hookok: webhelyellenőrzés, törött linkek és 404-figyelés
Nyolc hook a SEOPress PRO webhelyellenőrzéséhez, a törött linkek keresőjéhez és a 404-figyeléshez: lefutás utáni műveletek, lekérdezések szűrői, a kizárt URL-ek és a robotok listája.
Ez a fejezet a webhelyellenőrzés (SEO → Audit), a törött linkek keresője (SEO → Törött linkek) és a 404-figyelés (SEO → PRO → Átirányítások / 404) hookjait gyűjti össze. A funkciók beállításairól az Átirányítások, a Törött linkek és a Webhelyellenőrzés fejezet szól. A hookok használatának általános szabályait a Composer és hookok használata fejezet írja le. A kódot a gyermeksablonod functions.php fájljába vagy egy saját bővítménybe tedd.
| Hook | Típus | Legkisebb verzió | Mire jó |
|---|---|---|---|
seopress_broken_links_after_scan |
művelet | 9.8 | Kód futtatása, amikor a törött linkek keresése végzett. |
seopress_after_create_404 |
művelet | 8.8 | Kód futtatása egy új 404-es hiba naplózása után. |
seopress_site_audit_after_processs |
művelet | 8.3 | Kód futtatása, amikor a webhelyellenőrzés végzett. |
seopress_site_audit_query |
szűrő | 8.2 | A webhelyellenőrzés tartalomlekérdezésének módosítása. |
seopress_404_cleaning_query |
szűrő | 3.1 | A régi 404-es naplóbejegyzéseket törlő időzített feladat lekérdezésének módosítása. |
seopress_bot_query |
szűrő | 3.6.4, 7.2 | A törött linkeket kereső feladat lekérdezésének módosítása. |
seopress_404_exclude |
szűrő | 3.2 | URL-ek kizárása a 404-figyelésből. |
seopress_404_bots |
szűrő | 3.0 | A 404-figyelésből kizárt robotok listájának módosítása. |
Művelet a törött linkek keresése után
Szekció neve “Művelet a törött linkek keresése után”A seopress_broken_links_after_scan művelet akkor fut le, amikor a törött linkek keresése az összes tartalmon végigért, és a SEOPress elmentette a keresés időpontját. Paramétere nincs. A SEOPress ezt használja az értesítő e-mail elküldésére is, te is erre kapaszkodhatsz, például egy saját értesítéshez.
add_action( 'seopress_broken_links_after_scan', 'sajat_toro_linkek_utan' );function sajat_toro_linkek_utan() { // Például bejegyzés a naplóba. error_log( 'A törött linkek keresése befejeződött.' );}Művelet új 404-es hiba után
Szekció neve “Művelet új 404-es hiba után”A seopress_after_create_404 művelet minden olyan alkalommal lefut, amikor a SEOPress egy még nem látott URL-hez új 404-es naplóbejegyzést hoz létre. Egyetlen paramétert kap: az új bejegyzés azonosítóját. Ha az URL már szerepel a naplóban, a SEOPress csak a számlálót növeli, és ez a művelet nem fut le.
add_action( 'seopress_after_create_404', 'sajat_uj_404_utan' );function sajat_uj_404_utan( $id ) { // Az új 404-es naplóbejegyzés URL-je (a bejegyzés címe). error_log( 'Új 404: ' . get_the_title( $id ) );}Művelet a webhelyellenőrzés után
Szekció neve “Művelet a webhelyellenőrzés után”A seopress_site_audit_after_processs (a név végén három „s” van) akkor fut le, amikor a webhelyellenőrzés az összes tartalmat feldolgozta. Paramétere nincs. A telepített bővítményben ez a hook elavultként van megjelölve, helyette a seopress_site_audit_after_process név (két „s”-sel) az újabb. Mindkettő ugyanakkor lefut, ezért új kódhoz az újabb nevet használd.
add_action( 'seopress_site_audit_after_process', 'sajat_audit_utan' );function sajat_audit_utan() { // Például a gyorsítótár ürítése az ellenőrzés után. error_log( 'A webhelyellenőrzés befejeződött.' );}A webhelyellenőrzés lekérdezésének szűrése
Szekció neve “A webhelyellenőrzés lekérdezésének szűrése”A seopress_site_audit_query szűrő a get_posts() lekérdezés paramétereit adja át, még mielőtt a webhelyellenőrzés a következő köteg tartalmat lekérné. Öt értéket kap:
| Paraméter | Jelentése |
|---|---|
$args |
A lekérdezés paramétereinek tömbje (posts_per_page, offset, post_type, post_status, fields). |
$batch_size |
Egy köteg mérete. |
$offset |
Honnan folytatja a feldolgozást. |
$cpt |
A vizsgált tartalomtípus. |
$cpt_status |
A vizsgált állapotok. |
Visszatérési értéknek a módosított $args tömböt add vissza.
add_filter( 'seopress_site_audit_query', 'sajat_audit_lekerdezes', 10, 5 );function sajat_audit_lekerdezes( $args, $batch_size, $offset, $cpt, $cpt_status ) { // Például a 12-es kategória tartalmait ne ellenőrizze. $args['category__not_in'] = array( 12 ); return $args;}A 404-naplót takarító feladat lekérdezésének szűrése
Szekció neve “A 404-naplót takarító feladat lekérdezésének szűrése”Ha a 404-es naplók automatikus törlése be van kapcsolva, egy időzített feladat törli azokat a naplóbejegyzéseket, amelyek egy hónapnál régebbiek, és amelyekhez nincs átirányítás beállítva. A seopress_404_cleaning_query szűrő ennek a WP_Query lekérdezésnek a paramétereit adja át. Alapértelmezés szerint a bejegyzés típusa seopress_404, a feltétel pedig az, hogy a bejegyzés egy hónapnál régebbi legyen. Visszatérési értéknek a módosított tömböt add vissza.
add_filter( 'seopress_404_cleaning_query', 'sajat_404_takaritas' );function sajat_404_takaritas( $args ) { // Csak a három hónapnál régebbi bejegyzéseket töröld. $args['date_query'] = array( array( 'column' => 'post_date_gmt', 'before' => '3 months ago', ), ); return $args;}A törött linkeket kereső feladat lekérdezésének szűrése
Szekció neve “A törött linkeket kereső feladat lekérdezésének szűrése”A seopress_bot_query szűrő a törött linkek keresője által lekért tartalmak get_posts() paramétereit adja át. Három értéket kap: a paraméterek tömbjét (posts_per_page, offset, post_type, post_status, orderby, order, fields, cache_results), az aktuális eltolást és a vizsgált tartalomtípust. Alapból csak a közzétett tartalmak szerepelnek, dátum szerint csökkenő sorrendben. Visszatérési értéknek a módosított tömböt add vissza.
add_filter( 'seopress_bot_query', 'sajat_torott_link_lekerdezes', 10, 3 );function sajat_torott_link_lekerdezes( $args, $offset, $cpt ) { // A legrégebbi tartalmak kerüljenek előre. $args['order'] = 'ASC'; return $args;}URL-ek kizárása a 404-figyelésből
Szekció neve “URL-ek kizárása a 404-figyelésből”A seopress_404_exclude szűrő azoknak az URL-részleteknek a tömbjét adja át, amelyekre a SEOPress nem naplóz 404-es hibát. Alapból két elem van benne: wp-content/cache és ^purge/. A SEO → PRO → Átirányítások / 404 oldalon megadott kizárt útvonalak is ide kerülnek. A mintákat a SEOPress a kérés URL-jéhez (a webhely címe nélküli részhez) hasonlítja:
| Minta | Mikor egyezik |
|---|---|
Ponttal kezdődik (például .js) |
Az URL erre a végződésre ér véget. A kis- és nagybetű nem számít. |
^ jellel kezdődik (például ^purge/) |
Az URL ezzel kezdődik. A ^ után álló kezdő perjel nem számít. |
| Bármi más | Az URL bárhol tartalmazza a szöveget. |
Visszatérési értéknek a kiegészített tömböt add vissza.
add_filter( 'seopress_404_exclude', 'sajat_404_kizarasok' );function sajat_404_kizarasok( $kizart ) { $kizart[] = '^api/'; // Az „api/” kezdetű kérések. $kizart[] = '.map'; // A „.map” végű fájlok. $kizart[] = 'ideiglenes'; // Bármi, ami tartalmazza a „ideiglenes” szöveget. return $kizart;}A 404-figyelésből kizárt robotok listája
Szekció neve “A 404-figyelésből kizárt robotok listája”A SEOPress nem naplózza a robotoktól érkező 404-es hibákat. A seopress_404_bots szűrő azt a reguláris kifejezést adja át, amellyel a böngésző azonosítóját (user agent) összeveti. Szöveget kapsz (a /…/i formában megírt kifejezést), és ugyanilyen szöveget kell visszaadnod. Ha a visszaadott érték üres, a SEOPress semmit nem tekint robotnak, így minden kérés naplózódik.
add_filter( 'seopress_404_bots', 'sajat_robotok' );function sajat_robotok( $regex ) { // Egy saját figyelő robot hozzáadása a listához. return str_replace( '/bot|', '/bot|sajatfigyelo|', $regex );}Készült: