KT Termmeta

Pro možnost zadávat vlastních meta dat v rámci Termů (Taxonomy) jsme připravili do WP Frameworku třídu KT_Termmeta. Vzhledem k tomu, že terms meta(s) nejsou součástí WordPressu, tak se data musejí ukládat do naší vlastní tabulky, kterou je nejprve třeba vytvořit (SQL skript je součástí jádra frameworku, viz níže). Po založení tabulky v databázi je možné používat třídu KT_Termmeta velmi podobně, jako by byla součástí WordPressu a Vy jste pracovali s jinými metadaty, např. post meta(s)…

Aktivace

Nejprve je třeba založit tabulku v databázi pro ukládání dat. K tomu je připraven SQL skript (jinak se jedná o součást souboru: kt/core/kt_core.sql):

POZOR: v aktuální dev verzi a následně v nové verzi 1.6 bude dojde k přejmenování tabulky kt_wp_termmeta -> kt_termmeta

A dále je třeba třídu KT_Termmeta aktivovat pomocí statické metody activate():

Aktivaci třídy KT_Termmeta je vhodné volat v konfiguračním souboru šablony, po zavolání KT_WP_Configurator->initialize();

Obslužné metody

getAllData($termId, $prefix = null)

Vrátí všechny meta (podle zadaného prefixu) ve tvaru klíč => hodnota.

getData($termId, $metaKey = „“, $single = true)

Wrapper metody get_metadata z metadata API pro zjednodušení práce v rámci (KT) term meta.
Pozn.: výchozí hodnota posledního parametru $single je zde prohozena false->true.

addData($termId, $metaKey, $metaValue, $unique = false)

Wrapper metody add_metadata z metadata API pro zjednodušení práce v rámci (KT) term meta.

updateData($termId, $metaKey, $metaValue, $previousValue = „“)

Wrapper metody update_metadata z metadata API pro zjednodušení práce v rámci (KT) term meta.

deleteData($termId, $metaKey, $metaValue = „“, $deleteAll = false)

Wrapper metody delete_metadata z metadata API pro zjednodušení práce v rámci (KT) term meta.

Formuláře

(KT) Term meta(s) jsou součástí (KT) formulářů a je za tímto účelem připraveno automatické načítání a ukládání, slouží k tomu metody:

  • KT_Form->loadDataFromTermMeta($termId)
  • KT_Form->saveFieldsetToTermMetaTable($termId, array $excludeFields = array())

MetaBoxy

V rámci KT_Metaboxu zatím implementace není z důvodu složitosti provedena, ale typické využití je např. pomocí WordPress Taxonomy Extra Fields

Příklad

A nebo je k dispozici nová třída KT_Term_Metabox, která celý předchozí mechanismus zastřešuje a ulehčuje. Použití je pak velmi podobné jako v případě již známých KT_Metaboxů:

V rámci příkladu je nutné mít někde definovanou konstantu KT_XXX_HEUREKA_CATEGORY_META_KEY, např. v definici šablony, resp. yours modulu:
define(„KT_XXX_HEUREKA_CATEGORY_META_KEY“, „kt_xxx_heureka_category_text“);



Odebírejte novinky z FW

Sledujte nás!

Tyto stránky využívají Cookies. Používáním těchto stránek vyjadřujete souhlas s používáním Cookies.Zjistit víceOK, rozumím