Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Хлебные крошки (выделить активный пункт)


kate1987

Recommended Posts

Здравствуйте. Использую opencart 1.5.3 В ходе разработки сайта возник вопрос: как в breadcrumb изменить цвет активной ссылки (активной страницы)? Код

.breadcrumb a:active { color:red; }

не рулит. Может кто знает как?

post-17380-0-57822600-1357307236_thumb.png

Надіслати
Поділитися на інших сайтах


зайдите в product.tpl

найдите в самом начале файла этот кусок:

<div class="breadcrumb">
<?php foreach ($breadcrumbs as $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
<?php } ?>
 </div>

и замените на

<div class="breadcrumb">
	<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
	<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><font color="#FF0000"><?php echo $breadcrumb['text']; ?></font><?php } ?>
	<?php } ?>
 </div>

Этим вы сразу сделаете 2 полезные вещи:

1) активная ссылка выделяется другим цветом

2) уберете ссылку страницы на саму себя, что в свою очередь сократит шансы попасть под бан гугла

По аналогичной схеме нужно сделать в категориях и других страницах на которых у вас есть хлебные крошки

  • +1 8
Надіслати
Поділитися на інших сайтах


зайдите в product.tpl

найдите в самом начале файла этот кусок:

<div class="breadcrumb">
<?php foreach ($breadcrumbs as $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
<?php } ?>
 </div>

и замените на

<div class="breadcrumb">
	<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
	<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><font color="#FF0000"><?php echo $breadcrumb['text']; ?></font><?php } ?>
	<?php } ?>
 </div>

Этим вы сразу сделаете 2 полезные вещи:

1) активная ссылка выделяется другим цветом

2) уберете ссылку страницы на саму себя, что в свою очередь сократит шансы попасть под бан гугла

По аналогичной схеме нужно сделать в категориях и других страницах на которых у вас есть хлебные крошки

А имеет ли смысл обрезать крошки до категории, убрав при этом конечный пункт, а именно сам товар?

Я вырезал вот это:

else { ?><font color="#FF0000"><?php echo $breadcrumb['text']; ?></font><?php }

из вашего кода.

Надіслати
Поділитися на інших сайтах


смысл есть, так как если посмотреть на урл по которому ведет последний пунк хлебных крошек - то он ссылается на эту же страницу. Вопервых это не функционально (просто бесполезно, так как клиент уже находится на этой странице). Во вторых поисковые системы расценивают ссылку на эту же страницу - как лишний мусор и попытку обмануть поисковики. Поэтому я у себя сделал этот пункт не активным и выделил его другим цветом для удобства навигации пользователей

  • +1 2
Надіслати
Поділитися на інших сайтах


смысл есть, так как если посмотреть на урл по которому ведет последний пунк хлебных крошек - то он ссылается на эту же страницу. Вопервых это не функционально (просто бесполезно, так как клиент уже находится на этой странице). Во вторых поисковые системы расценивают ссылку на эту же страницу - как лишний мусор и попытку обмануть поисковики. Поэтому я у себя сделал этот пункт не активным и выделил его другим цветом для удобства навигации пользователей

Спасибо! Взял себе на использование, также заменил хлебные крошки и в категориях.

Надіслати
Поділитися на інших сайтах

Спасибо! Взял себе на использование, также заменил хлебные крошки и в категориях.

Не поделитесь кодом для категорий? Буду очень благодарен.

Надіслати
Поділитися на інших сайтах


все аналогично


<div class="breadcrumb">
<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
<?php } ?>
</div>

  • +1 3
Надіслати
Поділитися на інших сайтах


все аналогично


<div class="breadcrumb">
<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
<?php } ?>
</div>

Да, да. Я так и сделал. :-)

  • +1 1
Надіслати
Поділитися на інших сайтах

  • 4 weeks later...
  • 1 month later...

зайдите в product.tpl

найдите в самом начале файла этот кусок:

<div class="breadcrumb">
<?php foreach ($breadcrumbs as $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
<?php } ?>
 </div>

и замените на

<div class="breadcrumb">
	<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
	<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><font color="#FF0000"><?php echo $breadcrumb['text']; ?></font><?php } ?>
	<?php } ?>
 </div>

Этим вы сразу сделаете 2 полезные вещи:

1) активная ссылка выделяется другим цветом

2) уберете ссылку страницы на саму себя, что в свою очередь сократит шансы попасть под бан гугла

По аналогичной схеме нужно сделать в категориях и других страницах на которых у вас есть хлебные крошки

Здравствуйте!

Не получается применить Ваш метод.

Выдает ошибку 500

Opencart 1.5.3.1 + shoppica2

Надіслати
Поділитися на інших сайтах


  • 4 weeks later...

Не получается применить Ваш метод.

Выдает ошибку 500

Opencart 1.5.3.1 + shoppica2

1.5.3.1 (правда не под шопикой) работает отлично, проверьте то ли и там ли меняете

Надіслати
Поділитися на інших сайтах


  <ul class="breadcrumb">
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li>
    <?php } ?>
  </ul>
 

а если у меня такой код в product.tpl

Надіслати
Поділитися на інших сайтах


  • 3 weeks later...

все аналогично


<div class="breadcrumb">
<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
<?php } ?>
</div>

 

Спасибо большое, все работает ! :-)

Надіслати
Поділитися на інших сайтах


  • 1 month later...

столкнулся с проблемой, в общем в хлебных крошках когда я в категориях выводится правильный путь (Главная/Категория/Под категория), но когда я захожу в товар "Под категория" исчезает, остается путь вида: (Главная/Категория/Товар), в product.tpl заменил код на код Энштейна при этом в одной из под категорий все заработало как надо, но в других попрежнему таже история, не пойму в чем дело, может кто сталкивался с этим и исправлял? При чем при выключеном ЧПУ, хлебные крошки отображают все как надо. Спасибо.

Надіслати
Поділитися на інших сайтах


столкнулся с проблемой, в общем в хлебных крошках когда я в категориях выводится правильный путь (Главная/Категория/Под категория), но когда я захожу в товар "Под категория" исчезает, остается путь вида: (Главная/Категория/Товар), в product.tpl заменил код на код Энштейна при этом в одной из под категорий все заработало как надо, но в других попрежнему таже история, не пойму в чем дело, может кто сталкивался с этим и исправлял? При чем при выключеном ЧПУ, хлебные крошки отображают все как надо. Спасибо.

Посмотрите в Админке: Товары-(изменить)-Связи. Пункт Категория: У Вас может выбран путь без ПодКатегорий.

Надіслати
Поділитися на інших сайтах


столкнулся с проблемой, в общем в хлебных крошках когда я в категориях выводится правильный путь (Главная/Категория/Под категория), но когда я захожу в товар "Под категория" исчезает, остается путь вида: (Главная/Категория/Товар), в product.tpl заменил код на код Энштейна при этом в одной из под категорий все заработало как надо, но в других попрежнему таже история, не пойму в чем дело, может кто сталкивался с этим и исправлял? При чем при выключеном ЧПУ, хлебные крошки отображают все как надо. Спасибо.

Посмотрите в Админке: Товары-(изменить)-Связи. Пункт Категория: У Вас может выбран путь без ПодКатегорий.

нет, все выставлено как надо, пока проблему не решил...

Надіслати
Поділитися на інших сайтах


  • 1 month later...

все аналогично


<div class="breadcrumb">
<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
<?php } ?>
</div>

а как сделать  размер по  меньше?

Надіслати
Поділитися на інших сайтах


Простите, что влезаю, но есть вопрос не совсем по теме, но по обсуждаемому вопросу.

Тут озвучена проблема, что ссылка страницы на саму себя может привести к бану. Но ведь этот функционал заложен по умолчанию. Неужели разработчики этого не знают? И второе, при применении микроразметки на эту ссылку ставится свой тег, указывающий что эта ссылка именно на эту страницу. Гугл ее в валидаторе корректно отображает. Так за что бан?

Надіслати
Поділитися на інших сайтах


  • 4 months later...

а как убрать автоматически проставляющуюся типографскую кавычку » (»)  из хлебных крошек? 

 только на минусы щедрые, господа зажравшиеся программисты  :lol:

Надіслати
Поділитися на інших сайтах


У меня сработал такой код:

 

<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
        <?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
        <?php } ?>
 
Шаблон не стандартный....
Надіслати
Поділитися на інших сайтах


<div class="breadcrumb">
<?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
<?php } ?>
</div>

Все классно... Не оптимально.. Правда на это можно плюнуть, всего до 6 итераций ... ну разве у кого больше? только вот не совсем читабельно и логично

<div class="breadcrumb">
<?php $count=count($breadcrumbs)-1; foreach ($breadcrumbs as $i=> $breadcrumb) { ?>
<?php echo $breadcrumb['separator']; ?><?php if($i<$count) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php echo $breadcrumb['text']; ?><?php } ?>
<?php } ?>
</div>
Надіслати
Поділитися на інших сайтах

  • 1 month later...

смысл есть, так как если посмотреть на урл по которому ведет последний пунк хлебных крошек - то он ссылается на эту же страницу. Вопервых это не функционально (просто бесполезно, так как клиент уже находится на этой странице). Во вторых поисковые системы расценивают ссылку на эту же страницу - как лишний мусор и попытку обмануть поисковики. Поэтому я у себя сделал этот пункт не активным и выделил его другим цветом для удобства навигации пользователей

Скажите пожалуйста, как сделать тоже самое, только в 1.5.5.1 код немного другой, а в пхп я не сильно понимаю, боюсь накосячить.

 

  <div class="breadcrumb">

        <?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?>

        <?php echo $breadcrumb['separator']; ?><?php if($i+1<count($breadcrumbs)) { ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a> <?php } else { ?><?php } ?>

        <?php } ?>

  </div>

 

 

Ещё видел на сайте каком то перед хлебными крошками стоит фраза "Вы находитесь" , как можно такое добавить?

 

Заранее благодарю за помощь!

Надіслати
Поділитися на інших сайтах


Немного эстетичности

<div class="breadcrumb">
  <?php foreach ($breadcrumbs as $breadcrumb): ?>
  <?php echo $breadcrumb['separator']; ?>
  <?php if ($breadcrumb == end($breadcrumbs)): ?>
  <?php echo $breadcrumb['text']; ?>
  <?php else: ?>
  <a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
  <?php endif; ?>
  <?php endforeach; ?>
</div>

Последний элемент выводится обычным текстом.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.