0 Пользователей и 1 Гость просматривают эту тему.
  • 28 Ответов
  • 18525 Просмотров
*

efimov777

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Что такое jdoc
« : 03.07.2009, 19:15:12 »
Народ подскажите новичку что есть jdoc  в конструкции <jdoc:include type="head" /> . И что ее обрабатывает. Я так понимаю это не phpшная конструкция так как она не в тегах php и в HTML ьакого тега я не нашел. Тогда что же ее обрабатывает?
*

beliyadm

  • Легенда
  • 9512
  • 1650 / 66
  • Севастополь == Россия
Re: Что такое jdoc
« Ответ #1 : 03.07.2009, 19:43:19 »
это шаблонизатор движка, в данном случае эта конструкция выводит стандартные параметры для HEAD, а также для подгрузки скриптов\стилей в сторонних компонентах
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Записки нетрезвого кодера
Skype: beliyadm_pb
*

efimov777

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Re: Что такое jdoc
« Ответ #2 : 03.07.2009, 19:52:56 »
спасибо, но я хотел узнать  где она (jdoc) определена если это джумловская конструкция, если же не джумловская то чья же /?
*

beliyadm

  • Легенда
  • 9512
  • 1650 / 66
  • Севастополь == Россия
Re: Что такое jdoc
« Ответ #3 : 03.07.2009, 20:02:56 »
да, это конструкция ядра для шаблонизации
но что конкретно вас интересует?
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Записки нетрезвого кодера
Skype: beliyadm_pb
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #4 : 03.07.2009, 20:10:10 »
Описание формата: http://docs.joomla.org/Jdoc_statements
Парсер формата '<jdoc:include ... />': JDocumentHTML::_parseTemplate
/libraries/joomla/document/html/html.php
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

beliyadm

  • Легенда
  • 9512
  • 1650 / 66
  • Севастополь == Россия
Re: Что такое jdoc
« Ответ #5 : 03.07.2009, 20:13:20 »
userxp - спасибо, сам давно искал эту ссылку
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Записки нетрезвого кодера
Skype: beliyadm_pb
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #6 : 03.07.2009, 20:20:43 »
всегда пажалста
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

efimov777

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Re: Что такое jdoc
« Ответ #7 : 03.07.2009, 22:31:29 »
Спасибо большое, потихоньку начинает все проясняться. Только вот еще что не понятно. На сколько я понимаю все что в тегах <?php...?> обрабатывавется как код рнр, все остальное обычный хтмл. Так вот по идее чтобы эта вся конструкция была правильно разобрана тем самым парсерем это должен быть код рнр , а он там не в рнршных тегах.
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
include_once (dirname(__FILE__).DS.'/ja_vars.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>">
<head>
<jdoc:include type="head" />
<?php JHTML::_('behavior.mootools'); ?>


 Как же он тогда обрабатывается ?
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #8 : 04.07.2009, 00:23:28 »
для этого есть такая волшебная штука, как захват буфера обмена :)
таким образом работают большинство темплейторов
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

efimov777

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Re: Что такое jdoc
« Ответ #9 : 04.07.2009, 17:53:19 »
круто! а можно поподробнее.. спасибо
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #10 : 04.07.2009, 18:12:33 »
php manual в руки
http://php-book.net/ob-start.html
Код: php
ob_start();
    include_once( 'template.php' );
    $c = ob_get_contents();
ob_end_clean();
/*
... some code ...
*/

echo $c;

« Последнее редактирование: 04.07.2009, 18:17:02 от userxp »
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

efimov777

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Re: Что такое jdoc
« Ответ #11 : 04.07.2009, 19:26:04 »
Насколько я понял енто дело все загоняет в буфер , а потом перед выводом из буфера проверяет каждую строку в не зависимости есть пхпшные теги или нет . Так ? Ну в оббщем если , я в глубоко пока лезть не собираюсь , так принуип понять 
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #12 : 04.07.2009, 20:39:05 »
Насколько я понял енто дело все загоняет в буфер
он не загонят его в буфер.
оно и так ВСЕГДА идет в буфер.
просто ob_start позволяет вставить перехватчик содержимого буфера.
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

efimov777

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Re: Что такое jdoc
« Ответ #13 : 04.07.2009, 20:42:50 »
ну вроде понятно спасибо
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Что такое jdoc
« Ответ #14 : 06.12.2009, 19:42:11 »
Здравствуйте!
Подскажите пожалуйста, где можно поменять содержимое публикуемое конструкцией: <jdoc:include type="head" />
Может кто встречался с такой необходимостью?
кодинг на php.
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Что такое jdoc
« Ответ #15 : 06.12.2009, 19:57:11 »
Где угодно. API здесь и не только head
http://api.joomla.org/Joomla-Framework/Document/JDocument.html
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Что такое jdoc
« Ответ #16 : 06.12.2009, 20:34:25 »
Где угодно. API здесь и не только head
http://api.joomla.org/Joomla-Framework/Document/JDocument.html
Спасибо уважаемый LEX.
А может Вы мне еще подскажите
в файле /libraries/joomla/document/html/html.php есть конструкция

function setHeadData($data)
   {
      $this->title      = (isset($data['title']))? $data['title'] : $this->title;
      $this->description   = (isset($data['description']))? $data['description'] : $this->description;
      $this->link         = (isset($data['link']))? $data['link'] : $this->link;
      $this->_metaTags   = (isset($data['metaTags']))? $data['metaTags'] : $this->_metaTags;
      $this->_links      = (isset($data['links']))? $data['links'] : $this->_links;
      $this->_styleSheets   = (isset($data['styleSheets']))? $data['styleSheets'] : $this->_styleSheets;
      $this->_style      = (isset($data['style']))? $data['style'] : $this->_style;
      $this->_scripts      = (isset($data['scripts']))? $data['scripts'] : $this->_scripts;
      $this->_script      = (isset($data['script']))? $data['script'] : $this->_script;
      $this->_custom      = (isset($data['custom']))? $data['custom'] : $this->_custom;
   }
откуда в переменные $this->_scripts; $this->_script;$this->_custom; или $data['scripts'] $data['script'] $data['custom'] поступают данные, выводимые в последствие конструкцией <jdoc:include type="head" />
кодинг на php.
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Что такое jdoc
« Ответ #17 : 06.12.2009, 20:49:00 »
$this->_scripts из объекта JDocument, $data['script'] из параметра функции array $data: The document head data in array form
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Что такое jdoc
« Ответ #18 : 06.12.2009, 21:06:11 »
$this->_scripts из объекта JDocument, $data['script'] из параметра функции array $data: The document head data in array form
И насколько я правильно понял к переменной $this->_scripts можно обратится прямо из шаблона и заменить ее содержание на своё. кроме того доступ к ней могут получать и установленные компоненты, для вывода своих скриптов на страницы со своим содержанием?
и отследить какой компонент подгружает свои скрипты в заголовок можно методом поочередного выключения установленных компонентов.
кодинг на php.
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Что такое jdoc
« Ответ #19 : 06.12.2009, 21:29:52 »
1.Угу
2.Угу
3.Не-а Отследить можно по пути подключения скриптов там обычно имя компонента/плагина/модуля указано.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Что такое jdoc
« Ответ #20 : 06.12.2009, 21:46:26 »
понятно. по 3 пункту, это если файл со скриптом прописывается то по пути можно его найти, а если он внедряет скрипт сразу в страницу, например:
<script type="text/javascript">

      window.addEvent('domready', function() {

         SqueezeBox.initialize({});

         $$('a.modal-button').each(function(el) {
            el.addEvent('click', function(e) {
               new Event(e).stop();
               SqueezeBox.fromElement(el);
            });
         });
      });
  </script>
то тут, файл откуда эти строки грузятся сразу не найдешь, поиск по файлам по слову SqueezeBox.fromElement(el); результатов не дал ...
кодинг на php.
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Что такое jdoc
« Ответ #21 : 06.12.2009, 21:55:14 »
Эта штука выводится этим
JHTML::_('behavior.modal','a.modal-button',$params);
 
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Что такое jdoc
« Ответ #22 : 06.12.2009, 22:29:47 »
Lex, спасибо тебе.
кодинг на php.
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #23 : 16.12.2009, 20:59:01 »
прикольно.
и куда-же, простите, его "вгонять"?
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Что такое jdoc
« Ответ #24 : 18.12.2009, 23:55:52 »
ну и в каком  мануале это написано?
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

KorKuno_v

  • Новичок
  • 3
  • 0 / 0
Re: Что такое jdoc
« Ответ #25 : 10.03.2010, 14:49:10 »
какойто хитрый PHP бех тегов
*

genius

  • Осваиваюсь на форуме
  • 34
  • 2 / 0
Re: Что такое jdoc
« Ответ #26 : 15.12.2010, 12:17:22 »
Здравствуйте!
Возник вопрос по выводу позиций. Думаю jdoc в этом играет какую то роль
Суть: раньше на Joomla 1.0 добавлял новую позицию в файл /components/com_jcomments/tpl/default/tpl_index.php, и новая позиция корректно работала в шаблоне, получалось, что между основным текстом и формой комментария добавлялась удлбная позиция.
В Joomla 1.5 также в файле  /components/com_jcomments/tpl/default/tpl_index.php добавляю строку <jdoc:include type="modules" name="user6" />, но позиция не появляется, при формировании страницы эта строка просто не обработывается и если посмотреть исходный код странице то там она остается в таком же виде <jdoc:include type="modules" name="user6" />, даная строчка просто не обрабатывается.
Помогите добавить позицию в данное место!

Re: Что такое jdoc
« Ответ #27 : 04.02.2011, 03:01:00 »
Здравствуйте!
Возник вопрос по выводу позиций. Думаю jdoc в этом играет какую то роль
Суть: раньше на Joomla 1.0 добавлял новую позицию в файл /components/com_jcomments/tpl/default/tpl_index.php, и новая позиция корректно работала в шаблоне, получалось, что между основным текстом и формой комментария добавлялась удлбная позиция.
В Joomla 1.5 также в файле  /components/com_jcomments/tpl/default/tpl_index.php добавляю строку <jdoc:include type="modules" name="user6" />, но позиция не появляется, при формировании страницы эта строка просто не обработывается и если посмотреть исходный код странице то там она остается в таком же виде <jdoc:include type="modules" name="user6" />, даная строчка просто не обрабатывается.
Помогите добавить позицию в данное место!

Вот нашёл такое решение, у меня работает

Код: php
<?php
$style = 'xhtml'; // set the style
$position = "user1"; // set the position of the modules to be loaded
$document   = &JFactory::getDocument();
$renderer   = $document->loadRenderer('module');
$params      = array('style'=>$style);

$contents = '';
foreach (JModuleHelper::getModules($position) as $mod)  {
    $contents .= $renderer->render($mod, $params);
}

echo $contents; // do something with the module output
?>
*

RTEagle

  • Захожу иногда
  • 140
  • 6 / 0
Re: Что такое jdoc
« Ответ #28 : 13.09.2011, 17:44:23 »
А можно как-нибудь шаблонизировать вывод строк от jdoc head?

Допустим если я хочу убрать не нужные строчки, title поднять повыше и т.д.
И хочу, чтобы при обновлении всё оставалось. То есть всю эту информацию занести в шаблон.
Но так чтобы не в ручную вместо jdoc head строчки писать, а именно этой конструкцией воспользоваться.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Что такое создать переопределение в менеджере шаблонов?

Автор masimka

Ответов: 2
Просмотров: 1925
Последний ответ 18.11.2015, 12:50:03
от masimka
Условие для <jdoc:include type="message" />

Автор ws_green

Ответов: 5
Просмотров: 7489
Последний ответ 09.01.2015, 22:07:31
от shurikkan
Что такое _JEXEC в defined( '_JEXEC' ) or die( 'Restricted access' )

Автор efimov777

Ответов: 7
Просмотров: 31763
Последний ответ 31.01.2013, 21:28:06
от VsVoland
Где находится <jdoc:include type="head" />

Автор mufosali

Ответов: 4
Просмотров: 60468
Последний ответ 06.11.2012, 15:09:25
от Мана
Шаблон s5_emma_smooth как устанавливать такое?

Автор renault

Ответов: 5
Просмотров: 1368
Последний ответ 23.04.2012, 19:41:54
от Equilibrium07