Restricționarea accesului la paginile WordPress și crearea unei zone pentru membri
Publicat: 2016-02-10Doriți să publicați cursuri premium sau vreun produs informațional? Poate doriți să restricționați conținutul WordPress doar acei cititori/membri care plătesc pentru el. Și ascundeți conținutul pentru vizitatorii generali. Cu WordPress, puteți proteja cu ușurință astfel de informații folosind diversele restricții de conținut pe care WordPress le acceptă imediat sau cu ajutorul pluginurilor.
Vom trece peste aceste metode diferite în acest articol. Vom discuta:
- Diferența dintre paginile protejate cu parolă și cele private (și unde cele două soluții sunt scurte)
- Un hack de 2 minute pentru a crea o zonă simplă pentru membri pe site-ul dvs. WordPress (fără a utiliza un plugin)
- Obținerea articolelor din baza de cunoștințe să apară în Zona de membri (această secțiune este pentru dvs. DACĂ utilizați tema noastră KnowAll sau soluția Heroic Knowledge Base)
- Pluginuri gratuite care vă vor ajuta să controlați accesul la paginile, postările și alte conținuturi ale site-ului dvs
Să începem prin a înțelege diferența dintre conținutul protejat prin parolă și cel privat.
Construiește cu ușurință o bază privată de cunoștințe care poate fi căutată cu Heroic Knowledge Base.
Obțineți pluginulProtejat prin parolă vs. privat
Cea mai simplă modalitate de a restricționa accesul la o anumită pagină (sau la un alt conținut de postare) este să folosești diferitele setări de „ Vizibilitate ” pe care WordPress le oferă implicit.
Puteți găsi aceste opțiuni în panoul din dreapta oriunde adăugați o pagină nouă sau postați:

În setările de vizibilitate, există 3 opțiuni pentru vizibilitatea unei pagini (sau postări):
- Public – În această setare implicită, conținutul este disponibil pentru toți vizitatorii site-ului
- Protejat cu parolă – Aici, numai cititorii cu parola paginii (sau a postării) pot debloca accesul la conținut
- Privat – Această opțiune oferă acces anumitor utilizatori în funcție de rolul lor
A doua și a treia opțiune de vizibilitate vă permit să restricționați un anumit conținut.
Să vedem cum:
1. Pagini/postări de protecție cu parolă
Aceasta este o opțiune foarte simplă, care vă oferă posibilitatea de a proteja cu parolă paginile și postările individuale prin simpla atribuire a unei parole acelei pagini (sau postare).
Oricine cunoaște parolele poate accesa conținutul.
Acum, această opțiune funcționează dacă aveți o pagină sau două pe care doriți să le ascundeți de publicul larg. Cu toate acestea, vă puteți imagina că, dacă aveți 100 de articole de protejat, va trebui să păstrați și să distribuiți 100 de parole cu toți cititorii eligibili.
O altă problemă cu această metodă este că, dacă un utilizator găsește un astfel de conținut sau dă clic pe un link către o astfel de pagină protejată cu parolă, va vedea un ecran care îi cere o parolă, astfel încât să știe că există conținut protejat sau exclusiv pe site-ul tău. . Deci, dacă nu doriți ca oamenii care nu au acces să învețe despre acest conținut, atunci această metodă nu vă va rezolva scopul.
Următoarea captură de ecran arată un exemplu de resursă protejată prin parolă:

În plus, protejarea cu parolă a unei pagini nu elimină pagina respectivă de pe site dacă nu aveți permisiunea de a o vizualiza. În schimb, cuvântul „ Protejat: ” este adăugat la începutul titlului, care are utilizările sale, dar nu este ideal dacă nu doriți ca oamenii să știe că există conținut privat pe site.

2) Marcarea paginilor/postărilor private
Paginile private nu necesită parole individuale pentru a fi deblocate. Accesul la astfel de pagini este acordat după verificarea rolului unui utilizator. De obicei, numai administratorii de site-uri sau editorii pot vizualiza astfel de pagini private.
Iată cum arată o pagină marcată ca privată:

Cealaltă mare diferență între paginile protejate cu parolă și cele private este că, dacă nu aveți suficiente privilegii pentru a vizualiza o pagină, aceasta nu se va afișa nicăieri pe site.
Acest lucru este util mai ales dacă nu doriți ca vizitatorul mediu al site-ului web să știe că există conținut suplimentar pe site.

Este clar:
Dintre cele două opțiuni, doar setarea Vizibilitate privată are sens dacă doriți să restricționați mult conținut de pe site-ul dvs.
Dar, după cum vă puteți da seama, nu puteți oferi fiecărui utilizator acces la nivel de administrator sau editor pe site-ul dvs. Ceea ce înseamnă că trebuie să introduceți un alt nivel de membru ( abonați ). Și apoi setați nivelul de vizibilitate al paginilor private la cel al abonaților. În acest fel, toți abonații tăi vor putea accesa tot conținutul restricționat.
Iată cum puteți implementa acest sistem simplu de acces prin crearea unei zone pentru membri:
Crearea unei zone simple pentru membri
Mai întâi, creați un set de pagini care vor fi disponibile numai pentru membri. Faceți toate aceste pagini private.
Pentru a face acest lucru, trebuie să adăugați o nouă funcție și acțiune în fișierul functions.php din tema dvs.
Deci, accesați fișierul functions.php din tema dvs. și adăugați următorul cod la acesta:
/**
* Add read_private_posts capability to subscriber
* Note this is saves capability to the database on admin_init, so consider doing this once on theme/plugin activation
*/
add_action ('admin_init','add_sub_caps');
function add_sub_caps() {
global $wp_roles;
$role = get_role('subscriber');
$role->add_cap('read_private_posts');
}Tot ceea ce face este să schimbe capacitățile (permisiunile) atribuite rolului de Abonat pentru a include capacitatea de a citi postări private. Rețineți că aceasta este o acțiune unică, deci probabil că este mai bine să efectuați activarea temei/pluginului sau să comentați codul când ați terminat. Consultați notele de ghidare ale Codex pe add_cap. De asemenea, dacă doriți să eliminați capacitatea, va trebui să schimbați codul pentru a utiliza funcția remove_cap.

Configurarea autentificarii pentru Zona Membrii
Acum că Zona dvs. de membri este pregătită, este timpul să le facilitați abonaților să se conecteze. Desigur, utilizatorii dvs. pot folosi linkul site-ul dvs. web.com/wp-login.php, dar veți fi de acord că acest lucru nu este foarte ușor de utilizat.
Pentru a configura casete de conectare ușor de utilizat, puteți utiliza pluginul de stilare a paginii de autentificare.
Stilul paginilor de conectare vă permite să creați pagini de conectare pentru site-ul dvs. WordPress. Puteți adăuga pur și simplu un element numit „Autentificare” în meniul dvs. principal și să îl conectați la pagina de autentificare personalizată concepută cu stilul paginii de autentificare.
Există și alte câteva plugin-uri, dar cele mai multe dintre ele nu au fost actualizate de cel puțin un an, așa că asigurați-vă că verificați dacă sunt compatibile înainte de a le folosi.
Odată ce vă puneți la dispoziție conținutul privat pentru abonații dvs. printr-un ecran de conectare prietenos, ar trebui să terminați.
În secțiunea următoare, vom vedea cum puteți obține articolele din baza de cunoștințe (alimentate de Baza de cunoștințe eroică) să apară în Zona de membri.
Obținerea ca Zona Membrii să includă articole din Baza de cunoștințe eroică
Dacă utilizați tema noastră KnowAll sau pluginul Heroic Knowledge Base pentru a alimenta baza de cunoștințe a site-ului dvs. web, atunci puteți face conținutul dvs. de asistență accesibil abonaților dvs. chiar în Zona Membrii!
Începeți prin a instala pluginul Advanced Custom Fields.
Anterior, am creat un grup de câmpuri personalizate numit „ Opțiuni de produs ”.
Pentru acest tutorial, redenumesc „Opțiuni de produs” în „ Categorii bazei de cunoștințe ”. Următorul lucru de făcut este să editați acest grup pentru a include atât paginile, cât și postările. În acest moment, câmpul personalizat este setat să se afișeze numai dacă tipul de postare este un produs. Dar acum vrem să-l putem aplica și paginilor.
Pentru a face acest lucru, accesați Câmpuri personalizate din administrator și editați Opțiunile produsului.

Odată configurat, creați articolele din baza de cunoștințe pe care intenționați să le puneți la dispoziția membrilor plătiți. Setați toate aceste pagini ca private, astfel încât să nu poată fi accesate direct. Atribuiți-le unei categorii, spuneți „ Categorie de conținut restricționat ”. Mai târziu, puteți selecta această categorie pentru a fi afișată în paginile dvs. restricționate.

Pasul final este modificarea fișierului page.php pentru a afișa categoria selectată.
Pentru a face acest lucru, ne vom întoarce la funcția pe care am creat-o pentru a popula o a treia filă WooCommerce cu articole din baza de cunoștințe din postarea mea anterioară. Puteți reutiliza asta aici. Doar ecou funcția din page.php în tema copil pentru a afișa categoria de articole selectată pentru orice pagină dată.
Codul dvs. page.php ar trebui să arate astfel:
<?php get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php
//loop start
while ( have_posts() ) : the_post();
//include the page content template.
get_template_part( 'template-parts/content', 'page' );
//check and load the woo_knowledge_base_content
if( function_exists( 'woo_knowledge_base_content' ) ){
echo woo_knowledge_base_content();
} else {
echo 'function woo_knowledge_base_content() missing';
}
//load comment template
if ( comments_open() || get_comments_number() ) {
comments_template();
} //loop end
endwhile;
?>
</main><!-- .site-main -->
<?php get_sidebar( 'content-bottom' ); ?>
</div> <!-- .content-area -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>Singura linie schimbată este
echo woo_knowledge_base_content();
Pagina dvs. ar trebui să includă acum categoria selectată de articole din baza de cunoștințe și ar arăta ceva de genul:

Cu aceasta, ar fi trebuit să fi afișat cu succes articole din baza ta de cunoștințe în zona de membri a site-ului tău web.
Câteva pluginuri gratuite pentru a restricționa conținutul de pe un site WordPress
Dacă nu doriți să codificați, luați în considerare instalarea unuia dintre următoarele pluginuri. Toate vă pot ajuta să vă protejați conținutul de utilizatorii neînregistrați.
Abonamente plătite Pro
Cu Paid Memberships Pro, vă puteți asigura că numai membrii dvs. au acces la diferitele componente ale site-ului dvs. web, cum ar fi pagini, postări, categorii, forumuri, descărcări, conținut de asistență și multe altele.
s2Member
s2Member este un alt plugin WordPress ușor care permite restricționarea conținutului. Folosind s2Member, puteți restricționa accesul la postări, pagini, categorii, etichete, fișiere descărcabile, forumuri și alte fișiere doar la utilizatorii dvs. înregistrați.
Abonament simplu
Abonamentul simplu vine cu un tablou de bord prietenos care vă permite să vă protejați conținutul exclusiv membrilor, cum ar fi postări, pagini, galerii foto, atașamente și multe altele de vizitatorii generali ai site-ului.
În plus față de acestea, puteți consulta, de asemenea, WP-Members și Membership & Content Restriction - Abonamente plătite pentru membri. Chiar și aceste plugin-uri vă ajută să blocați conținutul premium, permițând accesul doar utilizatorilor înregistrați.
Încheind-o…
În funcție de obiectivele dvs., este posibil să aveți nevoie de orice între capabilități de restricționare a conținutului de bază și avansate. Dar acum știi cum să implementezi chiar tu o zonă simplă pentru membri. Știți chiar și cele mai bune plugin-uri din care să alegeți.
Deci, încercați codul sau pluginurile și împărtășiți-vă experiențele mai jos.
