Zobacz pełną wersję : Nadpisywanie szablonem komponentu com_content
wook-ash
19-09-2011, 17:11
Witam!
Mam następujący problem. Próbuję zmienić wygląd listy artykułów w kategorii.
Jak na razie udało mi się usunąć wszystkie zbędne pola tabeli, zostawiłem jedynie tytuł artykułu.
Chciałem, aby przy każdym artykule widniał obrazek. I tutaj zaczęły się schody.
Widzę to tak, że w katalogu głównym tworzę folder z tymi zdjęciami. Zdjęcia byłyby nazywane na przykład numer id artykułu. Problem polega na tym, że nie wiem, jaki kod php dopisać w ścieżce do zdjęcia w pliku html/com_content/category/default_articles aby pobrany został numer id artykułu.
Z góry dziękuję za pomoc
palyga007
19-09-2011, 18:14
$idArtykulu = $_GET['id'];
uprzedzając pytanie.
Na prostych adresach też działa.
wook-ash
19-09-2011, 20:17
Działa, ale nie daje ID artykułu tylko kategorii...
palyga007
19-09-2011, 20:54
mój błąd
zamiast id powinno być Itemid co łatwo stwierdzić patrząc na adres w przeglądarce. Trochę więcej samodzielności.. :)
wook-ash
19-09-2011, 21:15
hm... niestety nadal nie działa... Itemid nadal zwraca tą samą wartość dla wszystkich artykułów w kategorii, chociaż inną niż zwracał id.
nie jestem pewny, czy zapis ma wyglądać tak:
<td>
<img src="folder/<?php echo $idArtykulu=$_GET['Itemid']; ?>.gif">
</td>
palyga007
19-09-2011, 21:34
Działa, ale nie daje ID artykułu tylko kategorii... Bzdura.
Dałem się zrobić jak dziecko...
index.php?option=com_content&view=article&id=53&Itemid=280
id= id artykułu z bazy (widoczne też jako skrajna prawa kolumna na liście artykułów)
(W tym przypadku Using Joomla!)
itemid = id z bazy dla danej pozycji menu.
<img src="folder/<?php echo $idArtykulu=$_GET['Itemid']; ?>.gif">
w tym przypadku wynikiem będzie plik o nazwie 280.gif
<img src="folder/<?php echo $idArtykulu=$_GET['id']; ?>.gif">
w tym 53.gif
Wszystko w temacie.
PS: skoro nie będziesz wykorzystywał zmiennej $idArtykulu nigdzie więcej to nie ma sensu jej tworzyć.
<img src="folder/<?php echo $_GET['id']; ?>.gif">
wook-ash
19-09-2011, 22:01
u mnie wygląda to inaczej....
index.php?option=com_content&view=category&id=80&Itemid=544 adres listy artykułów w kategorii
index.php?option=com_content&view=article&id=82:przykladowy-artykul&catid=80&Itemid=544 adres konkretnego artykułu w powyższej kategorii
kod:
<td>
<img src="folder/<?php echo $_GET['id']; ?>.gif">
</td>
zwraca w htmlu dla każdego artykułu w kategorii:
<td><img src="folder/80.gif">
</td>
natomiast Itemid faktycznie zwraca id pozycji menu
palyga007
19-09-2011, 22:20
@wook-ash
Przepraszam Cię najmocniej nie wiem jak to się stało, ale gdzieś umknęła mi najważniejsza część tego postu czyli "lista artykułów z kategorii"
Faktycznie w tym przypadku id wskazuje na id kategorii a nie id konkretnego artykułu.
W tej chwili już nie dam rady, ale postaram się na to zerknąć później.
wook-ash
19-09-2011, 23:36
Wielkie dzięki ;) nie ukrywam, że z chęcią dowiedziałbym się jak to działa..
Pozdrawiam!
palyga007
20-09-2011, 00:04
Wielkie dzięki ;) nie ukrywam, że z chęcią dowiedziałbym się jak to działa..ja też ;p
To takie proste, że aż sam się sobie dziwie..
<img src="folder/<?php echo $this->escape($article->id);?>.gif" />
Witam,
Jestem początkującym w Joomli i jakiś czas temu miałem podobny problem. Może się komuś przyda to rozwiązanie i sprawdzę czy to rozwiązanie jest prawidłowe:
<img src="folder/<?php echo JRequest::getVar('id');?>.gif" />
Pozdrawiam, Tomek.
wook-ash
20-09-2011, 13:12
@palyga007 no, teraz działa jak należy ;D pozdrawiam ! ; )
palyga007
20-09-2011, 14:18
@wook-ash
No problem, sorki za to, że na początku wprowadziłem Cię w błąd.
@Batki
prześledź cały wątek i zobacz dlaczego Twoje rozwiązanie nie w pełni się sprawdzi.
@palyga007
Po przeanalizowaniu wątku zauważyłem że popełniłem ten sam błąd co Ty przy czytaniu :) "JRequest::getVar('id')" wyciągnie id kategorii a nie tego co @wook-ash poszukiwał czyli poszczególnych id artykułów.
Przepraszam za zamieszanie :/
vBulletin® v4.2.5, Prawa przedruku © 2024 vBulletin Solutions, Inc. Wszystkie prawa zastrzeżone.
Tłumaczenie: Polskie Centrum Joomla!