Jelszóval védett tartalom (esti update) – alternatív szöveg megjelenítése

Az alternatív szöveg megadására tehát két lehetőségünk van: vagy beleírjuk az oldal sablonjának kódjába, vagy minden egyes védett oldalhoz írhatunk testreszabott üzenetet.

Az első lehetőség elég egyszerű: megvizsgáljuk, hogy az adott felhasználó be van-e jelentkezve, ha igen, akkor lefut a postokat megjelenítő Loop, ha nem, egy üzenetet kapunk, hogy tessék bejelentkezni. Ez így fog valahogy kinézni:


<?php get_header(); ?>
<?php if_user_logged_in() : ?> (ha be van jelentkezve, akkor a következő fog történni:)
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div class="entry">
<?php the_content(); ?> (és a tartalom csicsázása – cím, dátum stb.)
</div>
<?php endwhile; ?><?php endif; ?> (eddig volt a tartalom megjelenítése)
<?php else : ?> (és ha nincs bejelentkezve)
<p>Jelentkezz be kérlek!</p> (vagy valami ilyesmi)
<?php endif; ?>

A másik lehetőség pedig hogy az egyes tartalmakhoz odaírjuk, hogy mi legyen az alternatív szöveg. Mondjuk egy rövid ismertető az adott tartalomról, és egy buzdítás a regelésre vagy egy határozott “Nekedehhezsajnossemmiközöd” szöveg (amelyet a Megjegyzés kivonatba írjuk bele), persze finomabban:


<?php if_user_logged_in() : ?>
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div class="entry">
<?php the_content(); ?>
</div>
<?php endwhile; ?><?php endif; ?>
<?php else : ?>
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div class="entry" ><?php the_excerpt(); ?></div>
<?php endwhile; ?><?php else : ?>
<?php endif; ?> (és itt a mese vége)

Arról pedig legközelebb lesz szó, hogy voltaképpen hogyan is kerülnek a megfelelő helyre a tartalmak (azaz, hogy ne az egész portálunkat listázza ki a fenti kód, hanem csak azokat, amiket tényleg kell).

És miért nem szóltatok, hogy az előző bejegyzésben baromságot írtam?…

Jelszóval védett tartalom

Egy szösszenet a Mamut egyik kávézójából, a sorozathoz:

Ha bejelentkezéshez kötött statikus tartalmat akarunk létrehozni, akkor két elvi lehetőség nyílik: egyrészt az oldalsablonba beágyazunk egy konstans szöveget, pl.

“A tartalom megtekintéséhez regisztrálj és jelentkezz be!”

A másik, hogy az excerpt-be (Megjegyzés kivonat ungarisül) beírjuk a kívánt szöveget (ld fentebb). Ezek után az oldal szerkesztőfelületébe bepakoljuk a kívánt tartalmat (esetemben az adatbázisok hozzáférését, mert úgy szólt a döntés, hogy csak a hallgatók és az oktatók lássák – erről még később lesz szó), és elmentjük.

Mindkét esetben bele kell nyúlni a sablonba, az egyik verzió, hogy a fentebb beírt szöveget tesszük láthatóvá bejelentkezés nélkül, a másik, hogy az excpert-et. A lényeg meg így néz ki:

< ?php get_header(); ? >

Ide jön az excerpt, ill. a kívánt felszólítás szövege. Rögtön utána pedig:

< ?php if(is_user_logged_in()) : ? >

És maga a tartalom, amit a fő beviteli mezőbe írtunk bele, jól. (Update: ez hülyeség volt.)

Most ennyi, este alaposabban körüljárom a kérdést.