Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> powialajacy sie wpis w plikach tpl, Jak zrobic aby wpis w 3 plikach TPL byl tylko w jednym.
mkapi
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 9.05.2007

Ostrzeżenie: (10%)
X----


Witam.
Mam problem z moim menu.
Jak wyczytałem i z tego co rozumie to po to się wprowadza sysyem szablonów smarty żeby nie powielać sobie kodu wiele razy tylko napisać go raz ,a on będzie tam gdzie chcemy. Oddzielić część logiczną od części prezentacyjnej...

Ale wracając do tematu ...
Interesuje mnie jak zrobić coś takiego.

Na początek wyjaśnię że moje podstrony w szablonach *.tpl.

Przykładowo 1.tpl , 2.tpl, 3.tpl itp.

No i każdy szablon zawiera to samo menu napisane w css.
Oto przykład jednego z plików. np: (1.tpl)

  1. <html xmlns="http://www.w3.org/1999/xhtml" lang="{$Interface->getMessage('html_symbol')}" [html]xml:lang="{$Interface->getMessage('html_symbol')}">
  2.  
  3.  
  4.  
  5. <script> {literal}
  6.  
  7. function displayWindow(url, width, height) {
  8. var Win = window.open(url,"displayWindow",'width=' + width + ',height=' + height + ',resizable=0,scrollbars=yes,menubar=no' );
  9. }
  10. {/literal}
  11.  
  12. </head>
  13.  
  14.  
  15.  
  16. <style type="text/css" media="screen">
  17. @import "tanfa.css";
  18. {literal}
  19.  
  20. #menu {
  21. width: 12em;
  22. background: #eee;
  23. itp....
  24. itd...
  25. {/literal}
  26. <!-- Potem jest to menu które chce aby bylo widzoczne na każdej z tych 1,2,3 podstron. -->
  27.  
  28.  
  29. <table cellspacing="0" cellpadding="0" border="0" frame="void" rules="none" style="WIDTH: 705px; HEIGHT: auto">
  30. <tr >
  31. <td valign="top" >
  32.  
  33. <div id="menu">
  34. <ul>
  35. <li>
  36. <h2 align="center">{$Interface->getMessage('menu')}</h2>
  37. <ul>
  38. <li><a href="">{$Interface->getMessage('lang')}</a>
  39. <ul>
  40. <li><a href="index.php?go=1&lang={$Interface->getMessage('lang')}</a>1</li>
  41. <li><a href="index.php?go=2&lang={$Interface->getMessage('lang')}</a>1</li>
  42. <li><a href="index.php?go=3&lang={$Interface->getMessage('lang')}</a>1</li>
  43. </li>
  44.  
  45.  
  46.  
  47. </td></tr></table>


Próbowałem cały ten tekst wżucić w tablice (index.php) ale wywala mi błąd na moich ..
  1. {$Interface->getMessage('lang')}

Musiał bym nie zachowywyać tego wpisu, ale jest mi potrzebny żeby zmieniała się nazwa menu.
To mam po to by zmieniał się jezyk strony.
NO i nie wiem co tu wymyślić.
Próbowałem też przez opcję wczytywania pliku menu.tpl Ale wtedy nie ma go w template_c i serwer nic z nim nie robi czyli wczytuje caly tekst z zywca .. A ja chce zeby mi przyokazji tlumaczyl z moich plikow xml.

Lub moze zrobic tak że jak stronka jest w PL to wczytuje menupl.tpl ,a jak jest stronka w UK to wczytuje menuuk.tpl
Wtedy ominol bym opcję
  1. {$Interface->getMessage('lang')}
tylko jak to zrobic (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Napisze jeszcze ze ten wpis
  1. {$Interface->getMessage('lang')}
kiruje czy stronka ma pobierac opisy z pliku pl.xml lub z uk.xml

Nakierujcie mnie prosze.
Go to the top of the page
+Quote Post
sf
post
Post #2





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

Ostrzeżenie: (0%)
-----


Nie możesz zrobić po prostu:
Kod
{if $lang eq 'pl'}
{include file="menuPL.tpl"}
{else}
{include file="menuEN.tpl"}
{/if}


Ten post edytował sf 11.08.2007, 11:50:44
Go to the top of the page
+Quote Post
mkapi
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 9.05.2007

Ostrzeżenie: (10%)
X----


co to jest to eq Napisałeś
  1. {if $lang eq 'pl'}
I mam to umiescic w pliku index.php jak rozumiem. Pomylka . Skrypt który mi napisałeś mam umieścić w jednym z szablonów . Oraz zrobić . dwa pliki. Zobacze. I rozumiem że mam to zrobić tak. Zamiast tej całej tabelki zawierającej odnośniki wkleić kod który mi napisałeś. TAk. </td></tr></table>[/html]JUZ SOBIE PORADZIŁEM> TEMAT UWAZAM ZA ZAKNIĘTY> DZIEKUJE
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 23:08