Eredmény: 1 - 4 (4) összesen

Téma: Felhasználói jogkörökl Wordpressben - plugin nélkül

  1. #1
    Képszerkesztő Csurga logója
    Csatlakozott
    10-10-17
    Hely
    Hmvhely
    Hozzászólás
    1.101
    Begyűjtött 317 köszönetet
    206 hozzászólásával

    Alapbeállítás Felhasználói jogkörökl Wordpressben - plugin nélkül

    Üdv!

    Szoktam moddingolni a felhasználói jogköröket, általában plugin nélkül, mivel nekem csak pár dologra van szükségem.
    Én azt szeretem használni, ha a közreműködő (contributor) tud bejegyzést írni (kép feltöltéssel). Ez megy is szépen, egy egyszerű funkciót használok erre:

    PHP kód:
    /* Közreműködők tölthetnek fel fájlokat */
    if ( current_user_can('contributor') && !current_user_can('upload_files') )    add_action('admin_init''allow_contributor_uploads');
    function 
    allow_contributor_uploads() {    $contributor get_role('contributor');    $contributor->add_cap('upload_files');} 
    Most azonban egy olyan módszert kellene alkalmaznom, hogy a közreműködő jogkörrel rendelkezők megnézhessék (szerkesztésre) mások posztjait. Erre kettő szabály (role) van a codexben, az egyik a nem publikált posztokra vonatkozik:

    PHP kód:
    /* Közreműködők szerkeszthetik mások postjait (nem publikált) */
    if ( current_user_can('contributor') && !current_user_can('edit_others_posts') )    add_action('admin_init''allow_contributor_edit_posts');
    function 
    allow_contributor_edit_posts() {    $contributor get_role('contributor');    $contributor->add_cap('edit_others_posts');} 
    A másik pedig a publikált posztokra:

    PHP kód:
    /* Közreműködők szerkeszthetik mások postjait (publikált) */
    if ( current_user_can('contributor') && !current_user_can('edit_published_posts') )    add_action('admin_init''allow_contributor_edit_published_posts');
    function 
    allow_contributor_edit_published_posts() {    $contributor get_role('contributor');    $contributor->add_cap('edit_published_posts');} 
    Egy a bökkenő, mégpedig az, hogy a szerkesztéssel automatikusan jogot ad a rendszer arra is, hogy "frissítsék" a posztot. Tudom ez evidens, de nekem ezt mégis valahogy ki kellene vennem belőle. Tehát azt szeretném elérni, hogy lehessen ugyan admin menüből szerkeszteni, viszont ne lehessen módosítani (frissítés gomb) mások bejegyzését (akár publikált, akár nem). Mivel a codexben nem találtam erre vonatkozóan leírást (biztosan egyedi igény), ezért kérdezlek meg titeket, hátha tud valaki megoldást rá.

    Előre is köszönöm!


    "Galaktikus logók, arculat, weboldalak a KKV-számára!"
    stargeckos.com

  2. #2
    Bölcs djarni logója
    Csatlakozott
    08-05-08
    Hely
    Székesfehérvár
    Hozzászólás
    5.177
    Begyűjtött 558 köszönetet
    427 hozzászólásával

    Alapbeállítás re: Felhasználói jogkörökl Wordpressben - plugin nélkül

    Idézet Csurga eredeti hozzászólása Hozzászólás megtekintése
    Üdv!

    Szoktam moddingolni a felhasználói jogköröket, általában plugin nélkül, mivel nekem csak pár dologra van szükségem.
    Én azt szeretem használni, ha a közreműködő (contributor) tud bejegyzést írni (kép feltöltéssel). Ez megy is szépen, egy egyszerű funkciót használok erre:

    PHP kód:
    /* Közreműködők tölthetnek fel fájlokat */
    if ( current_user_can('contributor') && !current_user_can('upload_files') )    add_action('admin_init''allow_contributor_uploads');
    function 
    allow_contributor_uploads() {    $contributor get_role('contributor');    $contributor->add_cap('upload_files');} 
    Ez azt jelenti, hogy a bejegyzés írásakor bármit megtehet, csak nem tudja publikálni? Ezt a kódot a functions-ba kell rakni? Hogy én mióta keresek egy ilyen megoldást, hihetetlen. Ha ez így megy, akkor nagy köszönet érte

    Arni


    Prémium Linképítés - sikerek, kockázatok nélkül - Linképítés számokban.

  3. #3
    Képszerkesztő Csurga logója
    Csatlakozott
    10-10-17
    Hely
    Hmvhely
    Hozzászólás
    1.101
    Begyűjtött 317 köszönetet
    206 hozzászólásával

    Alapbeállítás re: Felhasználói jogkörökl Wordpressben - plugin nélkül

    Idézet djarni eredeti hozzászólása Hozzászólás megtekintése
    Ez azt jelenti, hogy a bejegyzés írásakor bármit megtehet, csak nem tudja publikálni? Ezt a kódot a functions-ba kell rakni? Hogy én mióta keresek egy ilyen megoldást, hihetetlen. Ha ez így megy, akkor nagy köszönet érte

    Arni
    Igen azt jelenti. A közreműködő, "Megtekintésre" tudja csak elküldeni az adminnak. Az admin meg publikálja, ha akarja.
    Sablonon belül mehet a functions.php-ba.
    Tesztelve, szépen működik.

    UPDATE:

    Azért bármit nem tehet meg, mert van 2 paraméter, aminek ez a function nem tesz eleget. Az egyik a szűretlen HTML és a szűretlen fájlfeltöltés engedélyezése (tehát pl iframe videót nem enged). Ha gondolod leírom mi kell hozzá.


    Utoljára módosítva: Csurga által : 2013-02-03 11:52

  4. Az alábbi felhasználók hálásak a válaszért:

    djarni (2013-02-04)

  5. #4
    Bölcs djarni logója
    Csatlakozott
    08-05-08
    Hely
    Székesfehérvár
    Hozzászólás
    5.177
    Begyűjtött 558 köszönetet
    427 hozzászólásával

    Alapbeállítás re: Felhasználói jogkörökl Wordpressben - plugin nélkül

    Idézet Csurga eredeti hozzászólása Hozzászólás megtekintése
    Az egyik a szűretlen HTML és a szűretlen fájlfeltöltés engedélyezése (tehát pl iframe videót nem enged). Ha gondolod leírom mi kell hozzá.
    Én azt vettem észre, hogy iframe-et csak az az admin tud rakni a szerkesztő felületre, aki telepítette a wp-t. Hiába hozok létre admin státuszban valakit, neki se megy. Ez persze az alap wp, plugin-ek nélkül. De elég érdekes..

    Egyébként köszi, ki fogom próbálni a kódot

    Arni



A téma címkéi:

Könyvjelzők

Hozzászólás szabályai

  • Új témákat nem hozhatsz létre
  • Válaszokat nem küldhetsz
  • Fájlokat nem csatolhatsz
  • A hozzászólásaidat nem módosíthatod
  •