Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [OPT] Wyświetlanie znaczników HTML
Forum PHP.pl > Forum > Gotowe rozwiązania > Systemy szablonów
Matimor
Witajcie
Mam taki oto problem, stworzony mam system języków i mam dziwny problem jeżeli w zmiennej językowej pojawi się html, po prostu OPT traktuje to jako tekst i przepisuje znaczniki tzn. nie zamienia np. <b> na wytłuszczenie. Wywołanie języka następuje tak:

Kod
{$lang::zmienna_jezykowa} - <b>Jakaś wartość:</b>


  1. <tr>
  2. <td>{$lang::zmienna_jezykowa}</td>
  3. <td>20</td>
  4. </tr>


I wyświetli mi coś takiego:

  1. <tr>
  2. <td><b>Jakaś wartość:</b></td>
  3. <td>20</td>
  4. </tr>


Zyx
Bo musisz powiadomić go, że ma tego nie robić. Można to zrobić na trzy sposoby:
- Globalnie w konfiguracji (nie polecam)
- Dla całego szablonu (atrybut escape w instrukcji opt:root)
- Dla pojedynczego wyrażenia - poprzez modyfikatory:

Kod
{e:$foo} - wymuś escape'owanie, jeśli jest wyłączone.
{u:$foo} - wyłącz escape'owanie, jeśli jest włączone


PS. Polecam oprzeć Ci ten system językowy o coś innego, niż jawne używanie obiektów po stronie szablonów. Zresztą, OPT posiada wbudowane wsparcie dla tego typu systemów; jeśli nie korzystasz z gettexta, to radziłbym Ci właśnie o nie się oprzeć.
Matimor
Niestety żądna z tych metod mi nie pomogła, znaczniki HTML dalej są przepisywane.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.