Ograničite stranice u WordPressu da zahtijevaju prijavu

Snimak zaslona 2013 07 01 na 12.23.52 PM

login_lock.jpgOvaj smo tjedan završavali s implementacijom prilagođene teme na web mjestu klijenta i zatražili su da napravimo neku vrstu interakcije gdje su neke stranice bile ograničene na registrirane pretplatnike. U početku smo razmišljali o implementaciji dodataka treće strane, ali rješenje je zapravo bilo prilično jednostavno.

Prvo smo kopirali predložak stranice u novu datoteku (bilo koje ime je u redu, samo održavajte php ekstenziju). Na vrhu stranice svakako komentirajte stranicu kako biste je mogli vidjeti u uređivaču predložaka po imenu:


Zatim potražite redak u kodu vaše stranice koji prikazuje sadržaj. To bi trebalo izgledati ovako:


Sada ćete trebati omotati neki kôd oko tog retka:

 Samo pretplatnik Žao nam je, sadržaj koji pokušavate dosegnuti ograničen je samo na pretplatnike.

Kôd započinje provjerom sesije da li je korisnik prijavljen na vašu web lokaciju WordPress. Ako su prijavljeni, prikazuje se sadržaj. Ako nisu prijavljeni, u poruci stoji da pokušavate pristupiti ograničenom sadržaju.

Da biste koristili stranicu, morat ćete odabrati Samo pretplatnici predložak stranice u naprednom odjeljku opcija vaše stranice (na bočnoj traci). To će ograničiti stranicu na čitatelje koji su prijavljeni.

Ako želite postati stvarno fensi, na bočnu traku možete dodati i način prijave i odjave:

">Odjavite se /wp-login.php">Prijava korisnika

28 Komentari

  1. 1
  2. 2
  3. 3
    • 4

      Bok Partha,

      To bi bilo prilično jednostavno – možete dodati istu tehniku ​​u zaglavlje stranice i u osnovi reći... if (bez korisničkog id I stranice nije jednako nazivu stranice) onda zaglavlje naprijed na stranicu za prijavu.

      Doug

  4. 5

    sjajno elegantno rješenje! upravo ono što mi je trebalo, ozbiljno sam razmišljao o izgradnji vanjskog sustava za prijavu.
    ovo ljulja!

  5. 6
    • 7
      • 8

        Nije prilagođeno korisniku, ali to je u redu... Osjećam da bi neke slike onoga što bih trebao raditi pomoći. Inače... Samo ću isprobati stvari dok ne uspiju!

        • 9

          kopirajte page.php , Preimenujte page2.php i umetnite gornji kod, spremite datoteku, prenesite natrag na sadržaj/temu/whateveritiscalled, idite na post ili promijenite zadani izgled stranice u page2.php. Nema potrebe za stvaranjem novog stila/izgleda stranice, samo kopirajte onaj koji koristite i preimenujte ga. pa je fullwidth.php fullwidth2.php tako jednostavan.

      • 10

        Ok, pa nakon MNOGO pokušaja i gledanja drugih tutorijala na internetu... otkrio sam da je IZRADA novog predloška stranice moj problem. Napravim jedan u uređivaču teksta i pokušam ga učitati... gdje? Ne znam ni kamo da idem. Čini se da ne mogu pronaći ovu tajnu lokaciju za učitavanje!

        • 11

          Tako je istina, LaRocque! Morate imati FTP program i pristup mapi s temama svoje web stranice kako biste tamo mogli prenijeti datoteku. Trenutačno NEMA načina da to učinite putem administrativnog zaslona. Jedna iznimka bila bi instalacija dodatka "Upravitelj datoteka" koji vam omogućuje stvaranje novih datoteka. Ipak budi oprezan! 

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

    U redu, pa ću zagristi... Kako biste ovo izmijenili da omogućite provjeru dopuštenja?

    Recimo – i dalje želimo dopustiti svakome da stvori svoje vlastito korisničko ime za "Pretplatnik" i objavi odgovore.
    ALI – dajemo pristup stranici "Samo pretplatnici" samo onim korisnicima koje je odredio administrator?

  13. 20
  14. 21

    Douglas – koristio sam tvoj kod – i uglavnom radi odlično! Problem koji imam je taj što se veza za odjavu vraća na stranicu koja ne postoji. Isprobao sam više wordpress kodova sa cijelog weba kako bi kod za odjavu funkcionirao. . . ali korisnik i dalje ostaje prijavljen i povratak je //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

    Sve misli?

    • 22

      Čini se da je možda samo da je kod kopiran iz vašeg preglednika dodao hrpu HTML razmaka, Ryane. Kopirajte kod u Notepad ili Textpad, a zatim ga kopirajte u svoj predložak da biste se riješili tih stvari.

  15. 23

    Ok, to je upravo ono što moram učiniti, ali imam jedno pitanje. Ako nisu pretplatnik, kako mogu učiniti da se pojavi okvir za prijavu ili pretplatu kako bi mogli pristupiti sadržaju?

    Hvala

  16. 25

    Hvala na kodu. će ljudi naljutiti na mene, ali oni se trebaju prijaviti kada žele da neka stvar ne dopušta svima slobodan pristup kako bi se datoteke lako pronašle.

  17. 26

    Zvuči kao da je ova metoda podložna otmici sesije. Kolačić za prijavu bit će dodan dok je u sigurnom području, ali budući da wordpress ovo služi kao nesiguran kolačić, i dalje će se posluživati ​​ako se korisnik vrati na dio stranice koji nije šifriran.

  18. 28

Što vi mislite?

Ova web stranica koristi Akismet za smanjenje neželjene pošte. Saznajte kako se podaci vašeg komentara obrađuju.