Permiteți unui utilizator să editeze doar propria pagină și profil
Creaz un site WordPress care are o listă de membri, unde fiecare membru (aproximativ 20) are propria pagină. Fiecare pagină de membru este creată de un administrator, dar acum sunt blocat.
Aș dori ca conținutul fiecărei pagini de membru să poată fi editat doar de administrator și de respectivul membru.
De exemplu: Administratorul creează o pagină pentru John. John se poate autentifica și i se afișează un link către propria pagină (doar a lui), unde poate edita conținutul acelei pagini. Tony nu poate edita conținutul paginii lui John.
Cum pot realiza acest lucru? Este posibil acest lucru din oficiu în WordPress? Am nevoie de niște plugin-uri?
PS: Toți membrii mei au rolul de Autor, așa că când administratorul creează pagina, Autorul paginii poate fi setat ca fiind membru respectiv.

Citește Codex-ul WordPress pe tema Roluri http://codex.wordpress.org/Roles_and_Capabilities
Pentru a confirma că sistemul funcționează așa cum dorești, ca administrator creează un membru test cu rolul de autor și conținut exemplu așa cum ai face pentru un membru 'real'. Apoi deconectează-te și conectează-te folosind datele de autentificare ale membrului test și vezi ce capabilități are acea persoană test față de ceea ce dorești să aibă.
Rolul de Autor sau Contribuitor ar trebui să facă ceea ce descrii. În caz contrar, poți oricând să generezi un rol personalizat pentru site-ul tău care are capabilitățile pe care le dorești și să atribui membrilor tăi rolul personalizat.

Bine John, înțeleg ce încerci să faci, dar din păcate nu poți face asta cu o instalare standard WordPress (WP).
Utilizatorii WP sunt clasificați pe niveluri precum Administrator, Editor, Autor etc. Fiecare nivel are propriul set de capabilități.
Problema cu a avea toți membrii pe același nivel de utilizator este că toți au aceleași permisiuni. Practic, fiecare membru cu același nivel poate citi/scrie orice poate și celălalt membru.
Ai auzit vreodată de rețeaua de site-uri WP? Este foarte ușor. Doar urmează aceste instrucțiuni.
Odată ce ai o rețea, creează un site pentru fiecare membru. Dacă folosești BuddyPress, atunci activează plugin-ul la nivel de rețea.
Acumai rolul implicit al fiecărui membru va fi administrator, însă tu ești super-administratorul rețelei. Ei pot citi și edita doar partea lor din rețeaua ta WP. Le poți schimba rolul în Autor pentru site-ul individual și le poți oferi tema sau pagina pe care să o editeze acolo.
O altă metodă excelentă de a-ți gestiona utilizatorii este cu acest plugin: User Role Editor
Poți să comuti între utilizatori pentru a testa rezultatele cu acest plugin: User Switching
Folosește acest plugin (Admin Menu Editor) pentru a ascunde opțiunile din meniul de administrare pentru fiecare utilizator, precum și pentru a personaliza ce dorești să vadă.

Îți ceri cam cu 34 de dolari pe oră prea mult, prietene. Acest lucru este într-adevăr destul de ușor de atins.
Vezi răspunsul meu pentru a înțelege de ce spun asta.

Bine ai venit pe WPSE. Doar un sfat, te rog să nu folosești acest site pentru auto-promovare. Acest lucru este considerat spam. Am eliminat reclama ta. Te rog să te abții de la asta. Mulțumesc.

O modalitate ar fi să creezi o pagină nouă de fiecare dată când un utilizator este creat. Stochează ID-ul acestei pagini în metadatele utilizatorului. Dacă faci toate modificările în partea de front-end, atunci este la fel de simplu ca a face o verificare condițională pentru a vedea dacă ID-ul paginii stocat se potrivește cu cel din metadatele utilizatorului sau dacă utilizatorul este administrator, altfel refuzi accesul.
Ar fi și mai ușor dacă faci asta prin articole, pentru că atunci doar creezi un articol pentru utilizator cu utilizatorul ca autor. În mod implicit, WordPress permite tuturor utilizatorilor să își editeze propriile articole, precum și administratorilor. Ca mai jos, poți de asemenea să stochezi informațiile/conținutul profilului utilizatorului direct în metadatele articolului.
O a treia opțiune ar fi să creezi un șablon pentru pagina care afișează profilul utilizatorului și opțiunile de editare, și să-l configurezi să extragă ID-ul utilizatorului. Apoi poți să-l setezi astfel încât să stocheze toate informațiile profilului în metadatele utilizatorului. Desigur, asta ar exclude administratorii, deoarece în mod implicit le-ar afișa propria pagină, decât dacă adaugi un formular și un câmp pentru administratori prin care să poată accesa profilele altor utilizatori după nume/ID sau orice altceva.

Da, de fiecare dată când un nou utilizator este creat, administratorul creează o pagină pentru acesta, fără conținut. Autorul acelei pagini este apoi setat ca fiind utilizatorul, așa că caut o modalitate ca utilizatorul să se poată autentifica și să editeze doar conținutul paginii sale. Primele și a treia sugestii sunt cele mai realiste, ai vreo indicație (sau există vreun plugin) despre cum să realizez asta?

Am încercat plugin-ul User Role Editor - nu oferă ceea ce doresc. Când pagina este creată, administratorul setează autorul paginii ca fiind utilizatorul. Ceea ce caut este posibilitatea de a verifica dacă autorul paginii curente este utilizatorul autentificat, pentru a permite acestuia să editeze pagina.

Depinde de abilitățile tale în PHP. Conform răspunsului meu, crearea unui șablon de pagină pentru pagina de profil a utilizatorului ar fi cea mai ușoară soluție. Obține ID-ul utilizatorului curent și continuă de acolo. Nu cunosc din capul locului vreun plugin care să facă asta, dar sunt sigur că există.
