Tag: drepturile utilizatorilor pe wordpress

Cum se poate schimba rolul unui user în WordPress

octombrie 19, 2012 Tutoriale Wordpress, Wordpress Tips & Tricks no comments

Acest mic tutorial WordPress este un pic complicat și înfricoșător.

Pornim de la necesitatea de a schimba unele drepturile (roles) predefinite la un tip de utilizator. Voi exemplifica prin a schimba la Author dreptul de a publica un articol. Practic nu mai vreau ca autorul să poată publica, așa cum implicit poate, vreau doar să poată scrie și să lase publicarea pe seama Adminstratorului.

Întrebarea firească ar fi de ce nu utilizez utilizatorul de tip Contributor. Conform drepturilor utilizatorilor WordPress acesta nu poate publica un articol. Da, așa este, însă contributorul nu poate uploada fișiere spre deosebire de author care poate.

Schimbarea de drepturi o vom vedea în caseta de Publicare din dreapta.

Cum se poate schimba rolul unui user în WordPress

Schimbarea de drepturi o voi face fără a apela la pluginuri. Vom schimba direct din baza de date, însă nu vă fie frică, cu atenție și cu un backup la îndemână nimic nu se va strica.

Pașii necesară schimbării drepturilor autorului

1. Folosind phpMyAdmin căutați în baza de date tabela “wp_options”. Aici intervine prima observație: dacă ați fost scrupuloși la instalarea wordpress-ului, prefixul tabelei nu mai este wp_ acest prefix fiind acum prefixul pus la instalare în formularul de instalare. Dacă nu-l mai știți căutați-l în fișierul config.php. În cazul nostru prefixul este cim_

$table_prefix  = 'cim_';

2. În coloana “option_name” căutați câmpul “wp_user_roles”. La fel ca mai sus, dacă ați schimbat prefixul tabelelor, ceea ce este foarte bine, câmpul căutat va avea numele noul_prefix_user_roles. În cazul acesta “cim_user_roles”. Acestă înregistrare o puteți găsi rapid folosind următoare comandă SQL:

SELECT * FROM wp_options WHERE option_name="wp_user_roles"

unde wp_ va fi înlocuit cu prefixul tabelelor.

3. Edităm această înregistrare și copiem valoarea din câmpul “optin_value”. Acesta va arăta aproximativ ca mai jos:

a:5:{s:13:"administrator";a:2:{s:4:"name";s:13:"Administrator";s:12:"capabilities";a:71:{s:13:"switch_themes";b:1;s:11:"edit_themes";b:1;s:16:"activate_plugins";b:1;s:12:"edit_plugins";b:1;s:10:"edit_users";b:1;s:10:"edit_files";b:1;s:14:"manage_options";b:1;s:17:"moderate_comments";b:1;s:17:"manage_categories";b:1;s:12:"manage_links";b:1;s:12:"upload_files";b:1;s:6:"import";b:1;s:15:"unfiltered_html";b:1;s:10:"edit_posts";b:1;s:17:"edit_others_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:10:"edit_pages";b:1;s:4:"read";b:1;s:8:"level_10";b:1;s:7:"level_9";b:1;s:7:"level_8";b:1;s:7:"level_7";b:1;s:7:"level_6";b:1;s:7:"level_5";b:1;s:7:"level_4";b:1;s:7:"level_3";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:17:"edit_others_pages";b:1;s:20:"edit_published_pages";b:1;s:13:"publish_pages";b:1;s:12:"delete_pages";b:1;s:19:"delete_others_pages";b:1;s:22:"delete_published_pages";b:1;s:12:"delete_posts";b:1;s:19:"delete_others_posts";b:1;s:22:"delete_published_posts";b:1;s:20:"delete_private_posts";b:1;s:18:"edit_private_posts";b:1;s:18:"read_private_posts";b:1;s:20:"delete_private_pages";b:1;s:18:"edit_private_pages";b:1;s:18:"read_private_pages";b:1;s:12:"delete_users";b:1;s:12:"create_users";b:1;s:17:"unfiltered_upload";b:1;s:14:"edit_dashboard";b:1;s:14:"update_plugins";b:1;s:14:"delete_plugins";b:1;s:15:"install_plugins";b:1;s:13:"update_themes";b:1;s:14:"install_themes";b:1;s:11:"update_core";b:1;s:10:"list_users";b:1;s:12:"remove_users";b:1;s:9:"add_users";b:1;s:13:"promote_users";b:1;s:18:"edit_theme_options";b:1;s:13:"delete_themes";b:1;s:6:"export";b:1;s:24:"NextGEN Gallery overview";b:1;s:19:"NextGEN Use TinyMCE";b:1;s:21:"NextGEN Upload images";b:1;s:22:"NextGEN Manage gallery";b:1;s:19:"NextGEN Manage tags";b:1;s:29:"NextGEN Manage others gallery";b:1;s:18:"NextGEN Edit album";b:1;s:20:"NextGEN Change style";b:1;s:22:"NextGEN Change options";b:1;}}s:6:"editor";a:2:{s:4:"name";s:6:"Editor";s:12:"capabilities";a:38:{s:17:"moderate_comments";b:1;s:17:"manage_categories";b:1;s:12:"manage_links";b:1;s:12:"upload_files";b:1;s:15:"unfiltered_html";b:1;s:10:"edit_posts";b:1;s:17:"edit_others_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:10:"edit_pages";b:1;s:4:"read";b:1;s:7:"level_7";b:1;s:7:"level_6";b:1;s:7:"level_5";b:1;s:7:"level_4";b:1;s:7:"level_3";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:17:"edit_others_pages";b:1;s:20:"edit_published_pages";b:1;s:13:"publish_pages";b:1;s:12:"delete_pages";b:1;s:19:"delete_others_pages";b:1;s:22:"delete_published_pages";b:1;s:12:"delete_posts";b:1;s:19:"delete_others_posts";b:1;s:22:"delete_published_posts";b:1;s:20:"delete_private_posts";b:1;s:18:"edit_private_posts";b:1;s:18:"read_private_posts";b:1;s:20:"delete_private_pages";b:1;s:18:"edit_private_pages";b:1;s:18:"read_private_pages";b:1;s:24:"NextGEN Gallery overview";b:1;s:19:"NextGEN Use TinyMCE";b:1;s:21:"NextGEN Upload images";b:1;s:22:"NextGEN Manage gallery";b:1;}}s:6:"author";a:2:{s:4:"name";s:6:"Author";s:12:"capabilities";a:14:{s:12:"upload_files";b:1;s:10:"edit_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:4:"read";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;s:22:"delete_published_posts";b:1;s:24:"NextGEN Gallery overview";b:1;s:19:"NextGEN Use TinyMCE";b:1;s:21:"NextGEN Upload images";b:1;s:22:"NextGEN Manage gallery";b:1;}}s:11:"contributor";a:2:{s:4:"name";s:11:"Contributor";s:12:"capabilities";a:9:{s:10:"edit_posts";b:1;s:4:"read";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;s:24:"NextGEN Gallery overview";b:1;s:19:"NextGEN Use TinyMCE";b:1;s:21:"NextGEN Upload images";b:1;s:22:"NextGEN Manage gallery";b:1;}}s:10:"subscriber";a:2:{s:4:"name";s:10:"Subscriber";s:12:"capabilities";a:2:{s:4:"read";b:1;s:7:"level_0";b:1;}}}

O nebunie!

Să vedem ce înseamnă aceste cifre și litere.

  • a:5 – listera a urmată de două puncte și o cifra înseamnă că urmează să fie declarate un număr de elemente, exemplu: a:5 se citește “urmează să fie declarate cinci elemente”
  • s:6:”author” – litera s urmată de două puncte și o cifra apoi de alte două puncte și între ghilimele de un șir de cuvinte însemnă este declarația unei proprietăți (element) din mulțimea definită prin “a” două puncte, exemplu: s:6:”author” se citește string de lungime 6 caractere author
  • b:1 este un element boolean: true sau false

Aceste trei tipuri de declarații se grupează îm matrici de elemente.

4. Păstrăm varianta originală și căutăm după s:6:”author” și vom găsi ceva de genul:

s:6:"author";
a:2:
{
s:4:"name";s:6:"Author";s:12:"capabilities";
a:10:
{
s:12:"upload_files";b:1;s:10:"edit_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:4:"read";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;s:22:"delete_published_posts";b:1;
}
}

Adică: stringul author are două matrici de elemente, prima conține name, auhor și capabilities care la rândul său este o matrice de 14 elemente cu drepturile autorului: upload_files, edit_posts, edit_published_posts, publish_posts, read și altele.

Deja am găsit locul în care este definit dreptul de a publica articolul de către “author”.

5. Întreg șirul ce definește dreptul autorului de a publica direct un post este: “s:13:”publish_posts”;b:1″. Acest șir trebuie șters după care salvăm înregistrarea și vedem rezultatl în editarea unui post unde în loc de Publish vom avea butonul de Submit to Review ca în figura de mai sus.

6. Concluzii.

  • în această înregistrare adaugă și pluginurile drepturi, deci matricile de mai sus pot fi diferite, mai mari nu mai mici.
  • întotdeauna faceți backup
  • folosiți metoda: modifică-testează-modifică-testează-publică

PS folosiți metoda asta doar dacă nu aveți încotro 🙂

WordPress: drepturile utilizatorilor

septembrie 20, 2012 Tutoriale Wordpress 3 comments

Folosind interfața de administrare un administrator de wordpress poate face următoarele operații:

  1. (1) poate citi tot ce este publica în mod public public
  2. (2) poate scrie pagini și articole (numite și postări)
  3. (3) poate edita pagini și articole (autorul si contributorul doar posturile proprii, fără pagini)
  4. (4) poate șterge pagini și articole (autorul si contributorul doar posturile proprii, fără pagini)
  5. (5) poate uploada fișiere
  6. (6) poate publica
  7. (7) poate gestiona liste de linkuri
  8. (8) poate gestiona categorii
  9. (9) poate modera comentarii
  10. (10) poate vedea pagini private
  11. (11) poate gestiona pluginuri
  12. (12) poate gestiona teme
  13. (13) poate gestiona alți utilizatori
  14. (14) poate gestiona setările site-ului
  15. (15) poate administra întreaga rețea de bloguri

WordPress oferă șase tipuri de utilizatori:

  1. Super Admin – este un administrator cu drepturi de administrare pe întreaga rețea, se folosește la rețelele de bloguri (fostul WordPress MU)
  2. Administrator – utilizator cu drepturi depline de administrare a site-ului
  3. Editor – utilizator ce poate gestiona paginile, posturi, comentarii, linkuri fără pluginuri și setări de site
  4. Author – utilizator ce poate gestiona strict articolele proprii, nu are acces de administrare asupra articolelor scrie de alți autori, poate doar vizualiza celelalte postări
  5. Contributor – utilizator ce poate adăuga postări, edita și șterge doar postările proprii fără a putea uploada fișiere și fără a putea publica
  6. Subscriber – utilizator abonat, poate comenta și vizualiza articole și pagini private

Pentru o și mai mare claritate a drepturilor utilizatorilor am listat în dreptul utilizatorilor drepturile aferente:

  1. Super Admin: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
  2. Administrator: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
  3. Editor: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
  4. Author: 1, 2, 3, 4, 5, 6
  5. Contributor: 1, 2, 3, 4
  6. Subscriber: 1

Mai multe informații:

Roles and Capabilities