PDA

Zobacz pełną wersję : Wyświetlanie tagów w dowolnym miejscu



rzufjg
23-09-2020, 15:41
Czy jest możliwość wyświetlania tagów, które są przypisane do artykułu, w dowolnym miejscu w treści artykułu?
Aktualnie tagi pokazują mi się na dole artykułu.
I nie pokazują się w ogóle w przeglądzie artykułów wyróżnionych...

siristru
23-09-2020, 19:46
w dowolnym miejscu w treści artykułu?

W TREŚCI nie. Treść bowiem jest "litą" informacją. treścią z konkretnej kolumny w tabeli bazy danych. Chyba, że rozbijesz tą treść i pomiędzy rozbite elementy wstawisz kod wyświetlający tagi.

Ale można zmienić w widoku artykułu (w kodzie) miejsce wyświetlania tagów.

Generalnie zobacz sobie plik: ROOT/components/com_content/views/article/tmpl/default.php (szukaj "tags").
Tam zobaczysz, że kod jest wyświetlany przed lub po treści.

Wyświetlanie zależy od położenia informacji o artykule: http://prntscr.com/umlxmd

rzufjg
23-09-2020, 21:26
W TREŚCI nie. Treść bowiem jest "litą" informacją. treścią z konkretnej kolumny w tabeli bazy danych. Chyba, że rozbijesz tą treść i pomiędzy rozbite elementy wstawisz kod wyświetlający tagi.

Jakiś dodatek ktoś kojarzy? :) Coś wstawiającego tagi kodem w stylu {load tags}...

A co do braku tagów w widoku przeglądu artykułów wyróżnionych, to rozumiem, że to kwestia używanego przeze mnie szablonu i muszę go nadpisać?

siristru
23-09-2020, 23:31
A co do braku tagów w widoku przeglądu artykułów wyróżnionych, to rozumiem, że to kwestia używanego przeze mnie szablonu i muszę go nadpisać?

Tag... to znaczy tak :)

rzufjg
24-09-2020, 10:46
Kurde. Takich cudów jeszcze nie robiłem. Jakaś podpowiedź..? Który plik odpowiada za przegląd artykułów wyróżnionych? Używam templatki http://demo3.agethemes.com/joomla/at-city/

terra
24-09-2020, 11:44
jesli wyłączysz proste adresy to będziesz widział wszystko

rzufjg
24-09-2020, 14:27
Próbowałem, ale niestety bez rezultatu...

Widok przeglądu jednej kategorii (tu widać tagi) ma adres index.php?option=com_content&view=category&layout=blog&id=8&Itemid=142
Czyli z pliku w szablonie /html/com_content/category/blog.php kopiuję fragment o tagach (jednyny, jaki tam jest, ze słowem "tags"):


<?php if ($this->params->get('show_cat_tags', 1) && !empty($this->category->tags->itemTags)) : ?>
<?php $this->category->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
<?php echo $this->category->tagLayout->render($this->category->tags->itemTags); ?>
<?php endif; ?>


Widok przeglądu artykułów wyróżnionych ma adres index.php?option=com_content&view=featured&Itemid=102
więc do pliku: /html/com_content/featured/default.php
wklejam ww. kod.

Nie działa. Co robię źle?
Uprzedzam pytania: nie mam zielonego pojęcia o PHP :(

terra
25-09-2020, 11:56
widok default.php to widok zbiorczy, do wszystkich zajawek, natomiast do poszczególnych artykułów jest default_item.php i to w tym pliku definiujesz wygląd tagów, dla artykułu.
UWAGA: Widoczność tagów definiujesz w ustawieniach komponentu Content !!!, zauważ, że w pliku default_item.php masz kod (a przynajmniej powinieneś mieć)
override, czyli nadpisywanie widoku służy tylko do zmiany stylu prezentacji.
Nie możesz prezentować czegoś, czego nie zdefiniowałeś.

<?php if ($params->get('show_tags', 1) && !empty($this->item->tags->itemTags)) : ?>
<?php echo JLayoutHelper::render('joomla.content.tags', $this->item->tags->itemTags); ?>
<?php endif; ?>

co oznacza, że jeżeli masz ustawioną opcję show_tags',1 i takowe istnieją !empty to pokazuj ...render('joomla.content.tags'

Wejdź w pozycję menu odpowiedzialną za widok przeglądu i w zakładce "Lista jednej kategorii" lub "Opcje" w pozycji "Pokaż tagi" wybierz opcję POKAŻ i zapisz

tutaj masz przykład, https://www.joomlaterra.pl/blog tagi widoczne są bez nadpisywania szablonu. Stylizacja tagów też realizowana jest bez nadpisywania (tylko CSS), dopiero jeśli chcesz zdefiniować miejsce wyswietlania tagów, BEZ INGERENCJI W ORYGINALNY KOD JOOMLA, wykonujesz nadpisywanie i wtedy np. przenosisz umiejscowienie kodu

<?php echo JLayoutHelper::render('joomla.content.tags', $this->item->tags->itemTags); ?>

rzufjg
25-09-2020, 13:05
Wejdź w pozycję menu odpowiedzialną za widok przeglądu i w zakładce "Lista jednej kategorii" lub "Opcje" w pozycji "Pokaż tagi" wybierz opcję POKAŻ i zapisz

Tak mam ustawione i niestety w widoku przeglądu wyróżnionych tagi się nie pokazują. Po wejściu w konkretny artykuł już są widoczne.



Kod:

<?php echo JLayoutHelper::render('joomla.content.tags', $this->item->tags->itemTags); ?>

Wstawienie tej linijki w plik default_item.php rozwiązało sprawę. Dziękuję :)