Metaadat-hookok: dinamikus változók
Hookok a dinamikus változók módosításához: egyedi mező, taxonómia, URL, kép, oldalszám, kategória, címke, WooCommerce-változók, saját változók és a kivonat hossza.
A címekben, leírásokban és közösségi metaadatokban használt dinamikus változók (például %%post_title%%) értékét hookokkal módosíthatod. A változók listáját és használatát a Dinamikus változók fejezet írja le, az egyedi mezők kezeléséről az Egyedi mezők listája fejezetben olvashatsz. A hookok használatának általános szabályait a Composer és hookok használata fejezet foglalja össze. A kódot a gyermeksablonod functions.php fájljába vagy egy saját bővítménybe tedd.
| Hook | Változó | Legkisebb verzió | Paraméterek |
|---|---|---|---|
seopress_titles_custom_field |
%%_cf_mezőnév%% |
6.7 | érték, a mező neve |
seopress_titles_user_meta |
%%_ucf_felhasználói_meta%% |
6.7 | érték, a meta kulcsa |
seopress_get_tag__ct_{$taxonomy}_value |
%%_ct_taxonómia%% |
3.9 | érték, környezet |
seopress_get_tag_post_url_value |
%%post_url%% |
4.0 | érték, környezet |
seopress_get_tag_post_thumbnail_url_value |
%%post_thumbnail_url%% |
3.7.8 | érték, környezet |
seopress_context_paged |
%%page%% |
3.7.7 | érték |
Mindegyik hook szűrő: megkapja a változó kiszámolt értékét, és a visszaadott szöveg kerül a metaadatba.
Egyedi mező: %%_cf_mezőnév%%
Szekció neve “Egyedi mező: %%_cf_mezőnév%%”A %%_cf_%% előtagú változó egy bejegyzés egyedi mezőjének (post meta) értékét írja ki. A seopress_titles_custom_field szűrő a kiszámolt értéket és a mező nevét kapja.
add_filter( 'seopress_titles_custom_field', 'sajat_egyedi_mezo', 10, 2 );function sajat_egyedi_mezo( $ertek, $mezo ) { if ( 'ar' === $mezo ) { return $ertek . ' Ft'; } return $ertek;}Az érték a szűrő előtt megtisztított: a HTML és a rövidkódok kikerülnek belőle, és legfeljebb 30 szóra rövidül.
Felhasználói meta: %%_ucf_felhasználói_meta%%
Szekció neve “Felhasználói meta: %%_ucf_felhasználói_meta%%”A %%_ucf_%% előtagú változó a szerző felhasználói metaadatát írja ki. A seopress_titles_user_meta szűrő az értéket és a meta kulcsát kapja.
add_filter( 'seopress_titles_user_meta', 'sajat_felhasznaloi_meta', 10, 2 );function sajat_felhasznaloi_meta( $ertek, $kulcs ) { if ( 'beosztas' === $kulcs ) { return strtolower( $ertek ); } return $ertek;}Egyedi taxonómia: %%_ct_taxonómia%%
Szekció neve “Egyedi taxonómia: %%_ct_taxonómia%%”A %%_ct_%% előtagú változó egy egyedi taxonómia kifejezésének nevét írja ki: az elsődleges kategóriát, ha a szerkesztő választott, ennek hiányában az első hozzárendeltet. A hook neve a taxonómia slugjától függ. Az előtag aláhúzásjelét a hook neve megtartja, ezért a hook neve seopress_get_tag__ct_{taxonómia}_value, két aláhúzással a tag után. Például a %%_ct_category%% változót a seopress_get_tag__ct_category_value szűri.
add_filter( 'seopress_get_tag__ct_category_value', 'sajat_kategoria_ertek', 10, 2 );function sajat_kategoria_ertek( $ertek, $kontextus ) { return mb_strtoupper( $ertek );}A régi, egy aláhúzásos névre (seopress_get_tag_ct_category_value) regisztrált szűrők továbbra is lefutnak, de elavultnak számítanak, ezért az új névre érdemes átírni őket. Ismeretlen taxonómia esetén az érték változatlan marad.
Bejegyzés URL-je: %%post_url%%
Szekció neve “Bejegyzés URL-je: %%post_url%%”A seopress_get_tag_post_url_value szűrő a bejegyzés permalinkjét és a feloldási környezetet kapja. Az érték csak egyedi (single) nézetben jön létre, más oldaltípusokon üres.
add_filter( 'seopress_get_tag_post_url_value', 'sajat_post_url', 10, 2 );function sajat_post_url( $ertek, $kontextus ) { return add_query_arg( 'forras', 'kereso', $ertek );}A régi seopress_titles_post_url szűrő elavult, az újat használd.
Kiemelt kép URL-je: %%post_thumbnail_url%%
Szekció neve “Kiemelt kép URL-je: %%post_thumbnail_url%%”A seopress_get_tag_post_thumbnail_url_value szűrő a bejegyzés kiemelt képének URL-jét kapja. Így például egy tartalék képet is megadhatsz, ha nincs kiemelt kép.
add_filter( 'seopress_get_tag_post_thumbnail_url_value', 'sajat_kiemelt_kep', 10, 2 );function sajat_kiemelt_kep( $ertek, $kontextus ) { if ( empty( $ertek ) ) { return home_url( '/wp-content/uploads/alap-kep.jpg' ); } return $ertek;}A régi seopress_titles_post_thumbnail_url szűrő elavult.
Oldalszám: %%page%%
Szekció neve “Oldalszám: %%page%%”A %%page%% változó a lapozott oldalakon az aktuális és az összes oldal számát adja („2. oldal, összesen 5” jellegű szövegként, a webhely nyelvén), és csak a második és későbbi oldalakon ír ki valamit, az első oldalon üres. A seopress_context_paged szűrő ezt a szöveget módosítja (például átfogalmazza).
add_filter( 'seopress_context_paged', 'sajat_oldalszam' );function sajat_oldalszam( $szoveg ) { return mb_strtolower( $szoveg );}A szűrő a változót használó összes helyen érvényesül, így a címben, a leírásban és a közösségi metaadatokban is.
Kategória és címke: %%post_category%% és %%post_tag%%
Szekció neve “Kategória és címke: %%post_category%% és %%post_tag%%”Egyedi (single) bejegyzésnél a %%post_category%% a bejegyzés kategóriájának nevét adja: az elsődleges kategóriát, ha van, ennek hiányában az elsőt. A %%post_tag%% a bejegyzés első címkéjének nevét adja. Mindkettő üres marad, ha a bejegyzésnek nincs kategóriája vagy címkéje, vagy ha nem egyedi nézeten vagy. A két szűrő az értéket és a feloldási környezetet kapja.
| Hook | Változó | Legkisebb verzió |
|---|---|---|
seopress_get_tag_post_category_value |
%%post_category%% |
3.7.2 |
seopress_get_tag_post_tag_value |
%%post_tag%% |
4.4 |
add_filter( 'seopress_get_tag_post_category_value', 'sajat_kategoria', 10, 2 );function sajat_kategoria( $ertek, $kontextus ) { return mb_strtoupper( $ertek );}
add_filter( 'seopress_get_tag_post_tag_value', 'sajat_cimke', 10, 2 );function sajat_cimke( $ertek, $kontextus ) { return $ertek ? $ertek : 'Általános';}A régi seopress_titles_cat és seopress_titles_tag szűrő elavult, az újakat használd.
WooCommerce-termék kategóriái és címkéi: %%wc_single_cat%% és %%wc_single_tag%%
Szekció neve “WooCommerce-termék kategóriái és címkéi: %%wc_single_cat%% és %%wc_single_tag%%”Termékoldalon (és csak aktív WooCommerce mellett) a %%wc_single_cat%% a termék kategóriáinak, a %%wc_single_tag%% a termék címkéinek nevét írja ki vesszővel elválasztva. A két szűrő a kész szöveget és a környezetet kapja.
| Hook | Változó | Legkisebb verzió |
|---|---|---|
seopress_get_tag_wc_single_cat_value |
%%wc_single_cat%% |
3.7.2 |
seopress_get_tag_wc_single_tag_value |
%%wc_single_tag%% |
3.7.2 |
add_filter( 'seopress_get_tag_wc_single_cat_value', 'sajat_termek_kategoria', 10, 2 );function sajat_termek_kategoria( $ertek, $kontextus ) { // Csak az első kategória maradjon. $reszek = explode( ', ', $ertek ); return $reszek[0];}A régi seopress_titles_product_cat és seopress_titles_product_tag szűrő elavult.
Saját változók hozzáadása és a változók tömbje
Szekció neve “Saját változók hozzáadása és a változók tömbje”A SEOPress a dinamikus változókat két párhuzamos tömbből helyettesíti be: az egyikben a változók nevei állnak (például %%post_title%%), a másikban a hozzájuk tartozó értékek, azonos sorrendben. Három szűrővel nyúlhatsz bele.
| Hook | Mit kap | Legkisebb verzió |
|---|---|---|
seopress_titles_template_variables_array |
a változónevek tömbje | 3.6.2 |
seopress_titles_template_replace_array |
az értékek tömbje | 3.6.2 |
seopress_titles_template_variables |
az összes adat egy tömbben | 3.7.7 |
Saját globális változót úgy adhatsz a címhez és a meta leíráshoz, hogy mindkét tömbhöz hozzáadsz egy elemet. A két tömb sorrendjének egyeznie kell.
add_filter( 'seopress_titles_template_variables_array', 'sajat_valtozo_nev' );function sajat_valtozo_nev( $nevek ) { $nevek[] = '%%sajat_szlogen%%'; return $nevek;}
add_filter( 'seopress_titles_template_replace_array', 'sajat_valtozo_ertek' );function sajat_valtozo_ertek( $ertekek ) { $ertekek[] = 'Kézzel készített kerámia'; return $ertekek;}Ezután a SEO → Titles & Metas oldalon a címekbe és leírásokba beírhatod a %%sajat_szlogen%% változót.
A seopress_titles_template_variables szűrő az egész csomagot egyben adja át: a két tömböt és a kivonat hosszát (seopress_excerpt_length) is. Ha egyszerre több dolgot módosítanál, használd ezt, és a módosított csomagot add vissza.
Kivonat hossza a metaadatokban: seopress_excerpt_length
Szekció neve “Kivonat hossza a metaadatokban: seopress_excerpt_length”Ha a metaleírás a bejegyzés elejét vagy kivonatát használja, a SEOPress alapból 50 szóig vág. A seopress_excerpt_length szűrő ezt a számot kapja, és a visszaadott szám lesz az új hossz. Ugyanez a szám érvényes az egyedi mezők (%%_cf_%%) változóira és az automatikus sémák leírására is. A szűrő 2.9-es verziótól elérhető.
add_filter( 'seopress_excerpt_length', 'sajat_kivonat_hossz' );function sajat_kivonat_hossz( $szavak ) { return 30;}Készült: