LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
25.05.2012, 11:50:33 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Изменить "хлебные крошки"?  (Прочитано 932 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
dee_lv
Новичок
*

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

Сообщений: 3


« : 09.03.2010, 19:46:21 »

Добрый вечер!

Такая проблема: использую стандартный mod_breadcrumbs.
Если зайти в какой-либо раздел, то "крошки" отображают путь так:
Цитировать
Главная / Раздел
Если открыть какую-либо статью из этого раздела, то, соответственно, так:
Цитировать
Главная / Раздел / Статья данного раздела
Я не силен в PHP. Подскажите пожалуйста, как сделать так, чтобы на странице статьи, в "крошках" не отображалось бы имя этой статьи? Т.е. чтобы было просто вот так:
Цитировать
Главная / Раздел
В опциях модуля просто взять и скрыть последний элемент не получается, разделы в таком случае тоже скрываются.
Записан
dee_lv
Новичок
*

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

Сообщений: 3


« Ответ #1 : 11.03.2010, 01:51:13 »

Никто не сталкивался с подобным? Sad
Подумал, в мозгах появилось мутное решение: а можно сделать в шаблоне проверку на категорию по id, и исходя из проверки отображать хлебные крошки или нет?
Записан
era
Dev Team
******

Репутация: +333/-4
Offline Offline

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


В туалете лучше быть пользователем, чем админом.


« Ответ #2 : 11.03.2010, 02:27:54 »

на вскидку:
попробуем уменьшить кол-во выводимых элементов в крошках примерно так:
1. выносим шаблон вывода крошек в шаблон
2. пробуем добавить проверку в этот шаблон (<ваш шаблон>/html/mod_breadcrumbs/default.php):

было:
Код:
<?php // no direct access
defined('_JEXEC') or die('Restricted access'); ?>
<span class="breadcrumbs pathway">
<?php for ($i = 0; $i < $count; $i ++) :

// If not the last item in the breadcrumbs add the separator
if ($i < $count -1) {
if(!empty($list[$i]->link)) {
........................

стало:
Код:
<?php // no direct access
defined('_JEXEC') or die('Restricted access');

$option = JRequest::getCmd('option');
$task = JRequest::getCmd('task');
if ($option == 'com_content' and $task == 'view') {
$count = $count-1;
}
?>
<span class="breadcrumbs pathway">
<?php for ($i = 0; $i < $count; $i ++) :

// If not the last item in the breadcrumbs add the separator
if ($i < $count -1) {
if(!empty($list[$i]->link)) {
.........................
такс, и чего мы тут наделали? сделали проверку - если просматривается статья в данный момент, то мы говорим что в хлебных крошках меньше на один элемент
Записан
dee_lv
Новичок
*

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

Сообщений: 3


« Ответ #3 : 11.03.2010, 03:17:35 »

era, огромное Вам спасибо!
Сначало не завелось, в чём проблема я разобрался самостоятельно:

Цитировать
$task = JRequest::getCmd('view');
if ($option == 'com_content' and $task == 'article') {
   $count = $count-1;
}
Записан
era
Dev Team
******

Репутация: +333/-4
Offline Offline

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


В туалете лучше быть пользователем, чем админом.


« Ответ #4 : 11.03.2010, 03:27:06 »

аа, ну может быть - так, сочинил по быстрому
Записан
noVel
Захожу иногда
**

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

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



« Ответ #5 : 27.01.2012, 03:01:54 »

Здравствуйте.
У меня такая же задача. Помогите пожалуйста.
Но у меня в шаблоне уже есть такое:

Цитировать
<?php // no direct access
defined('_JEXEC') or die('Restricted access'); ?>
<ol>
<li class="breacrumbs_home"><a href="/">Home</a></li>
<?php for ($i = 0; $i < $count; $i ++) :?>

   
   
   <?php
   // If not the last item in the breadcrumbs add the separator
   if ($i < $count -1) {
      if(!empty($list[$i]->link)) {
         echo '<li><a href="'.$list[$i]->link.'">'.$list[$i]->name.'</a></li>';
      } else {
         echo '<li>'.$list[$i]->name.'</li>';
      }
      echo '';
   }  else { // when $i == $count -1
       echo '<li class="last"><span>'.$list[$i]->name.'</span></li>';
   }
endfor; ?>
</ol>
Записан
noVel
Захожу иногда
**

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

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



« Ответ #6 : 01.02.2012, 21:03:03 »

Какой-то прокажённый я на этом форуме, сколько вопросов не задаю, не на один не получил ответа. Чего за форум такой ... выборочно что-ли помогают другим :-(
Записан
era
Dev Team
******

Репутация: +333/-4
Offline Offline

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


В туалете лучше быть пользователем, чем админом.


« Ответ #7 : 01.02.2012, 21:14:09 »

Какой-то прокажённый я на этом форуме, сколько вопросов не задаю, не на один не получил ответа. Чего за форум такой ... выборочно что-ли помогают другим :-(
Задачу поясни поподробней, что нужно что-бы получилось у тебя
Записан
flyingspook
Живу я здесь
******

Репутация: +91/-12
Offline Offline

Сообщений: 1288


« Ответ #8 : 01.02.2012, 21:17:06 »

попробуй так )
<?php
   // If not the last item in the breadcrumbs add the separator
   if ($i < $count -1) {
      if(!empty($list[$i]->link)) {
         echo '<li><a href="'.$list[$i]->link.'">'.$list[$i]->name.'</a></li>';
      } else {
 //        echo '<li>'.$list[$i]->name.'</li>';
      }
      echo '';
   }  else { // when $i == $count -1
 //      echo '<li class="last"><span>'.$list[$i]->name.'</span></li>';
   }
endfor; ?>
</ol>
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | 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