Tovább a tartalomhoz

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.

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;
}

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.

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.

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:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások