PDA

Zobacz pełną wersję : przekazanie zmiennej z pliku do szablonu



adasko_am
16-12-2013, 12:24
witam,
postaram się opisać problem dość dokładnie.
Tworząc menu jest w opcjach takie coś jak "opcje wyglądu strony"
podając tam przyrostek pokazuje się on jako przyrostek klasy diva artykułu "item-page podany wyżej przyrostek"
Odpowiada za to zdaje się fragment kodu z pliku components/com_content/views/article.tmpl.default.php

<div class="item-page<?php echo $this->pageclass_sfx?>">
I teraz moje pytanie - jak ten fragment który zaznaczyłem czerwonym kolorem użyć w szablonie jako przyrostek klasy diva?
Może ktoś naprowadzić bo trochę przy tym siedzę ale nie za bardzo mi to wychodzi:/

dviper
16-12-2013, 13:05
A skąd ma być pobrany wtedy ten przyrostek do szablonu? Też chcesz z menu go pobrać i potem żeby do jakiegoś niezależnego diva wstawił w klase identyczny?

adasko_am
16-12-2013, 13:09
potrzebuję go pobrać z pliku components/com_content/views/article.tmpl.default.php i zastosować w pliku szablonu żeby mieć taki sam przyrostek diva w szablonie

dviper
16-12-2013, 13:17
To nie wiem do końca czy tą nazwę da się jakoś prosto przekazać do szablonu, może jakiś dobry programista się wypowie.
Ale ja bym to zrobił przy pomocy js w szablonie. Pobrał przyrostek z <div class="item-page twojprzyrostek"> i po wygenerowaniu strony wywołujesz raz funkcję, która wstawi go do Twojego diva.

adasko_am
16-12-2013, 13:20
wolałbym zrobić to właśnie przy pomocy php a nie js.Ale dzięki za zainteresowanie:)

zwiastun
16-12-2013, 14:33
I teraz moje pytanie - jak ten fragment który zaznaczyłem czerwonym kolorem użyć w szablonie jako przyrostek klasy diva?
Możesz objaśnić, o co chodzi, bo nie rozumiem?
To jest przyrostek klasy strony. Po skonfigurowaniu, podczas przetwarzania szablonu przyrostek ten jest dodawany do odpowiednich klas znaczników opisujących stronę, a te są potem wyświetlane zgodnie z arkuszami CSS.
Co chcesz "przekazywać" do szablonu, "używać w szablonie" ?

adasko_am
16-12-2013, 14:45
może jaśniej wytłumaczę. W pliku components/com_content/views/article.tmpl.default.php jest zastosowany przyrostek klasy, przyrostek ten ustawia się w menu witryny. Potrzebuję mieć ten sam przyrostek w szablonie swojej witryny. On będzie inny dla jednej pozycji menu a inny dla drugiej, trzeciej, itp. Chodzi mi o późniejsze odpowiednie sformatowanie pewnego diva, który właśnie będzie miał inny wygląd w zależności od pozycji menu. Inne będzie docelowo tło. Niestety nie wystarczy mi do tego że dany artykuł ma inny przyrostek klasy item-page, muszę mieć to w divie nadrzędnym który jest definiowany w szablonie

Karol99
17-12-2013, 21:07
Nic nie musisz "przekazywać do szablonu", w kodzie wynikowym "z automatu" będziesz miał ten przyrostek, który wpiszesz w konfiguracji pozycji menu.

Przetestuj sam - wpisz coś ze spacją na początku w którejś z pozycji i zobacz jak wygląda kod strony, możesz nawet na stronie produkcyjnej, ze spacją na początku niczym to nie grozi.

adasko_am
17-12-2013, 21:15
nie rozumiemy się jak widzę :(
Wiem że ten przyrostek jeżeli podam go przy tworzeniu menu pojawi się w kodzie wynikowym strony.
Chodzi o to że ten przyrostek pojawi się przy divie głównym samego artykułu. A ja potrzebuję ten przyrostek mieć również w divie nadrzędnym który jest w konstrukcji szablonu a nie w kodzie komponentu artykułów.

zwiastun
17-12-2013, 21:19
Wymyślasz niepotrzebne kombinacje. Do zmiany szablonów dla pozycji menu masz mechanizm stylów szablonu.

a_m
17-12-2013, 21:25
ło jejku - https://www.google.pl/?gws_rd=cr&ei=mrKwUrCbAaHa4ASZ_IHgAg#q=using+the+Page+Class+S uffix+in+Template+Code itp, itd

adasko_am
17-12-2013, 21:38
no kurcze...
@a_m właśnie o to mi chodziło. Dzięki wielkie :)