Jump to content
  • 0
cherro0125

Umieszczenie linku do bitu CSS'a w szablonie

Question

Jak wygląda osadzanie zewnętrznego bitu CSS'a w szablonie? 

Przy użyciu takiej formuły niestety nie działa.


{{ $css = \IPS\Theme::i()->css( 'charactercreate.css', 'test','front');}}
<link rel='stylesheet' href='{expression="\IPS\Http\Url::external( $css )->setQueryString( 'v', \IPS\SUITE_UNIQUE_KEY )"}' media='all'>

 

Share this post


Link to post
Share on other sites

16 answers to this question

Recommended Posts

  • 1

W applications/TWOJA_APLIKACJA/dev/css/front/plik.css

i wtedy używasz kodu w aplikacji:

\IPS\Output::i()->cssFiles  = array_merge( \IPS\Output::i()->cssFiles, \IPS\Theme::i()->css( 'plik.css', 'TWOJA_APLIKACJA', 'front' ) );

możesz to dodać w metodzie init w pliku Application.php to będzie ładowany css automatycznie wszędzie w obrębie tej aplikacji

Share this post


Link to post
Share on other sites
  • 0

Ale co dokładnie chcesz zrobić? Jak tworzysz aplikację to css dodaje się z poziomu aplikacji, jak tworzysz skin to powinieneś swoje css'y umieścić w custom.css

Share this post


Link to post
Share on other sites
  • 0

Aplikacje. 

Czyli ten CSS mam dodać wewnątrz pliku modułu danej aplikacji tak? W jaki sposób?

Share this post


Link to post
Share on other sites
  • 0

Czy jeżeli dodałbym ten plik CSS bezpośrednio poprzez dodanie go w edytorze stylów to owa linijka powinna tak samo załadować ten plik bez problemu?

Share this post


Link to post
Share on other sites
  • 0

Mam kolejny problem. 

Otóż w trybie developerskim pięknie wszystko śmiga. Jednak bez niego mimo przebudowania aplikacji szablon nie łapie mi na normalnym trybie CSS'a. Co może być nie tak? 

Share this post


Link to post
Share on other sites
  • 0

Zdeklarowałem w pliku modułu takim kodem jaki wcześniej dostałem. Aplikacje przebudowałem tak aby styl CSS znajdował się też w edytorze stylów. Jednak jeśli nie przekleję zwyczajnie kodu CSS i nie wrzucę go do szablonu .phtml w znacznikach <style></style> to poza trybem developerskim nie łapie tego pliku CSS jeśli go nie wrzucę prosto do szablonu w tagi.

Share this post


Link to post
Share on other sites
  • 0

Sprawdź jeszcze raz, gdzie masz plik ...css, i jak wygląda ta linika, którą wkleiłem wyżej. bo jeśli wszystko masz prawidłowo to nie ma szans, żeby nie działało. Daj znać jak i gdzie masz poumieszczane to postaram się pomóc.

Share this post


Link to post
Share on other sites
  • 0

Linijka wygląda tak:

\IPS\Output::i()->cssFiles  = array_merge( \IPS\Output::i()->cssFiles, \IPS\Theme::i()->css( 'characterCreate.css', 'lslife', 'front' ) );

Plik CSS znajduje się w folderze aplikacji w /dev/css/front/characterCreate.css.

I w przypadku trybu developerskiego normalnie go łapie bez problemu. Po przebudowaniu aplikacji jednak mimo tego, że bit CSS znajduje się na swoim miejscu. 

https://gyazo.com/6db0a78ad4e1f52c7112c415ff255a9c

 

Szablon go nie łapie. 

https://gyazo.com/78f7e93d415753ccf33a40cbcc716173

Powinienem w Szablonie dodać jakąś linijkę, aby dodać ten plik CSS?

Share this post


Link to post
Share on other sites
  • 0

Ale w szablonie nie potrzebujesz mieć żadnego pliku css. Jak go dodajesz w ten sposób to on jest automatycznie wstawiany do head strony. Ale tutaj już widzę jedną nieścisłość. Na pierwszym screenie masz characrercreate.css a nie characterCreate.css wielkość liter ma tutaj znaczenie

Share this post


Link to post
Share on other sites
  • 0

Mimo zmiany wielkości liter w kodzie na odpowiedni dalej bez zmian.

Share this post


Link to post
Share on other sites
  • 0

Zaraz przed lub zaraz po pobraniu szablonu. W kontrolerze modułu.

Edited by cherro0125

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

W celu świadczenie usług przez nasz Serwis na najwyższym poziomie, w ramach Serwisu wykorzystujemy pliki Cookies (tzw. ciasteczka). Korzystając ze stron Serwisu IPSBEYOND.PL bez zmiany ustawień przeglądarki będą one zapisane w pamięci urządzenia. Jeżeli nie dokonacie Państwo zmiany ustawień przeglądarki internetowej to wyrażacie zgodę na zapisywanie plików Cookies.