Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« : 05.10.2010, 08:05:05 » |
|
К сожалению на форуме не нашел ответа,подскажите как вывести название раздела в шаблоне.
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #1 : 05.10.2010, 08:31:38 » |
|
если это где-то в области статьи, то вот тут можно почитать http://joomlaforum.ru/index.php/topic,84140.new.html сама вставка будет такой: <?php echo $this->escape($this->article->section); ?>
|
|
|
|
« Последнее редактирование: 05.10.2010, 08:50:50 от effrit »
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #2 : 05.10.2010, 08:33:23 » |
|
Нужно вывести над меню,код вставил выдает это :Fatal error: Call to undefined method JDocumentHTML::escape()
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #3 : 05.10.2010, 08:45:10 » |
|
Не понял про какую тему идет речь?
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #4 : 05.10.2010, 08:52:15 » |
|
Понятно.Может кто еще знает?
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #5 : 05.10.2010, 09:51:48 » |
|
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #6 : 05.10.2010, 10:12:00 » |
|
ну, раз программеры все спят, то вот, для раздела попробуй это. function getSection($iId) { $database = &JFactory::getDBO(); if(JRequest::getVar( 'view', 'NONE') == "section"){ $row = JRequest::getVar( 'id', 'NONE'); }else if(Jrequest::getVar( 'view', 'NONE') == "category"){ //echo 'hit category'; $sql = "SELECT section FROM #__categories WHERE id = $iId "; $database->setQuery( $sql ); $row=$database->loadResult(); } else if(Jrequest::getVar( 'view', 'NONE') == "article"){ //echo 'hit article'; $sql = "SELECT sectionid FROM #__content WHERE id = $iId "; $database->setQuery( $sql ); $row=$database->loadResult(); } $row=(int)($row); //echo $row; $sql = "SELECT title FROM #__sections WHERE id = $row "; $database->setQuery( $sql ); $row=$database->loadResult(); return $row;
} $section=getSection(JRequest::getInt('id', 'NONE')); echo $section;
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #7 : 05.10.2010, 10:14:25 » |
|
это всё безобразие можешь обернуть в условие "если com_content"
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #8 : 05.10.2010, 10:16:00 » |
|
Вот отлично!Спасибо!Это кусок кода с какого то файла из Joomla?
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #9 : 05.10.2010, 10:17:51 » |
|
нет, это из похожей темы на форуме переделка  http://joomlaforum.ru/index.php/topic,95604.new.html
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #10 : 05.10.2010, 10:20:28 » |
|
Не знаешь код чтоб еще название категории выводило?
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #11 : 05.10.2010, 10:24:54 » |
|
ну сделай по аналогии, ничего там космически сложного нету )
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #12 : 05.10.2010, 10:27:31 » |
|
Да если б я знал как не спрашивал бы :-)
|
|
|
|
|
Записан
|
|
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #14 : 05.10.2010, 11:42:46 » |
|
Это я так понимаю правильный код который тоже выводит название раздела?
|
|
|
|
|
Записан
|
|
|
|
|
SmokerMan
|
 |
« Ответ #15 : 05.10.2010, 11:45:20 » |
|
Это я так понимаю правильный код который тоже выводит название раздела?
да, только на один запрос меньше будет.
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #16 : 05.10.2010, 11:46:47 » |
|
ОК,спасибо.
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #17 : 05.10.2010, 11:47:27 » |
|
А как название категории вывести?
|
|
|
|
|
Записан
|
|
|
|
|
SmokerMan
|
 |
« Ответ #18 : 05.10.2010, 12:03:17 » |
|
А как название категории вывести?
ну по аналогии, написали же <?php $option = JRequest::getWord('option'); if ($option == 'com_content') { $view = JRequest::getWord('view'); $id = JRequest::getInt('id'); $db = &JFactory::getDBO(); switch ($view) { default: case 'category': $query = 'SELECT title FROM #__categories WHERE id = ' . (int) $id; $db->setQuery($query); $result = $db->loadResult(); break; case 'article': $query = 'SELECT s.title FROM #__content AS a ' . ' LEFT JOIN #__categories AS s ON a.catid = s.id ' . ' WHERE a.id = ' . (int) $id; $db->setQuery($query); $result = $db->loadResult(); break; } } if (isset($result)) echo $result; ?>
|
|
|
|
|
Записан
|
|
|
|
Mixxxa
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 93
|
 |
« Ответ #19 : 05.10.2010, 12:07:57 » |
|
Спасибо,сейчас только увидел разницу в кодах.
|
|
|
|
|
Записан
|
|
|
|
|
SmokerMan
|
 |
« Ответ #20 : 05.10.2010, 12:38:18 » |
|
Итого проверка на раздел и категорию будет выглядеть примерно так: <?php $option = JRequest::getWord('option'); if ($option == 'com_content') { $view = JRequest::getWord('view'); $id = JRequest::getInt('id'); $db = &JFactory::getDBO(); switch ($view) { default: case 'section' : $query = 'SELECT title FROM #__sections WHERE id = ' . (int) $id; $db->setQuery($query); $result = $db->loadResult(); break; case 'category': $query = 'SELECT s.title AS section_title, a.title AS category_title FROM #__categories AS a ' . ' LEFT JOIN #__sections AS s ON a.section = s.id ' . ' WHERE a.id = ' . (int) $id; $db->setQuery($query); $result = $db->loadObject(); break; case 'article': $query = 'SELECT s.title AS section_title, c.title AS category_title FROM #__content AS a ' . ' LEFT JOIN #__sections AS s ON a.sectionid = s.id ' . ' LEFT JOIN #__categories AS c ON a.catid = c.id ' . ' WHERE a.id = ' . (int) $id; $db->setQuery($query); $result = $db->loadObject(); break; } } if (isset($result)) { if (is_object($result) && $result->section_title != '') { echo 'Раздел: ' . $result->section_title . ' Категория: ' . $result->category_title; } else if (!is_object($result)) { echo 'Раздел: ' . $result; } } ?>
|
|
|
|
|
Записан
|
|
|
|
|
vovchikku
|
 |
« Ответ #21 : 23.10.2010, 22:56:35 » |
|
Можно ли предложенный код применить к следующей проблеме: Нужно, чтобы при отображении материала из определенной категории выводился модуль только для этой категории?
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #22 : 24.10.2010, 07:57:50 » |
|
можно. но есть готовые решения. global news, к примеру
|
|
|
|
|
Записан
|
|
|
|
|
vovchikku
|
 |
« Ответ #23 : 24.10.2010, 10:17:56 » |
|
да, я мне вчера подсказали еще одно решение: advansed module manager - класс! то, что нужно!
|
|
|
|
|
Записан
|
|
|
|
effrit
Группа развития
   
Репутация: +521/-6
Offline
Пол: 
Сообщений: 5860
effrit.com
|
 |
« Ответ #24 : 24.10.2010, 10:20:25 » |
|
а. чёрт. я неправильно прочитал ) мой совет был касаемо вывода материалов из той же категории, что и текущий открытый материал )
|
|
|
|
|
Записан
|
|
|
|
|