Azt nem tudom, hogy van-e erre valami kész megoldás bővítmény formájában, de talán a legegyszerűbb, ha a kódban adsz hozzá egy plusz feltételt. Jelen esetben egy új feltétellel vizsgálni kellene, hogy az adott felhasználó rendelkezik-e saját azonosítóval vagy sem (a 0-ás azonosító vendéget jelent).
Ezt a következő kóddal tudod végrehajtani:
Mindenek előtt definiálnunk kell a következő változót (ezt jelen esetben tartalmazza már az article default.php-ja):
Code:
$user = JFactory::getUser();
Bejelentkezett felhasználók számára
Code:
$user = JFactory::getUser();
if($user->id > 0) {
// kód a regisztrált felhasználóknak
}
Vendégek számára
Code:
$user = JFactory::getUser();
if($user->id == 0) {
// kód a vendégeknek
}
Lépésenként:
1. Létre kell hozni az adott bővítményre egy felülírást (a jelen esetben a tartalom komponens cikk nézetére).
Sablonok -> Sablonok -> Sablonod neve -> Felülbírálások létrehozása -> Komponensek -> com_content -> article
2. Az előbb létrehozott fájt meg kell nyitnunk a szerkesztőben.
Szerkesztő -> /html/com_content/article/default.php
3. Meg kell keresni a kiíratást a fájlban (ha jól nézem ez a 76. sor).
4. Ki kell egészíteni a feltételt, vagy be kell illeszteni egy újat a szintaxisnak megfelelően.
Code:
<?php if ($useDefList && ($info == 0 || $info == 2)) : ?>
<?php echo JLayoutHelper::render('joomla.content.info_block.block', array('item' => $this->item, 'params' => $params, 'position' => 'above')); ?>
<?php endif; ?>
+ feltétel hozzáadása (
&& $user->id > 0):
Code:
<?php if ($useDefList && ($info == 0 || $info == 2) && $user->id > 0) : ?>
<?php echo JLayoutHelper::render('joomla.content.info_block.block', array('item' => $this->item, 'params' => $params, 'position' => 'above')); ?>
<?php endif; ?>
5. Fájl mentése, gyorsítótár ürítése.