Navigációs morzsa hookok: archívum-elem, elemek, elválasztó, HTML és CSS
Hét további hook a SEOPress PRO navigációs morzsájához: az egyedi tartalomtípus archívum-eleme, a morzsaelemek listája, az elválasztó jel, a teljes HTML, a beágyazott CSS, valamint a morzsa előtt és után kiírt tartalom.
Ez a fejezet a navigációs morzsa (breadcrumb) további hookjait gyűjti össze. A morzsa beállításairól a Navigációs morzsa (breadcrumbok) fejezet szól, a JSON-LD, az osztályok, a kategóriák és az utolsó elem hookjai a Navigációs morzsa hookok: JSON-LD, osztályok, utolsó elem, kategóriák és CSS fejezetben vannak. 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_breadcrumbs_force_archive_name |
szűrő | 4.5 | Az egyedi tartalomtípus archívum-elemének kiírása akkor is, ha nincs archívumoldala. |
seopress_pro_breadcrumbs_remove_cpt |
szűrő | 3.8.8 | Az egyedi tartalomtípus archívum-elemének törlése az egyedi nézet morzsájából. |
seopress_pro_breadcrumbs_html |
szűrő | 3.6.5 | A kész HTML-morzsa módosítása. |
seopress_pro_breadcrumbs_crumbs |
szűrő | 3.6 | A morzsaelemek tömbjének módosítása. |
seopress_pro_breadcrumbs_sep |
szűrő | 2.8 | Az elemek közötti elválasztó jel módosítása. |
seopress_pro_breadcrumbs_css |
szűrő | 2.8 | A morzsa beágyazott CSS-ének módosítása. |
seopress_breadcrumbs_before_html, seopress_breadcrumbs_after_html |
művelet | 2.1 | Tartalom kiírása a morzsa előtt vagy után. |
Az egyedi tartalomtípus archívum-elemének kiírása
Szekció neve “Az egyedi tartalomtípus archívum-elemének kiírása”Egyedi tartalomtípus (CPT) archívumoldalának nevét a morzsa linkként mutatja. Ha a tartalomtípusnak nincs archívumoldala (a regisztrációjakor az archívum ki van kapcsolva), az elem alapból hiányzik. A seopress_breadcrumbs_force_archive_name szűrő alapértéke false; true-ra állítva a morzsa ilyenkor is kiírja a tartalomtípus nevét, link nélkül.
add_filter( 'seopress_breadcrumbs_force_archive_name', '__return_true' );Az archívum-elem törlése az egyedi nézet morzsájából
Szekció neve “Az archívum-elem törlése az egyedi nézet morzsájából”Egyedi tartalomtípus egyetlen bejegyzésének oldalán a morzsa az archívum linkjét is tartalmazza. A seopress_pro_breadcrumbs_remove_cpt szűrő két értéket kap: a morzsaelemet (tömb: 0 a felirat, 1 az archívum URL-je) és a tartalomtípus objektumát. Ha false értéket adsz vissza, az elem kimarad a morzsából.
add_filter( 'seopress_pro_breadcrumbs_remove_cpt', 'sajat_archivum_elem_torlese', 10, 2 );function sajat_archivum_elem_torlese( $elem, $tartalomtipus ) { // Csak a „konyv” tartalomtípusnál tűnjön el az archívum-elem. if ( 'konyv' === $tartalomtipus->name ) { return false; } return $elem;}Ha minden tartalomtípusnál el akarod távolítani, elég ennyi:
add_filter( 'seopress_pro_breadcrumbs_remove_cpt', '__return_false' );A kész HTML-morzsa módosítása
Szekció neve “A kész HTML-morzsa módosítása”A seopress_pro_breadcrumbs_html szűrő a teljes, kész HTML-morzsát (a <nav> elemet a benne lévő listával) adja át szövegként, még mielőtt a SEOPress kiírná. Visszaadott értékként a módosított HTML-t add vissza.
add_filter( 'seopress_pro_breadcrumbs_html', 'sajat_morzsa_html' );function sajat_morzsa_html( $html ) { // Például egy saját dobozba csomagolod a morzsát. return '<div class="sajat-morzsa-doboz">' . $html . '</div>';}A morzsaelemek listájának módosítása
Szekció neve “A morzsaelemek listájának módosítása”A seopress_pro_breadcrumbs_crumbs szűrő a morzsába kerülő elemek tömbjét adja át, még a HTML és a JSON-LD összeállítása előtt. Minden elem egy tömb: a 0 index a felirat, az 1 az URL (az utolsó elemnél és az archívum-név kiírásakor hiányozhat), a 2 az oldal vagy az osztályozási elem azonosítója (ha van). A szűrő a HTML-morzsát és a JSON-LD-t is érinti.
add_filter( 'seopress_pro_breadcrumbs_crumbs', 'sajat_morzsa_elemek_lista' );function sajat_morzsa_elemek_lista( $elemek ) { // Az első elem (a kezdőlap) feliratának átírása. if ( ! empty( $elemek[0] ) ) { $elemek[0][0] = 'Főoldal'; } return $elemek;}Ha a szűrőben elemet törölsz (unset), a JSON-LD-ben a pozíciók sorrendje így is folyamatos marad, mert a SEOPress újraindexeli a listát.
Az elválasztó jel módosítása
Szekció neve “Az elválasztó jel módosítása”A morzsaelemek közé kerülő jelet a SEO → PRO → Breadcrumbok fülön a Breadcrumb-elválasztó mező adja meg. A seopress_pro_breadcrumbs_sep szűrő ezt az értéket írja felül kódból. A szűrő a jelet szóközökkel körülvéve adja át (alapértelmezésként a - szöveget), és ugyanezt az elválasztót használja a beágyazott CSS is.
add_filter( 'seopress_pro_breadcrumbs_sep', 'sajat_morzsa_elvalaszto' );function sajat_morzsa_elvalaszto( $jel ) { return ' › ';}A beágyazott CSS módosítása
Szekció neve “A beágyazott CSS módosítása”A seopress_pro_breadcrumbs_css szűrő a morzsa beágyazott stíluslapját adja át a <style>…</style> elemmel együtt, szövegként. Visszaadott értékként a módosított szöveget add vissza. A CSS teljes eltávolítása (remove_action) a JSON-LD, osztályok, utolsó elem, kategóriák és CSS fejezetben szerepel.
add_filter( 'seopress_pro_breadcrumbs_css', 'sajat_morzsa_css' );function sajat_morzsa_css( $css ) { // A saját szabályok hozzáadása a meglévőkhöz. return $css . '<style>.breadcrumb a{text-decoration:none;}</style>';}Tartalom a morzsa előtt és után
Szekció neve “Tartalom a morzsa előtt és után”A két művelet a morzsa HTML-jét közrefogja: a seopress_breadcrumbs_before_html közvetlenül előtte, a seopress_breadcrumbs_after_html közvetlenül utána fut le. A morzsa kiírása előtt vagy után így bármit megjeleníthetsz, például egy feliratot vagy egy elválasztóvonalat. A két művelet csak akkor fut, ha a SEO → PRO → Breadcrumbok fülön a morzsa be van kapcsolva.
add_action( 'seopress_breadcrumbs_before_html', 'sajat_morzsa_elott' );function sajat_morzsa_elott() { echo '<p class="morzsa-felirat">Itt vagy:</p>';}
add_action( 'seopress_breadcrumbs_after_html', 'sajat_morzsa_utan' );function sajat_morzsa_utan() { echo '<hr class="morzsa-vonal">';}Készült: