Форум русской поддержки Joomla!® CMS
05.12.2016, 06:27:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

как в компоненте достать файл шаблона без вывода информации?

 (Прочитано 164 раз)
0 Пользователей и 1 Гость смотрят эту тему.
kontrast
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 124


« : 16.03.2016, 16:40:08 »

мне надо сгенерировать файл в компоненте
тоесть мне ненадо его выводить а надо только достать, подставить свои значения и сохранить на диске
через контролер и такс перекинул задачу в хелпер с функциями
достал данные
но незнаю как достать нужный мне шаблон из папки
подскажите решение
Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Offline Offline

Пол: Мужской
Сообщений: 6453



« Ответ #1 : 16.03.2016, 17:42:14 »

достать шаблон вида компонента - это значит достать уже готовый HTML, который этот шаблон выдает, вы уверены, что именно это вам нужно?
если вам не нужна разметка, а только голая структура данных, то вам необходима модель компонента, а не шаблон
Записан
kontrast
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 124


« Ответ #2 : 16.03.2016, 18:18:34 »

мне надо сохранить например в файл /cat.txt
HTML того как выводиться эта категория
тоесть
<div class="cat"><h2>cat title</h2>...материалы, подкатегории и т д </div>
тоесть мне надо достать шаблон категории и запихнуть туда данные которые я уже имею
и сохранить это все в файл
данные я достал
знаю куда и как записать
но как конвертнуть имеющиеся обьект категории в HTML незнаю
Записан
kontrast
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 124


« Ответ #3 : 16.03.2016, 18:19:29 »

тоесть незнаю как получить текстовую строчку в соотвествии с шаблоном
Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Offline Offline

Пол: Мужской
Сообщений: 6453



« Ответ #4 : 16.03.2016, 18:32:29 »

Код
	public function renderView($name, $componentName, $format = 'raw', $params = array())
{
$name = ucfirst(strtolower($name));
$componentName = ucfirst(strtolower($componentName));
$format = (!trim($format)? 'raw' : strtolower($format));
$model = JModelLegacy::getInstance($name, $componentName.'Model');
$model->setState('catid', $params['catid']);
include_once JPATH_COMPONENT.'/views/'.strtolower($name).'/view.'.$format.'.php';
$className = $componentName.'View'.$name;
$view = new $className();
$view->setModel($model, true);
$view->catid = $params['catid'];
ob_start();
$view->display();
$out = ob_get_clean();
return $out;
}
 
« Последнее редактирование: 16.03.2016, 18:37:56 от AlekVolsk » Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Offline Offline

Пол: Мужской
Сообщений: 6453



« Ответ #5 : 16.03.2016, 18:37:19 »

обратите внимание на формат: HTML может выдать не только вид, но и всю страницу основного шаблона вместе с видом компонента, raw гарантированно выдаст только вид компонента
если нужный вид не имеет файла view.raw.php, то сделайте копию view.html.php и переименуйте соответственно (по возможности, есс-но)

PS: а зачем вам?
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet