Autor | Zpráva | ||
---|---|---|---|
Kyoshi Profil |
#1 · Zasláno: 9. 8. 2012, 08:32:16
Ahoj,
má omluva za divný nadpis, ale ono se to může týkat WordPressu (proto ty role). Potřebuji v WP vypsat role jako Administrátor, Moderátor, … Bohužel jsem v Codexu nenašel nic užitečného. Mohu vypsat role číselně (10 = Administrátor atd.) Takže by mi stačilo každému číslu přiřadit název, proto to nakonec hážu do PHP a ne do WP. Tohle je na mě bohužel zatím moc PHP :). Takhle vypisuji role v WP: the_author_meta('user_level', 2); // 2 je ID uživatele
Předem díky Kyo |
||
Alphard Profil |
#2 · Zasláno: 9. 8. 2012, 09:50:17
Nejjednodušší cesta je sastavit asociativní pole, kde číselná hodnota bude klíč a role uživatele bude budnota pole, pak to vypsat.
$role = array( 1 => 'admin', 2 => 'uživatel', ); echo $role[2]; |
||
Kyoshi Profil |
Alphard:
To bych ještě chápal, ale jinak to s tím the_author_meta('user_level', 2); opravdu nedokážu dát dohromady :(.
Přesto díky za radu :) edit.: mě jde hlavně o to, provázat to s WP, aby při změně role se to projevilo díky této funkci. Proto potřebuji the_author_meta('user_level', 2); . Také je důležité aby to fungovalo s ID uživatelských účtů WP.
|
||
Spectator Profil |
Kyoshi:
the_author_meta('user_level', user_id); vrací nejspíš číslo levelu uživatele (role). Snad jsem pochopil, že nevíš jak vlastně výlsedek použít. použij to co ti radí Alphard $role = array( 1 => 'admin', 2 => 'uživatel', ... ); echo $role[the_author_meta('user_level', $user_id)]; |
||
Kyoshi Profil |
Spectator:
To jsem zkoušel jako první, ale vyhazuje to zase číselnou hodnotu: mám to: $role = array( 10 => 'admin', ); echo $role[the_author_meta('user_level', 2)]; To opět vrátí číselnou hodnotu 10, což je lvl administrátora, který má to ID 2. |
||
Spectator Profil |
#6 · Zasláno: 9. 8. 2012, 11:06:58
var_dump(the_author_meta('user_level', 2)); píše co? Za 'admin' smažte čárku, pokud tam dále nic není.
|
||
Kyoshi Profil |
vrací: 10NULL
edit.: teď jsem testnul: $user = new WP_User( 2 ); echo $user->roles[0]; a vyhazuje to konečně správně uživatelské role, ale názvy jsou špatně. Respektive, nejsou česky. Například, na roli návštěvníka mi to vyhazuje subscriber. To pole, kde si mohu sám nastavit názvy rolí by bodlo :).
|
||
Spectator Profil |
#8 · Zasláno: 9. 8. 2012, 11:17:41
když zadáte pouze toto var_dump(the_author_meta('user_level')); ?
|
||
Majkl578 Profil |
#9 · Zasláno: 9. 8. 2012, 11:18:58
Spectator:
„Za 'admin' smažte čárku, pokud tam dále nic není.“ Proč? Ta čárka je tam zcela správně. [#7] Kyoshi: A to NULL se bere kde?
|
||
Kyoshi Profil |
Spectator:
Poku je tam pouze: var_dump(the_author_meta('user_level')); , tak vyhodí jen NULL.
Majkl578 Kde se bere nemám opravdu tušení. Podle mého posledního komentu (ten edit) by vše mělo fungovat, když použiji funkce z WP. edit.: Jinak, raději zopakuji, používám WordPress, takže to NULL bude zakopané někde uvnitř. Podle mě tam, kde je seznam těch rolí. Jenže nemám tušení kde to je. |
||
Časová prodleva: 11 let
|
0