V rámci této báze pro entitu vycházející z registrovaného uživatele, je připraven model, který udržuje základní data a informace právě o daném uživateli. Model nabízí sadu funkcí pro nejčastější činnost s daty. Model je možné použít samostatně s možnosti inicializace (nejedná se o abstraktní třídu) nebo lze dědit jeho vlastnosti pro Vámi definované a složitější modely.
Umístění modelu: kt/core/models/kt_wp_user_base_model.inc.php
Některé metody jsou osazeny “lazyLoadingem“. Data nejsou do modelu nahrána dříve, než jsou poprvé vyžádána.
Pro inicializaci objektu musíme zadat ID uživatele, s jehož daty chceme v rámci modelu aktivně pracovat. Pokud ID nezadáme, je potřeba načíst data dodatečně pomocí další funkce. V opačném případě nebude model vracet žádné data.
|
1 |
$model = new KT_WP_User_Base_Model(1); |
Vrátí objekt WP_User, který je defaultně vytvářen WordPressem. Máte tak možnost se dostat na informace, které jsou v rámci tohoto objektu dostupné.
|
1 2 3 |
echo $model->getWpUser()->email; echo $model->getWpUser()->display_name; ... |
Vrátí pole se všemi údaji, které jsou uloženy v tabulce wp_usermetas a patří k danému uživateli, který byl vyvolán při inicializace objektu. Metoda je osazena lazyLoadingem.
|
1 2 3 4 |
$userMetas = $model->getUserMetas(); echo $userMetas["first_name"]; // Jméno echo $userMetas["last_name"]; // Příjmení atd... |
Vrátí ID uživatele, které bylo použito při inicializaci modelu.
|
1 |
$userId = $model->getId(); |
Vrátí nickname uživatele, které si v rámci svého profilu nastavil.
|
1 |
echo "Přezdívka: " . $model->getNiceName(); |
Vrátí url adresu webu, kterou si uživatel nastavil ve svém profilu.
|
1 |
echo "Autor článku: <a href=\"". $model->getWebUrl() ."\">". $model->getNiceName() ."</a>"; |
Vrátí jméno, kterým chce být uživatel zobrazován a nastavil si ho tak v profilu.
|
1 |
echo "Jméno autora: " . $model->getDisplayName(); |
Vrátí email uživatele, který vyplnil při registraci.
|
1 |
echo "Email autora: " . $model->getEmail(); |
Vrátí jméno uživatele.
|
1 |
echo "Jméno: " . $model->getFirstName(); |
Vrátí příjmení uživatele.
|
1 |
echo "Příjmení: " $model->getLastName(); |
Vrátí kombinace Jména a příjmení pro prezentaci celého jména uživatele.
|
1 |
echo "Celé jméno autora: " . $model->getFullName(); |
Pokud používáte rozšíření uživatele v rámci frameworku, uživatel má možnost zadat v profilu také svůj telefon. Toto nastavení lze aplikovat v configurátoru.
|
1 |
"Telefon: " . $model->getPhone(); |
Vrátí avatar uživatele.
Vrátí URL adresu na detail autorovo archivu. Tato sekce je zastoupena šablonou v souboru author.php
|
1 |
echo "<a href=\"". $model->getPermalink() ."\">O Autorovi</a>"; |
Vrátí počet příspěvků autora na základě předaných parametrů.
|
1 |
echo "Autor již publikoval: " . $model->getUserPostCount() . " příspěvků"; |
Vrátí objekt WP_Query se všemi příspěvky na základě předaných parametrů.
Prověří, zda uživatel může nebo nemůže provádět změny v příslušné „capability“ nebo roleName.
|
1 2 3 4 |
if($model->canUser("manage_categories")){ // Uživatel může editovat kategorie příspěvků } ... |
Načte data uživatele na základě příspěvku a jeho přiřazeného autora.
|
1 2 3 |
$model = new KT_WP_User_Base_Model(); $model->wpUserInitByPostAuthor($post); ... |
Vrátí jednu hodnotu z wp_usermetas na základě zadaného klíče
|
1 |
echo "User meta hodnota: " . $model->getMetaValueByKey("klic-hodnoty-wp-usermetas"); |
Vrátí všechny user metas k danému uživateli – v případě volby prefixu probíhá LIKE dotaz pouze na ty klíče, které začínají zadaným prefixem.
|
1 2 3 4 |
$addressData = KT_WP_User_Base_Model::getAllUserMeta(1, "kt-user-address"); echo $addressData["kt-user-address-street]; echo $addresData["kt-user-address-city]; ... |
Odebírejte novinky z FW
Sledujte nás!
Follow @ktstudiocz!