Saját dinamikus változók és mezőértékek a metaadatokban
Egyedi dinamikus változó létrehozása, ACF- és JetEngine-mezők, valamint WooCommerce-termékattribútumok használata a SEO-metaadatokban.
A SEOPress több tucat beépített dinamikus változót kínál a metaadatokhoz (például a címhez vagy a meta leíráshoz), és a sémákban is használhatod őket. Ha nem találod a kívántat, készíthetsz sajátot, és más bővítmények mezőinek értékét is behúzhatod.
Saját dinamikus változó létrehozása
Szekció neve “Saját dinamikus változó létrehozása”A kódot a (gyermek)sablon functions.php fájljába, vagy egy must-use bővítménybe másold.
1. lépés: a változó regisztrálása
Szekció neve “1. lépés: a változó regisztrálása”function sp_titles_template_variables_array($array) { $array[] = '%%my-custom-global-variable%%'; return $array;}add_filter('seopress_titles_template_variables_array', 'sp_titles_template_variables_array');A %%my-custom-global-variable%% helyére írd a kívánt nevet, például %%seo%%.
2. lépés: az érték kiírása a forráskódba
Szekció neve “2. lépés: az érték kiírása a forráskódba”function sp_titles_template_replace_array($array) { //escape your values! $array[] = esc_attr(wp_strip_all_tags('Best WordPress SEO plugin')); return $array;}add_filter('seopress_titles_template_replace_array', 'sp_titles_template_replace_array');Az érték helyén bármilyen PHP-függvényt használhatsz. Az adatot mindig escape-eld a biztonság miatt.
3. lépés: a változó felvétele a legördülő listába
Szekció neve “3. lépés: a változó felvétele a legördülő listába”Standard SEO metaboxhoz:
function sp_get_dynamic_variables($array){ $array['%%my-custom-global-variable%%'] = 'My new dynamic variable title'; return $array;}add_filter('seopress_get_dynamic_variables', 'sp_get_dynamic_variables');Az univerzális SEO metaboxhoz és az egyedi sémához más kód kell; a legördülő listába való felvétel egyébként nem kötelező, a változót begépelve is működik.
4. lépés: a változó használata
Szekció neve “4. lépés: a változó használata”Szerkessz egy bejegyzést, és a SEO metaboxban a cím mezőbe írd be az új változót.
Több változó egyszerre
Szekció neve “Több változó egyszerre”Mindhárom szűrőnél ugyanabba a tömbbe veszed fel egymás után a változókat, a sorrendnek pedig egyeznie kell:
function sp_titles_template_variables_array($array) { $array[] = '%%my-custom-global-variable%%'; $array[] = '%%another-custom-global-variable%%'; return $array;}add_filter('seopress_titles_template_variables_array', 'sp_titles_template_variables_array');function sp_titles_template_replace_array($array) { $array[] = esc_attr(wp_strip_all_tags( 'This is a variable' )); $array[] = esc_attr(wp_strip_all_tags( 'This is another variable' )); return $array;}add_filter('seopress_titles_template_replace_array', 'sp_titles_template_replace_array');function sp_get_dynamic_variables($array){ $array['%%my-custom-global-variable%%'] = 'My new dynamic variable title'; $array['%%another-custom-global-variable%%'] = 'Another dynamic variable title'; return $array;}add_filter('seopress_get_dynamic_variables', 'sp_get_dynamic_variables');A változók hozzáadása után mentsd a bejegyzést.
Egyedi mezők használata: ACF
Szekció neve “Egyedi mezők használata: ACF”Az „egyszerű” egyedi mezők értékét ezzel a változóval kéred le:
%%_cf_your_custom_field_name%%A your_custom_field_name helyére a mező nevét (kulcsát) írd, például %%_cf_seo_title%%. A változó használható címben, meta leírásban és közösségi (Open Graph, X) metaadatban is. Az Advanced Custom Fields azon mezőtípusait fedi le, amelyek a get_field('field_name'); hívással érhetők el.
ACF beállítóoldalak (Options Page) mezői
Szekció neve “ACF beállítóoldalak (Options Page) mezői”Az ACF beállítóoldalainak mezőit a get_field('field_name', 'option'); hívással kéri le az ACF, és ezek alapból nem érhetők el a SEOPress metaadataiban. Ehhez egyedi dinamikus változót kell készíteni, a fenti módszerrel. A kódban cseréld a kívánt értékekre:
- a dinamikus változók nevét és kulcsát,
- az ACF-mezők nevét a
get_field()hívásokban, - a fordításhoz használt
text-domainértéket a sajátodra.
Ha az univerzális SEO metaboxot használod, a legördülő lista kódját a fenti 3. lépés szerint kell igazítani, hogy a változó megjelenjen a listában. Ez nem kötelező.
Egyedi mezők használata: JetEngine
Szekció neve “Egyedi mezők használata: JetEngine”A JetEngine bejegyzéstípusokhoz létrehozott meta mezői alapból egyedi mezők, vagyis a wp_postmeta táblában tárolt post metak. Értéküket ugyanúgy lekéred, mint az ACF-nél:
- SEO- és közösségi metaadatban, valamint kézi sémában:
%%_cf_your_custom_field_name%%. - Automatikus sémában válaszd az Custom fields forrást, majd az egyedi mező nevét.
- Automatikus egyedi sémában írd be a dinamikus változót:
%%_cf_your_custom_field_name%%.
Egyedi táblában tárolt mezők
Szekció neve “Egyedi táblában tárolt mezők”Ha a JetEngine bejegyzéstípusánál bekapcsolod az egyedi meta tárolást (Custom Meta Storage), a mezőértékek lekéréséhez egyedi kód kell:
- SEO- és közösségi metaadathoz, kézi és egyedi sémához: a fenti saját dinamikus változós kódot igazítsd a mezőidhöz.
- Automatikus sémához: az automatikus sémák előre definiált dinamikus változóinak alapértelmezett listáját egy szűrővel bővítheted, így a JetEngine-mezők új dinamikus változóként jelennek meg az automatikus sémákban.
Ismétlő (repeater), jelölőnégyzet, rádiógomb és legördülő mezőtípusoknál is a saját dinamikus változós módszert használd.
WooCommerce-termékattribútumok a metaadatokban
Szekció neve “WooCommerce-termékattribútumok a metaadatokban”1. eset: termékattribútumok
Szekció neve “1. eset: termékattribútumok”A termékattribútumok egyedi taxonómiák. Amikor a Termékek → Tulajdonságok oldalon létrehozol egyet, a rendszer egy pa_ kezdetű taxonómiát hoz létre (például pa_my_product_attribute; a „pa” a product attribute rövidítése).
A metaadatban (például a címben) ezzel a változóval használhatod:
%%_ct_pa_color%%Az attribútum nevét a termékattribútumok oldalán, a slug oszlopban találod.
2. eset: egyedi termékattribútumok
Szekció neve “2. eset: egyedi termékattribútumok”Az egyedi (nem taxonómiás) termékattribútumok a _product_attributes post metában tárolódnak: ez egy tömb a nevekkel (kulcsok) és értékekkel. A metaadatban ezt a változót használd:
%%wc_product_attributes%%Ehhez még egy szűrőt is fel kell venni a (gyermek)sablon functions.php fájljába, hogy a változó értéke megjelenjen.
Készült: