Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не знакомая форма шаблона

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Deonis
Отправлено: 03 Февраля, 2011 - 13:35:30
Post Id



Посетитель


Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009  


Помог: 14 раз(а)




Один из моих знакомых попросил помочь подкорректировать его сайт. Сам сайт (инет-магазина), основан на eCommerce CMS. Всё бы ничего, но для меня есть не знакомая до сих пор структура построения шаблонов. К примеру, есть обычный HTML-документ, в котором присутствует следующий код:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. .....
  3. <div id="left">
  4.  
  5. {$box_CATEGORIES}
  6. {$box_FILTERS}
  7. {$box_CONTENT}
  8.  
  9. </div>
  10. .......
  11.  

На интуитивном уровне, я понимаю, что переменным присаиваются значения, которые генерируются в других, возможно PHP-документах.
Чтобы проверить себя я попробовал создать один тестовый HTML-документ с таким кодом, другой PHP-документ со значениями переменных и еще один документ, в который подключаются оба вышевзятых. И ... понятное дело, ничего не получилось. Огорчение
Если кто-то встречался или знаком с такой структурой - подскажите пожалуйста механизм работы таких шаблонов. В гугле даже не знал как создать запрос, чтоб получить на него ответ.
 
 Top
DiosPA
Отправлено: 03 Февраля, 2011 - 13:47:17
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011  
Откуда: Россия


Помог: 2 раз(а)




Шаблонизаторы загружают шаблон потом парсит его в поисках - {имя} если имя в скобках совпадает с именем переменной то шаблонизатор заменяет {} содержим Улыбка
нуна пример пиши в личку Улыбка или на icq так лучше Улыбка
 
 Top
OrmaJever Модератор
Отправлено: 03 Февраля, 2011 - 14:55:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Deonis это простые переменые.
Этот файл шаблона инклудится в php скрипт и на месте этих переменых появляется их значение.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
DiosPA
Отправлено: 03 Февраля, 2011 - 15:14:41
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011  
Откуда: Россия


Помог: 2 раз(а)




PS. разобрались по icq...
 
 Top
Deonis
Отправлено: 03 Февраля, 2011 - 15:26:02
Post Id



Посетитель


Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009  


Помог: 14 раз(а)




OrmaJever пишет:
Этот файл шаблона инклудится в php скрипт и на месте этих переменых появляется их значение.

Имено по этой логике я и пошел в начале Подмигивание И, как уже говорил, потерпел фиаско. Вот то, что я написал, пытаясь протестить свои догадки:
tmpl.html

index.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $name = "MyName";
  4. include("tmpl.html");
  5. ?>
  6.  

В итоге выводит на страницу "{$name}". Так что тут не все просто, как Вы написали.

(Отредактировано автором: 03 Февраля, 2011 - 15:27:23)

 
 Top
Invert
Отправлено: 03 Февраля, 2011 - 15:29:43
Post Id



Частый гость


Покинул форум
Сообщений всего: 223
Дата рег-ции: Нояб. 2010  


Помог: 5 раз(а)




Вы с шаблонизаторами хоть немного знакомы?
Там все просто, относительно. Магическим способом ничего само по себе не заменится, замену и производит шаблонизатор.
 
 Top
OrmaJever Модератор
Отправлено: 03 Февраля, 2011 - 15:40:08
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Invert пишет:
Там все просто, относительно. Магическим способом ничего само по себе не заменится, замену и производит шаблонизатор.

имено в таком варианте шаблонизатора впринципе нету. По такой же системе работаеют шаблоны wordpress.

(Отредактировано автором: 03 Февраля, 2011 - 15:41:05)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Invert
Отправлено: 03 Февраля, 2011 - 15:50:40
Post Id



Частый гость


Покинул форум
Сообщений всего: 223
Дата рег-ции: Нояб. 2010  


Помог: 5 раз(а)




OrmaJever пишет:
По такой же системе работаеют шаблоны wordpress.

По какой схеме? Магической замены спец.тегов в шаблоне?

Подобная схема подразумевает наличие контроллера, которые будет производить замену.

Судя по сообщениям и примерам автора темы, он кажется этого не понимает:
DiosPA пишет:
которые генерируются в других, возможно PHP-документах.
 
 Top
OrmaJever Модератор
Отправлено: 03 Февраля, 2011 - 16:03:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Invert схему же написали вверху Однако
tmpl.html

index.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $name = "MyName";
  3. include("tmpl.html");
  4. ?>


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
DiosPA
Отправлено: 03 Февраля, 2011 - 16:16:48
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011  
Откуда: Россия


Помог: 2 раз(а)




все шаблонизаторы как 1 Улыбка
только всё равно каждый веб мастер предпочитает свой создать (для хороших проетов имхо) Улыбка
главное что я пока понял, в шаблоне не должно быть php выставок вообще Улыбка
ну это моё мнение мне так удобнее просто Улыбка

Вобще шаблонизатор это вещь отличная Улыбка
а вот всякие include это не шаблонизация а так разбивка на блоки... опять же имхо Улыбка

Ps. давано на 1 формуме тоже спрашивал про шаблонизацию в итоге меня обвинили в том что я ничего не смыслю в php сказали "делай как все" (тоесть includ ) чуш полная Голливудская улыбка
 
 Top
OrmaJever Модератор
Отправлено: 03 Февраля, 2011 - 17:05:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




DiosPA пишет:
Вобще шаблонизатор это вещь отличная

Несовсем.Стандатный шаблонизатор (как в dle например) заменяет шаблон на динамичный код, а такой как написано выше просто исполняет его. Из-за замены шаблонизатор первого типа работает медленее, а это главный минус теперишних веб сайтов Подмигивание


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB