Beperk bladsye in WordPress om 'n aanmelding te vereis

Skermskoot 2013 07 01 by 12.23.52 PM

login_lock.jpgHierdie week was ons besig met die implementering van 'n aangepaste tema op 'n kliëntwebwerf, en hulle het gevra dat ons 'n soort interaksie moet bou waar sommige van die bladsye beperk is tot geregistreerde intekenare. Aanvanklik het ons daaraan gedink om plugins van derde partye te implementeer, maar die oplossing was eintlik redelik eenvoudig.

Eerstens het ons die bladsymodel na 'n nuwe lêer gekopieër (enige naam is goed, hou net die php-uitbreiding in stand). Lewer aan die bokant van die bladsy kommentaar op die bladsy sodat u dit op die naam van die sjabloonredakteur kan sien:

 

Soek daarna die lyn in die kode van u bladsy wat die inhoud vertoon. Dit moet so lyk:

 

Nou moet u 'n kode om die lyn draai:

Slegs intekenaar Jammer, die inhoud wat u probeer bereik, is slegs vir intekenare beperk.

Die kode begin deur die sessie na te gaan of die gebruiker by u WordPress-webwerf aangemeld is. As hulle aangemeld is, word die inhoud vertoon. As hulle nie aangemeld is nie, lui die boodskap dat u probeer om beperkte inhoud te bereik.

Om die bladsy te kan gebruik, moet u die Slegs intekenare bladsy-sjabloon in die gevorderde gedeelte van u bladsy se opsies (op die sybalk). Dit sal die bladsy beperk tot lesers wat aangemeld is.

As u regtig lus wil raak, kan u ook 'n aanmeld- en afmeldmetode by u sybalk voeg:

">Teken uit /wp-login.php">Klante-aanmelding

28 Comments

  1. 1
  2. 2
  3. 3
    • 4

      Hallo Partha,

      Dit sal redelik eenvoudig wees - u kan dieselfde tegniek by die kopkop van die bladsy voeg en basies sê ... as (geen gebruikersnaam EN bladsy nie gelyk is aan bladsynaam nie) dan kopskuif na die aanmeldingsblad.

      Doug

  4. 5

    wonderlike elegante oplossing! net wat ek nodig gehad het, het ek dit ernstig oorweeg om 'n eksterne aanmeldingsisteem te bou.
    hierdie rotse!

  5. 6
    • 7
      • 8

        Dit is nie gebruikersvriendelik nie, maar dit is goed ... ek voel dat sommige foto's van wat ek veronderstel is om te doen, kan help. Anders ... ek gaan net dinge probeer totdat dit werk!

        • 9

          kopieer page.php, hernoem bladsy2.php en voeg kode hierbo in, stoor lêer, laai terug na inhoud / tema / wat ook al genoem word, gaan na die bladsy of verander die standaard bladsy-uitleg na page2.php. Dit is nie nodig om 'n nuwe bladsy-styl / uitleg te skep nie, maar kopieer die een wat u gebruik en hernoem dit. so fullwidth.php is fullwidth2.php so eenvoudig.

      • 10

        Ok, so na BAE pogings en na ander tutoriale op die internet gekyk het ... het ek gevind dat dit my probleem is om 'n nuwe bladsymodel te maak. Ek maak een in 'n teksversorger en probeer dit oplaai na ... waar? Ek weet nie eers waarheen nie. Ek kan blykbaar nie hierdie geheime plek vind om op te laai nie!

        • 11

          So waar, LaRocque! U moet 'n FTP-program hê en toegang hê tot die temagids van u webwerf, sodat u die lêer daar kan oplaai. Daar is tans GEEN manier om dit via die administratiewe skerm te doen nie. Een uitsondering is die installering van 'n "File Manager" -inprop waarmee u nuwe lêers kan maak. Wees egter versigtig! 

  6. 12
  7. 13
  8. 14
  9. 15
  10. 17
  11. 18
  12. 19

    OK, so ek sal byt ... Hoe sou u dit verander om toestemmings na te gaan?

    Laat ons sê - ons wil nog steeds toelaat dat enigiemand sy eie "Intekenaar" -gebruikersnaam skep en antwoorde plaas.
    MAAR - ons verleen slegs toegang tot die bladsy "Slegs intekenare" aan die gebruikers wat deur 'n administrateur gespesifiseer word?

  13. 20
  14. 21

    Douglas - ek het u kode gebruik - en dit werk meestal goed! Die probleem wat ek het, is dat die afmeld-skakel terugkeer na 'n webwerf wat nie bestaan ​​nie. Ek het eintlik al verskeie WordPress-kodes van regoor die internet probeer om die uitlogkode te laat werk. . . maar die gebruiker bly steeds aangemeld en die opgawe is //wp-login.php?redirect_to=“>log%20in%20%20%20%20%20%20%20%20%20%20%20%20%20 % 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% XNUMX

    Enige gedagtes?

    • 22

      Dit lyk of dit net kan wees dat, toe die kode vanaf u blaaier gekopieër is, 'n klomp HTML-spasies bygevoeg is, Ryan. Kopieer die kode na Notepad of Textpad en kopieer dit dan in u sjabloon om van die dinge ontslae te raak.

  15. 23

    Ok, dit is presies wat ek moet doen, maar ek het een vraag. As hulle geen intekenaar is nie, hoe kan ek 'n 'aanmeld'- of' inteken'-blokkie laat verskyn sodat hulle toegang tot die inhoud kan kry?

    Dankie

  16. 25

    Dankie vir die kode. sal mense kwaad maak vir my, maar hulle veronderstel om aan te meld as hulle wil hê dat iets nie almal gratis toegang gee om die lêers maklik te vind nie.

  17. 26

    Dit klink asof hierdie metode onderhewig is aan sessiekaping. Die aanmeldkoekie sal bygevoeg word in die veilige gebied, maar aangesien wordpress dit as 'n onveilige koekie dien, sal dit steeds bedien word as die gebruiker terugblaai na 'n gedeelte van die webwerf wat nie geënkripteer is nie.

  18. 28

Wat dink jy?

Hierdie webwerf gebruik Akismet om spam te verminder. Leer hoe jou opmerking verwerk is.