Настройка шаблонизатора для разработки

Если нужно создать/сверстать шаблон для livestreet, рекомендую добавить настройку в шаблонизатор.
Smarty->force_compile
Очень удобная штука, когда верстаешь и хочешь быть уверенным в том, что страница действительно обновилась при тесте.
Код внутри.


Читать дальше →

При смене шаблона выдает ошибку Smarty.class.php on line 1092

При изменении стандартного шаблона на шаблон например trewor или Nj выдает вот такую ошибку
Warning: Smarty error: unable to read resource: «header.tpl» in /home/h24648/data/www/hooter.com.ua/engine/lib/external/Smarty-2.6.19/libs/Smarty.class.php on line 1092
Подскажите что правитЬ?

Небольшой вопрос по Smarty

Такая конструкция {$oUserProfile->getDUserPurpose()} у меня выведет на экран «4».
В переменной текстовок {$aLang.plugin_im_r_1_4} у меня содержится некая строка текста.
Можно ли в Smarty сделать так, чтобы четверка подставилась в имя переменной для текстовок?
Поясню: как сделать подобную конструкцию {$aLang.plugin_im_r_1_{$oUserProfile->getDUserPurpose()}}.

Заранее спасибо.

Как обработать своей функцией?

Вопрос наверное больше относится к Смарти, но всё же.

Есть у меня темплейт, например, topic.tpl, отвечающий за вывод топика. В нём есть всякие конструкции типа:
{$oTopic->getTitle()|escape:'html'}

То есть, вроде как, функции в некотором виде оттуда вызывать можно, но добавить свою нельзя, хоть она и стандартная PHP’шная. То есть, в моём случае, было бы удобно сделать как-то так:
{$oTopic->urlencode(getTitle())}

Так не получается. Я понимаю, что есть какое-то место, где функция создаётся (если она своя), другое место, где она как-то переопределяется, чтобы вызываться без параметров (?), но где это всё я так и не нашёл.

Теперь вопрос: как мне добиться того, чтобы urlencode() заработал?

шаблонизатор Blitz

Недавно в голове зародилась идея убить сменить шаблонизатор в LS, и поменять его на Blitz, отсюда соотвественно возникают вопросы, кто такой такой Blitz и с чем его едят, попробую объяснить вкраце:

1)Блитз представляет из себя блочный шаблонизатор, что принципиально отличает его от Smarty используемого в Livestreet.

2)Smarty по сравнению с Blitz — язык программирования.

3)шаблонизатор написан на C, подключается как расширение PHP, это позволит со спокойно душой увеличивать нагрузку на ваш проект, т.к вообщем-то сам шаблонизатор и расчитан на большие проекты.

4)Скорость шаблонизатора сопоставима со скоростью обычного php.

5)В шаблонах нет логики приложения, нет циклов, ветвлений, это все позволит по максимум упростить работу верстальщикам.



6)Код движка значительно «похудеет» и его будет проще и быстрее разобрать.



На данный момент я потрошу меняю шаблонизатор на версии 0.4, с результатами хирургических вмешательств циркулем работы ознакомлю в ближайшее время.

При переезде на другой хостинг в смарти перестали передаваться переменные

При переезде на другой хостинг в смарти перестали передаваться переменные. Никак не получается реанимировать. Шаблоны грузятся, но все переменные в них абсолютно null-евые. Никто не сталкивался, куда дальше копать?

Вот так выглядит например код формы логина:
<form action="//" method="POST">
				<h3></h3>

				<div class="lite-note"><a href="//"></a><label for="login-input"></label></div>
				<p><input type="text" class="input-text" name="login" tabindex="1" id="login-input"/></p>
				<div class="lite-note"><a href="//reminder/" tabindex="-1"></a><label for="password-input"></label></div>
				<p><input type="password" name="password" class="input-text" tabindex="2" id="password-input"/></p>
				<div class="lite-note">
					<button type="submit" class="button"><span><em></em></span></button>
					<label for="" class="input-checkbox"><input type="checkbox" name="remember" checked tabindex="3" ></label>
				</div>
				<input type="hidden" name="submit_login">

		</form>

			</div>

И да, не подгружаются ЦСС-ки и др.файлы из скинов.

Проблема при разработке шаблона

Здравствуйте.

Совсем недавно столкнулся с версткой шаблона в livestreet и возникла трудность, решить которую сам не смог (бьюсь как рыба об лёд, но результата нет).

Суть в следующем: на стыке tpl-файлов выскакивает неизвестно откуда знак вопроса.

Вот пример из header.tpl:

...
<p id="content_leftBlock_navigatorHeader">
    Что будем смотреть?
</p>
{include file=header_nav.tpl}
...


После окончания абзаца выскакивает "?" и лишь затем идёт обработанный header_nav.tpl.
В чем может быть дело?

Модификаторы Smarty в шаблонах - ранг пользователей

Помимо стандартных модификаторов (truncate,default etc.) в шаблонах Smarty можно использовать свои. Синтаксис для них в точности такой же.
Для примера — определим ранг пользователя в зависимости от его рейтинга с помощью модификатора rating.
smarty.php5.com.ua/plugins.naming.conventions/ — соглашение об именах плангинов можно посмотреть тут.

Читать дальше →

модификатор склонений в смарти

Взято с хабра.

1. качаем модификатор collectionstudio.com/external/habr/modifier.declension.php
2. добавляем его в classes/lib/external/Smarty-2.6.19/libs/plugins
3. в ленг-файл добавляем строчки (указан пример):

  'vote_count_declension'=>'голос; голоса; голосов',
  'vote_count_declension_lang'=>'ru',


4. В шаблон добавляем:

{$oSide->getVoteCount()|declension:$aLang.vote_count_declension:$aLang.vote_count_declension_lang}


Так же можно добавить другие языки в модификатор

Пользуемся.