Moushe.ru

Блог обо всём

OpenCart добавляем ссылки в меню навигации



До:                                                       После:

DoPosle

1. Сначала создадим в админке 2 новых страницы, например — Оплата и Доставка.

2. Откроем header.tpl и найдём этот код:

<div class="div4">

<a href="<?php echo str_replace('&', '&amp;', $home); ?>" id="tab_home"><?php echo $text_home; ?></a>

<?php if (!$logged) { ?>

<a href="<?php echo str_replace('&', '&amp;', $login); ?>" id="tab_login"><?php echo $text_login; ?></a>

<?php } else { ?>

<a href="<?php echo str_replace('&', '&amp;', $logout); ?>" id="tab_logout"><?php echo $text_logout; ?></a>

<?php } ?>

<a href="<?php echo str_replace('&', '&amp;', $account); ?>" id="tab_account"><?php echo $text_account; ?></a>

<a href="<?php echo str_replace('&', '&∓amp;', $cart); ?>" id="tab_cart"><?php echo $text_cart; ?></a>

<a href="<?php echo str_replace('&', '&amp;', $checkout); ?>" id="tab_checkout"><?php echo $text_checkout; ?></a>

</div>

Удалим ссылки Кабинет и Оформить:

<div class="div4">

<a href="<?php echo str_replace('&', '&amp;', $home); ?>" id="tab_home"><?php echo $text_home; ?></a>

<?php if (!$logged) { ?>

<a href="<?php echo str_replace('&', '&amp;', $login); ?>" id="tab_login"><?php echo $text_login; ?></a>

<?php } else { ?>

<a href="<?php echo str_replace('&', '&amp;', $logout); ?>" id="tab_logout"><?php echo $text_logout; ?></a>

<?php } ?>

<a href="<?php echo str_replace('&', '&amp;', $cart); ?>" id="tab_cart"><?php echo $text_cart; ?></a>

</div>

И добавим после корзины 2 новых ссылки:

<div class="div4">

<a href="<?php echo str_replace('&', '&amp;', $home); ?>" id="tab_home"><?php echo $text_home; ?></a>

<?php if (!$logged) { ?>

<a href="<?php echo str_replace('&', '&amp;', $login); ?>" id="tab_login"><?php echo $text_login; ?></a>

<?php } else { ?>

<a href="<?php echo str_replace('&', '&amp;', $logout); ?>" id="tab_logout"><?php echo $text_logout; ?></a>

<?php } ?>

<a href="<?php echo str_replace('&', '&amp;', $cart); ?>" id="tab_cart"><?php echo $text_cart; ?></a>

<a href="<?php echo str_replace('&', '&amp;', $oplata); ?>" id="tab_oplata">Оплата</a>

<a href="<?php echo str_replace('&', '&amp;', $dostavka); ?>" id="tab_dostavka">Доставка</a>

</div>

Прокручиваем страницу вниз и изменяем это:

if (urlHalves[1]) {

var urlVars = urlHalves[1].split('&');

for (var i = 0; i <= (urlVars.length); i++) {

if (urlVars[i]) {

var urlVarPair = urlVars[i].split('=');

if (urlVarPair[0] && urlVarPair[0] == urlVarName.toLowerCase()) {

urlVarValue = urlVarPair[1];

}

}

}

}

на это:

if (urlHalves[1]) {

var urlVars = urlHalves[1].split('&');

if (urlVars[1]) {

urlVarValue = urlVars[1];

} else

{

var urlVarrs = urlVars[0].split('=');

urlVarValue = urlVarrs[1];

}

}

ещё ниже добавляем наши пункты, из этого:

if (route == 'common/home') {

$('#tab_home').addClass('selected');

} else if (route == 'account/login') {

$('#tab_login').addClass('selected');

} else if (part[0] == 'account') {

$('#tab_account').addClass('selected');

} else if (route == 'checkout/cart') {

$('#tab_cart').addClass('selected');

} else if (part[0] == 'checkout') {

$('#tab_checkout').addClass('selected');

} else {

$('#tab_home').addClass('selected');

}

делаем это:

if (route == 'common/home') {

$('#tab_home').addClass('selected');

} else if (route == 'account/login') {

$('#tab_login').addClass('selected');

} else if (part[0] == 'account') {

$('#tab_account').addClass('selected');

} else if (route == 'checkout/cart') {

$('#tab_cart').addClass('selected');

} else if (route == '*') {

$('#tab_oplata').addClass('selected');

} else if (route == '*') {

$('#tab_dostavka').addClass('selected');

} else if (part[0] == 'checkout') {

$('#tab_checkout').addClass('selected');

} else {

$('#tab_home').addClass('selected');

}

вместо звёздочек вставим id страниц, откроем витрину сайта в блоке информации нажимаем на страницу Оплата и в адресной строке копируем адрес ссылки:

http://localhost/default/index.php?route=information/information&information_id=8

нам нужна только последняя часть после знака &:

information_id=8

так-же поступаем и со страницей Доставка:

information_id=6

вставляем их в наш код:

if (route == 'common/home') {

$('#tab_home').addClass('selected');

} else if (route == 'account/login') {

$('#tab_login').addClass('selected');

} else if (part[0] == 'account') {

$('#tab_account').addClass('selected');

} else if (route == 'checkout/cart') {

$('#tab_cart').addClass('selected');

} else if (route == 'information_id=8') {

$('#tab_oplata').addClass('selected');

} else if (route == 'information_id=6') {

$('#tab_dostavka').addClass('selected');

} else if (part[0] == 'checkout') {

$('#tab_checkout').addClass('selected');

} else {

$('#tab_home').addClass('selected');

}

3. Теперь откроем файл header.php (..\catalog\controller\common) и после этой строки:

$this->data['checkout'] = HTTPS_SERVER . 'index.php?route=checkout/shipping';

вставим эти:

$this->data['oplata'] = HTTPS_SERVER . '*';

$this->data['dostavka'] = HTTPS_SERVER . '*';

вместо * вставим ваши ссылки страниц – открываем витрину вашего магазина и в модуле Информация выбираете страницу Оплата и в адресной строке браузера копируете ссылку:

http://localhost/default/index.php?route=information/information&information_id=8

обрезаем её:

index.php?route=information/information&information_id=8

Так-же поступим и со страницей Доставка:

index.php?route=information/information&information_id=6

и вставим их вместо звёздочек:

$this->data['oplata'] = HTTPS_SERVER . 'index.php?route=information/information&information_id=8';

$this->data['dostavka'] = HTTPS_SERVER . 'index.php?route=information/information&information_id=6';

Вот вы всё и сделали. Урок написан по этой теме — http://opencartforum.ru/topic/699-главное-меню-добавление-пунктов/∓

10 Комментариев

  1. Здорово! Спасибо огромное!

    P.S. Владислав нарисуйте какую нибудь симпатичную иконку — ссылку на Ваш блог!

    • Владислав Храмцов
      vkontakte.ru Владислав Храмцов

      19.11.2011 at 14:13

      Иконка будет выделяться на фоне сайта, проще делать простую ссылку:
      Moushe.ru
      а так, вот вам иконка 🙂

    • Ну, иконка на любителя 🙂

  2. Владислав Храмцов
    vkontakte.ru Владислав Храмцов

    19.11.2011 at 19:45

    Старался 🙂 У меня просто favicon такая (иконка сайта в браузере и поисковиках), так сказать узнаваемая 😉 вот я на её основе кнопочку и сделал.
    Кстати боковые колонки у вашего магазина не доделаны ещё 😉 и что-то много ошибок в приветственном сообщении 😉

  3. Закончу свой магазин обязательно прикручу! =)

  4. Владислав, спасибо за материал, очень интересно. 🙂
    А може Вы ещё расскажите (для чайников), как можно добавлять статьи в подвал сайта (т.е. в footer), если конечно такое возможно?

    • Владислав Храмцов
      vkontakte.ru Владислав Храмцов

      23.11.2011 at 21:12

      Меня уже просили написать уроки по добавлению в футер полезной информации, думаю в пятницу или субботу напишу урок по этой теме. Следите за новостями. 🙂

  5. Виктория

    28.05.2013 at 14:07

    Владислав, здравствуйте.
    Подскажите пожалуйста, как реализовать данный урок в ocStore 1.5.3. Отличается содержание файлов header.tpl и header.php.

  6. Виктория

    28.05.2013 at 14:08

    Владислав, здравствуйте.
    Подскажите пожалуйста, как реализовать данный урок в ocStore 1.5.3. Отличается содержание файлов header.tpl и header.php.

Добавить комментарий

Your email address will not be published.

*

CAPTCHA image
*

© 2016 Moushe.ru При копировании материалов, ссылка на нас обязательна!

Вверх ↑



Яндекс.Метрика