Maketing Kontni

WordPress: Kreye yon modèl paj ki mande pou yon itilizatè anrejistre epi konekte

Nou te fini mete ann aplikasyon yon tèm koutim sou yon sit kliyan, epi yo te mande pou nou bati kèk kalite entèraksyon kote kèk nan paj yo te restriksyon nan abònen ki anrejistre. WordPress ofri opsyon Vizibilite pou paj, men sa pa akomode senaryo sa a.

  • Prive – Chwazi vizibilite kòm prive sèlman pèmèt administratè yo ak editè yo wè kontni an.
  • Modpas Pwoteje – egzije yon kòd inik pou aplike pou chak paj pou wè kontni an.

Okòmansman, nou te panse sou aplikasyon grefon twazyèm pati, men solisyon an te senp. Nou ta ka kreye yon modèl inik ki mande telespektatè yo enskri epi konekte pou wè paj la.

Modèl WordPress: Abonnés Sèlman

Premyèman, nou kopye modèl paj kliyan nou an (page.php) nan la tèm timoun. Pou kreye yon modèl, ou bezwen ajoute kèk kòd nan tèt paj ou a:

<?php /* Template Name: Subscribers Only */ ?>

Next, gade pou liy lan nan kòd paj ou a ki montre kontni an. Li ta dwe sanble tankou sa a:

<?php the_content(); ?>

Koulye a, ou pral bezwen vlope kèk kòd alantou liy sa a:

<?php
$redirect_url = get_permalink(); // Get the current page's URL

if (is_user_logged_in()) :
?>
    <h2><?php the_title(); ?></h2>
    <?php the_content(); ?>
<?php else : ?>
    <h2>Subscriber Only</h2>
    <p>We're sorry, the content you are trying to reach is restricted to certain roles. <a href="<?php echo wp_login_url($redirect_url); ?>">Log in</a> to access it.</p>
<?php endif; ?>

Men yon eksplikasyon sou kòd la nan pwen:

  • $redirect_url = get_permalink();: Liy sa a rekipere URL paj aktyèl la epi estoke li nan varyab la $redirect_url.
  • if (is_user_logged_in()) :: Deklarasyon kondisyonèl sa a tcheke si yon itilizatè deja konekte.
  • Si itilizatè a konekte, kòd ki nan blòk sa a egzekite.
    • <h2><?php the_title(); ?></h2>: Sa a montre tit paj aktyèl la.
    • <?php the_content(); ?>: Sa a montre kontni paj aktyèl la.
  • Si itilizatè a pa konekte, kòd la nan else blòk egzekite.
    • <h2>Subscriber Only</h2>: Sa a montre yon tit ki endike kontni an gen restriksyon.
    • <p>We're sorry, the content you are trying to reach is restricted to certain roles. <a href="<?php echo wp_login_url($redirect_url); ?>">Log in</a> to access it.</p>: Sa a montre yon mesaj ki eksplike ke kontni an gen restriksyon sou sèten wòl epi li bay yon lyen "Konekte". Lyen an href atribi se mete nan URL la konekte ki te pwodwi pa wp_login_url($redirect_url), asire ke itilizatè yo redireksyon tounen nan paj aktyèl la apre yo fin konekte.

Kòd sa a efektivman tcheke si yon itilizatè konekte epi, si se pa sa, ankouraje yo konekte pou jwenn aksè nan kontni an restriksyon, ak yon lyen ki dirije yo tounen nan paj la yo t ap eseye wè.

Gade pa wòl itilizatè espesifik

Ou kapab tou limite kontni an nan wòl itilizatè espesifik si ou ta renmen:

<?php
$allowed_roles = array('subscriber', 'editor', 'author'); // Add the roles you want to allow

$user = wp_get_current_user();
$redirect_url = get_permalink();

if (array_intersect($allowed_roles, $user->roles)) :
?>
    <h2><?php the_title(); ?></h2>
    <?php the_content(); ?>
<?php else : ?>
    <h2>Restricted Access</h2>
    <p>We're sorry, the content you are trying to reach is restricted to certain roles. 
    <a href="<?php echo wp_login_url($redirect_url); ?>">Log in</a> to access it.</p>
<?php endif; ?>

Men yon eksplikasyon sou kòd la nan pwen:

  • $allowed_roles = array('subscriber', 'editor', 'author');: Liy sa a kreye yon seri wòl pèmèt yo, ki espesifye ki wòl itilizatè yo pèmèt yo jwenn aksè nan kontni an. Ou kapab personnaliser etalaj sa a pou genyen ladan yo wòl ou vle pèmèt.
  • $user = wp_get_current_user();: Kòd sa a jwenn enfòmasyon sou itilizatè aktyèl la, enkli wòl yo.
  • $redirect_url = get_permalink();: Liy sa a estoke URL paj aktyèl la nan $redirect_url varyab, ki pral itilize pou redireksyon itilizatè a tounen nan paj aktyèl la apre yo fin konekte.
  • if (array_intersect($allowed_roles, $user->roles)) :: Deklarasyon kondisyonèl sa a tcheke si wòl itilizatè a kwaze ak wòl yo ki nan lis nan $allowed_roles etalaj. Nan lòt mo, li tcheke si itilizatè a gen youn nan wòl yo pèmèt.
  • Si itilizatè a gen youn nan wòl yo pèmèt, kòd ki nan blòk sa a egzekite.
    • <h2><?php the_title(); ?></h2>: Sa a montre tit paj aktyèl la.
    • <?php the_content(); ?>: Sa a montre kontni paj aktyèl la.
  • Si itilizatè a pa gen youn nan wòl yo pèmèt, kòd la nan else blòk egzekite.
    • <h2>Restricted Access</h2>: Sa a montre yon tit ki endike kontni an gen restriksyon.
    • <p>We're sorry, the content you are trying to reach is restricted to certain roles. <a href="<?php echo wp_login_url($redirect_url); ?>">Log in</a> to access it.</p>: Sa a montre yon mesaj ki eksplike ke kontni an gen restriksyon sou sèten wòl epi li bay yon lyen "Konekte". Lyen an href atribi se mete nan URL la konekte ki te pwodwi pa wp_login_url($redirect_url), asire ke itilizatè yo redireksyon tounen nan paj aktyèl la apre yo fin konekte.

Kòd sa a efektivman limite aksè nan wòl espesifik, epi si yon itilizatè pa gen youn nan wòl yo pèmèt, li pouse yo konekte ak yon lyen ki pral redireksyon yo tounen nan paj aktyèl la apre ou fin konekte.

Chwazi modèl ou a

Pou itilize paj la, w ap bezwen chwazi Abonnés sèlman modèl paj nan seksyon avanse opsyon paj ou a (sou ankadre a). Sa a pral limite paj la pou lektè ki konekte oswa wòl ou defini (yo).

Douglas Karr

Douglas Karr se CMO nan OpenINSIGHTS ak fondatè a nan Martech Zone. Douglas te ede plizyè douzèn demaraj MarTech ki gen siksè, li te ede nan dilijans plis pase $5 milya nan akizisyon ak envestisman Martech, epi li kontinye ede konpayi yo nan mete ann aplikasyon ak otomatize estrateji lavant ak maketing yo. Douglas se yon transfòmasyon dijital entènasyonalman rekonèt ak ekspè MarTech ak oratè. Douglas se tou yon otè pibliye nan yon gid Dummie a ak yon liv lidèchip biznis.

Atik ki gen rapò

Retounen nan bouton tèt
Fèmen

Adblock Detekte

Martech Zone se kapab ba ou kontni sa a gratis paske nou monetize sit nou an atravè revni anons, lyen afilye, ak parennaj. Nou ta apresye si ou ta retire bloke anons ou a pandan w ap gade sit nou an.