Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
HTMLki — автономный шаблонизатор с интеграцией в Laravel. Он отличается от большей части современных шаблонизаторов, которые изобретают заново тот же PHP (гибкий, неудобный синтаксис) или Mustache (ограниченный, хороший синтаксис) — вместо этого обычный HTML дополняется циклами, условиями, переменными, языковыми строками и другими вещами.
xml ‹ul $menu> ‹li "$classes"> ‹img $icon src=$icon> ‹a "$url" target=$target>$caption‹/a> ‹/li> ‹/endul>
HTMLki компилируется в обычный PHP-код и потому весьма быстр.
Поля форм автоматически восстанавливают введённое значение, если не указано обратное.
Атрибуты src, href, action автоматически преобразуются в полный URL (<a href="user@login">) — не нужно писать вызовы asset(), route() и т.п.
Полезные теги: <csrf>, <errors> (форматирование сообщений Validator), <css> (регистрация asset) и др.
Локализация «из коробки». Циклы. Переменные. Условия. Магия тегов и атрибутов. Обычный PHP-код. Очень простое расширение почти любой части движка.
Ссылки: пакеты Laravel, GitHub, форум Laravel.com.
Установка — обычная, через Artisan:
shartisan bundle:install htmlki
После этого нужно перенести настройки из bundle.php в ваш application/bundles.php.
HTMLki заработает для шаблонов с расширениями .ki.php, .ki.html, .htmlki. Так как это обычный HTML, просто дополненный, большинство IDE будут изначально правильно подсвечивать его разметку.
Полное руководство по синтаксису (англ.).
Готов ответить на вопросы или дать больше примеров, если у кого-то есть интерес.
Не в сети
формат входных данных?
хочу чтоб в 3м li стоял span с классом xzxzxz
Не в сети
- формат входных данных?
Это обычные шаблоны, как Blade или просто HTML, только с другим расширением:
$menu = array(
array('classes' => 'current', 'icon' => false, 'url' => 'page/1', 'target' => '_blank'),
array('classes' => '', 'icon' => asset('menu-2.gif'), 'url' => 'page/2', 'target' => null),
...
);
// application/views/myhtmlki.ki.php, myhtmlki.ki.html или myhtmlki.htmlki
View::make('myhtmlki')->with('menu', $menu);
- хочу чтоб в 3м li стоял span с классом xzxzxz
Есть несколько вариантов выбирай какой нравится:
xml <ul $menu> ... <!-- вариант 1 --> <span ${ $key == 2 } "class-of-li-3">...</endspan> <!-- вариант 2 --> <if $key == 2> <span>...</span> </if>
Третий вариант — просто в скрипте при передаче выставлять новую переменную. Но можно и без этого. Вот что происходит выше:
Вообще, в циклах автоматически доступны несколько полезных переменных, такие как $isEven/$isOdd (четный/нечетный элемент), $isFirst/$isLast, $key (ключ в массиве), $i (номер элемента — для ассоциативных массивов не обязательно совпадает с $key) и ещё несколько. Список см. здесь.
Чтобы вложенные циклы не перекрывали переменные используются префиксы — форма записи как у выражений выше, но с чем-то между первым долларом и скобкой: <span $nested{ $listVar or expr }> — тогда переменные становятся $nested_menu, $i_nested и т.д.
Не в сети
какой-то треш. не знаю почему вы считаете что это проще и удобней. я за пхп
Не в сети
Не в сети
какой-то треш. не знаю почему вы считаете что это проще и удобней. я за пхп
А в чем треш?
Вы сможете на пхп сделать то же самое проще и понятнее?
Ну тогда пример кода в студию!
Здесь же изменили поведение существующего щаблона минимальным вмешательством. По моему неплохо.
Надо почитать доки по этому шаблонизатору.
Привлекает что он не портит HTML. А как валидаторы отзываются на шаблоны HTMLki? Кто нибудь пробывал их подсовывать для валидации???
Не в сети
- А как валидаторы отзываются на шаблоны HTMLki?
На сам HTMLki они, естественно, будут ругаться. Но ведь ты не отправляешь HTMLki в браузер как он есть -из него генерируется полностью рабочий HTML 5 или XHTML (в зависимости от настройки, HTML 5 по умолчанию). Так что здесь проблем никаких.
Циклы/условия HTMLki — удобная, но не обязательная для использования вещь, если они кому-то кажутся неочевидными. Это только один из аспектов шаблонизатора. Кроме них есть мелочи, которые делают проще написание HTML, например:
xml<input name=login size=5>
xml<textarea />
→
xml<textarea></textarea>
xml<a "http://google.com">
→
xml<a href="google.com">
Это только несколько самых простых моментов, но даже они делают вёрстку намного приятнее, устраняя излишний формализм HTML.
- Надо почитать доки по этому шаблонизатору.
Не в сети
Страницы 1