|
|
|
| Зравствуйте, устроился на новую работу(фактически учеником программиста исправлять мелкие баги), а там готовый сайт с использованием Smarty, много прочитал, из-за того что сайт ооочень большой остаються непонятные вопросы, подскажите кому не трудно)))
1. Что означает эта запись:
<span class="tabs-title">{g}photo_manager.upload_source{/g}</span>
<a class="tab-header tab-header-active" href="#add-photo-computer">{g}photo_manager.upload_source_1{/g}</a>
|
2. Как мне найти файл, который реализует и подставляет в шаблон значения?
Вообщем дремучий лес | |
|
|
|
|
|
|
|
для: Filsh
(09.06.2010 в 18:51)
| | {g}photo_manager.upload_source{/g} - обычно так обрамляются блочные функции, а то, что между {g} и {/g} похоже на плагин, только плагины должны начинаться вроде как со smarty_ - иначе смарти их не увидит. | |
|
|
|
|
 270.9 Кб |
|
|
для: Лена
(09.06.2010 в 20:10)
| | Гид по смарти. Может что найдешь здесь | |
|
|
|
|
|
|
|
для: Лена
(09.06.2010 в 20:10)
| | По контексту это не плагин, а результат работы какой-то небольшой функции, потому что выводит одну текстовую строку. Вопрос в том как мне ее найти?? ведь там тысячи файлов?? | |
|
|
|
|
|
|
|
для: Filsh
(09.06.2010 в 23:36)
| | У вас есть Far manager или типа другого файлового менеджера?
Пробуйте поиском.
В Far жмете ALT + F7 - открывается окно поиска, вбиваете строку, которую хотите найти, выводит список файлов, в которых содержится эта строка. Может, найдете совпадение... Хотя если это уже результат работы функции, даже не знаю, как вам помочь...
Там какая-то привязка идет к photo_manager, оба блока так начинаются - пробуйте это по поиску. | |
|
|
|
|
|
|
|
для: Лена
(09.06.2010 в 23:48)
| | Так не выйдет, сайт весит ~700 метров, я уже пробовал в Zend, очень долго и не всегда получается.
Возникла идея:
использовать константу _FILE_ в шаблоне,
смарти подхватит шаблон и каким-то образом заставить
его отобразить содержимое константы в нужном мне месте | |
|
|
|
|
|
|
|
для: Filsh
(10.06.2010 в 00:10)
| | >Так не выйдет, сайт весит ~700 метров,
Не надо. В любом разумно написанном движке файлы шаблонов лежат отдельно, и уже получается никак не 700 метров.
Я уже говорила, перед вами - блоковая функция. Есть встроенные блоковые функции типа {if}{/if}, а это уже создали свою функцию, т.е. это плагин.
Смарти все плагины обычно держит в одной папке - Smarty/plugins
Файлы блоков начинаются так: block.textformat.php, а значит, в вашем случае будет block.g.php и функцию вам надо искать такую: function smarty_block_g. Неужели так тяжело зайти в папку плагинов и поиском найти, где объявляется эта функция? | |
|
|
|
|
|
|
|
для: Лена
(10.06.2010 в 11:56)
| | >>Так не выйдет, сайт весит ~700 метров,
>
>Не надо. В любом разумно написанном движке файлы шаблонов лежат отдельно, и уже получается никак не 700 метров.
>
>Я уже говорила, перед вами - блоковая функция. Есть встроенные блоковые функции типа {if}{/if}, а это уже создали свою функцию, т.е. это плагин.
>Смарти все плагины обычно держит в одной папке - Smarty/plugins
>Файлы блоков начинаются так: block.textformat.php, а значит, в вашем случае будет block.g.php и функцию вам надо искать такую: function smarty_block_g. Неужели так тяжело зайти в папку плагинов и поиском найти, где объявляется эта функция?
Только заметил этот пост)))
Да, Лена, все так, с этим я уже разобрался, вопрос в другом:
в шаблоне(tpl или htm) нет подключения файла php (reqiure и т. п.)!!!,
вот в чем путаница, как мне узнать в каком файле php вызывается данный шаблон??
и это не block.g.php.
На данный момент самый реальный вариант - поиском, по крайней мере пока не выучу матчасть | |
|
|
|
|
|
|
|
для: Filsh
(09.06.2010 в 18:51)
| | Можно попробовать поискать в исходном коде имя шаблона. php-файл, если он выводит этот шаблон, должен содержать в своем исходном коде имя шаблона. Ну а там уже смотреть найденные php-файлы. Скорее всего в каком-то из них вы найдете зацепку.
У Abode Dreamweaver CS4 очень хороший поисковик по исходному коду. Попробуйте его, если есть возможность.
Вот хорошая документация по smarty:
http://www.fpublisher.ru/documentation/smarty_doc/ | |
|
|
|
|
|
|
|
для: Ирбис
(10.06.2010 в 09:45)
| | Эта вся документация с официального сайта Smarty, ее полно в инете
что значит {g} и {/g}?? | |
|
|
|
|
|
|
|
для: Filsh
(10.06.2010 в 10:19)
| | Читайте документацию. В Smarty нет встроенной конструкции {g}{/g}, следовательно это функция/плагин написанный пользователем. Что она делает, ищите и изучайте. | |
|
|
|
|
|
|
|
для: Filsh
(10.06.2010 в 10:19)
| | Надо смотреть файл /path/to/smarty/plugins/block.g.php
Это самописный блоковый плагин.
Скорее всего ничего сложного, просто он как-то модифицирует то что между {g}{/g} (принимая эту строку в качестве параметра) и заменяет эту конструкцию на результат модификации. | |
|
|
|
|
|
|
|
для: Axxil
(10.06.2010 в 17:32)
| | Да, так оно и есть, нашел я там этот файл.
Попытка использовать _FILE_ не увенчалась успехом, смарти умный
и все распознает, надо придумать что-то еще.... | |
|
|
|
|
|
|
|
для: Filsh
(10.06.2010 в 18:34)
| | Зачем что-то придумывать, если файл найден? | |
|
|
|
|
|
|
|
для: Axxil
(10.06.2010 в 20:48)
| | Это не последний файл, который мне надо будет найти в будущем | |
|
|
|
|
|
|
|
для: Filsh
(10.06.2010 в 22:18)
| | Структура смарти гораздо проще чем кажется на первый взгляд. Лучше то время, которое собираетесь потратить на придумывание "способа" используйте для изучения документации. Окупится с лихвой. | |
|
|
|
|
|
|
|
для: Axxil
(10.06.2010 в 22:37)
| | Хорошо, прислушаюсь к Вашему совету))))) буду учить, спасибо. | |
|
|
|