Страницы в хлебных крошках

Тема в разделе "OpenCart", создана пользователем Alexxcha, 13 апр 2013.

  1. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
    Вопрос такой, в хлебных крошках у нас выводится путь до определенного пункта меню или категории или продукта, а как сделать так что бы выводился путь до конкретной страницы?
    Поясню на примере:
    Сейчас имеется - модуль который выводит все отзывы о товарах магазина на страницу - страница называется - Отзывы о наших товарах. Отзывов больше 50-ти, следовательно формируется условно 5 страниц с одинаковым названием - Отзывы о наших товарах. И путь в хлебных крошках выглядит так - Главная > Отзывы о наших товарах.
    А как сделать такие хлебные крошки: Главная > Отзывы о наших товарах > Страница отзывов 1, и т.д.
    С title и description для страниц разобрать не сложно, решение есть здесь на форуме.
    Интересуют именно крошки.
     
  2. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
    Я вот как то не пойму - или все понимают что я хочу сделать и это так просто что ни у кого нет желания разъяснять, или все на столько муторно что опять же ни у кого нет желания хоть что нить отписать?
    Вопрос то актуален - так как - каждая страница сайта важна - а опенкартовскими крошками страницы одинаковы...
    Народ, подмогните... Или хотя бы скажите - мол, товарисчъ это сделать невозможно ибо "ну иво нафих" :Smile:
     
  3. alex_vin

    alex_vin

    Регистрация:
    28 дек 2012
    Сообщения:
    119
    Симпатии:
    30
    Нужно знать что за модуль выводит отзывы.
     
  4. kama812

    kama812

    Регистрация:
    30 мар 2013
    Сообщения:
    311
    Симпатии:
    195
    это да) наверно проще будет прикрутить пагинацию к этому модулю, хотя бы на js) хочешь - прикручу
    как вариант затычки - использовать if ('REQUEST_URI' = 'адрес страницы с отзывами' ) {
    свои хлебные крошки
    } else {
    стандартные
    }
     
  5. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
  6. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
    Как погляжу более сказать никто ничего не может?
     
  7. denya

    denya

    Регистрация:
    2 мар 2013
    Сообщения:
    130
    Симпатии:
    35
    Вам необходимо из контроллера пробросить номер текущей страницы отзывов:
    для этого перед кодом
    PHP:
            if (file_exists(DIR_TEMPLATE $this->config->get('config_template') . '/template/product/reviews.tpl')) {
                
    $this->template $this->config->get('config_template') . '/template/product/reviews.tpl';
            } else {
                
    $this->template 'default/template/product/reviews.tpl';
            }
    Нужно поместить
    PHP:
    $this->data['page'] = $page;
    И тогда в темплейте вы можете использовать номер странице где потребуется, например в хлебных крошках:
    PHP:
                <?php foreach ($breadcrumbs as $breadcrumb) { ?>
                    <?php if($breadcrumb['separator']){ ?>
                        <span><?php echo $breadcrumb['separator']; ?></span>
                    <?php ?>
            <span typeof="v:Breadcrumb">
            <a href="<?php echo $breadcrumb['href']; ?>" rel="v:url" property="v:title"><?php echo $breadcrumb['text'] . ' [' $page ']'?></a>
            </span>
            <?php ?>
    Этот кусок . ' [' . $page . ']' добавит номер страницы в квадратных скобках
     
    Alexxcha нравится это.
  8. kama812

    kama812

    Регистрация:
    30 мар 2013
    Сообщения:
    311
    Симпатии:
    195
    откуда ж они стандартные отзывы о товаре? всё что есть стандартого, всё тут http://demo.opencart.com/
    по коду там есть пагинация. задается она скорее всего в модуле (хотя прописано что то странное config_catalog_limit , это скорее всего берется из настроек магазина) зачем тебе понадобилось каких то пять страниц?
    просто измени этот код в tpl на то что тебе нужно
    <div>
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <?php if($breadcrumb['separator']){ ?>
    <span><?php echo $breadcrumb['separator']; ?></span>
    <?php } ?>
    <span typeof="v:Breadcrumb">
    <a href="<?php echo $breadcrumb['href']; ?>" rel="v:url" property="v:title"><?php echo $breadcrumb['text']; ?></a>
    </span>
    <?php } ?>
    </div>
    </div>
     
  9. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
    Не, не получается...
    С указанными действиями получается вот что:
    Первая страница:
    ....
    Отзывы о наших товарах
    Главная [1] » Отзывы о наших товарах [1]

    Вторая страница:
    ...
    Отзывы о наших товарах
    Главная [2] » Отзывы о наших товарах [2]

    А вот хотелось бы так:
    Отзывы о наших товарах
    Главная » Отзывы о наших товарах » Страница отзывов 1
     
  10. denya

    denya

    Регистрация:
    2 мар 2013
    Сообщения:
    130
    Симпатии:
    35
    Ну вы же понимаете, что это константа? :smile:
    Куда должна указывать ссылка
    ?
    --- добавлено: Apr 15, 2013 4:14 PM ---
    Немного ошибся с примером кода, так у вас страница будет добавляться к каждой хлебной крошке. Попробуйте так:
    PHP:
          <?php foreach ($breadcrumbs as $i => $breadcrumb) { ?>
              <?php if($breadcrumb['separator']){ ?>
                  <span><?php echo $breadcrumb['separator']; ?></span>
            <?php ?>
              <span typeof="v:Breadcrumb">
            <?php if($i+count($breadcrumbs)): ?>
                <a href="<?php echo $breadcrumb['href']; ?>" rel="v:url" property="v:title"><?php echo $breadcrumb['text']; ?></a>
            <?php else: ?>
              <?php echo $breadcrumb['text'] . ' [' $page ']'?>
            <?php endif; ?>
              </span>
            <?php ?>
    Вот так лучше будет. Ведь на последнюю крошку вообще ссылка не нужна.
     
  11. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
    Если в демке вы не можете посмотреть ВСЕ отзывы о ваших товарах на отдельной странице - это ведь не значит что такого нет? :Smile:
     
  12. kama812

    kama812

    Регистрация:
    30 мар 2013
    Сообщения:
    311
    Симпатии:
    195
    чуть по другому идею, которую написал denya
    reviews.php
    http://yadi.sk/d/Y2bxxv1C44P40
    это для вида Главная > Отзывы о наших товарах > Страница отзывов 1
    Отзывы о наших товарах - ведет всегда на первую страницуСтраница отзывов 1 - ну тут понятно
     
    Alexxcha нравится это.
  13. Alexxcha

    Alexxcha

    Регистрация:
    21 ноя 2012
    Сообщения:
    130
    Симпатии:
    36
    Заработало!!!
    Тему мона закрыть :smile:
    Как раз то что хотел получить :smile:
    --- добавлено: Apr 15, 2013 5:40 PM ---
    Хехехехех.....
    Все хорошо но вот проблема...
    Почему то в сниппетах для googla - при проверке - нормально путь до страницы с отзывами отображается только на последнюю страницу...
    А на промежуточные нифига...
    Уже много что перепробовал - а результат один и тот же...
    Не берет он промежуточные:
    Поясняю:

    Отзывы о наших товарах | Страница 3 - предпоследняя страница
    *****.ru/review_product/?page=3

    Отзывы о наших товарах | Страница 4 - крайняя страница
    *****.ru ›Отзывы о наших товарах

    И ничерта не понятно почему так....

    Есть предложения? Мысли?
    З.Ы. Инструмент проверки Яндекса, показывает нормальную разметку.... на все страницы...