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

[Решено] Помогите доделать горизонтальное меню


Smallbear

Recommended Posts

Вообщем нужно добавить в горизонтальное меню разделы "доставка","оплата","контакты". Использую ocstore_v0.1.7

Вроде бы все не сложно должно быть , но уже 2 день пошел как данную проблему решить не получается,а именно созданный пункт меню когда он выбран не выделяется как активный,т.е. как я понимаю к ниму не применяются стили.

Делал по инструкции которая тут

Сначало делал не с дефолтным шаблоном,думал может с ним что-то не так,но сейчас и на дефолтном у меня не получается сделать чтобы выбранный пункт меню (только что созданный,например "оплата") выделялся когда он выбран так же как и остальные,т.е. подсвечивался синим фоном.

Возможно инструкция написана не под версию которую я использую,что в таком случае еще необходимо исправить?

Вот скриншот того что сейчас.Выбран пункт оплта и открыт,а синим почему-то подсвечивается раздел "Главная"

Изображение

Делаю,так:

в файле /catalog/view/theme/default/template/common/header.tpl добавляю строчку

<a href="<?php echo str_replace('&', '&', $oplata); ?>" id="tab_oplata"><?php echo $text_oplata; ?></a>

получается примерно такой код:

......
<div class="div4"><a href="<?php echo str_replace('&', '&', $home); ?>" id="tab_home"><?php echo $text_home; ?></a>
     <?php if (!$logged) { ?>
     <a href="<?php echo str_replace('&', '&', $login); ?>" id="tab_login"><?php echo $text_login; ?></a>
     <?php } else { ?>
     <a href="<?php echo str_replace('&', '&', $logout); ?>" id="tab_logout"><?php echo $text_logout; ?></a>
     <?php } ?>
     <a href="<?php echo str_replace('&', '&', $account); ?>" id="tab_account"><?php echo $text_account; ?></a>
     <a href="<?php echo str_replace('&', '&', $cart); ?>" id="tab_cart"><?php echo $text_cart; ?></a>
     <a href="<?php echo str_replace('&', '&', $oplata); ?>" id="tab_oplata"><?php echo $text_oplata; ?></a>

</div>
......

в этом же файле в самом скрипте добавляю строчку

else if (part[0] == 'information_id=6') {

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

Пробовал менять part[0] на route не дало результатов

в итоге получаю такой код:

.....
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 if (part[0] == 'information_id=6') {
		$('#tab_oplata').addClass('selected');
	} else {
		$('#tab_home').addClass('selected');

.......

Я думаю проблема именно в этом скрипте,а точнее в этой части tab_oplata

А что вообще означает part[0] и route

в файле /catalog/controller/common/header.php добавляю строку

$this->data['text_oplata'] = $this->language->get('text_oplata');

и

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

получаю такой код:

.........
$this->data['text_category'] = $this->language->get('text_category');
	$this->data['text_advanced'] = $this->language->get('text_advanced');
	$this->data['text_oplata'] = $this->language->get('text_oplata');

	$this->data['entry_search'] = $this->language->get('entry_search');

	$this->data['button_go'] = $this->language->get('button_go');

	$this->data['home'] = HTTP_SERVER . 'index.php?route=common/home';
	$this->data['special'] = HTTP_SERVER . 'index.php?route=product/special';
	$this->data['contact'] = HTTP_SERVER . 'index.php?route=information/contact';
   	$this->data['sitemap'] = HTTP_SERVER . 'index.php?route=information/sitemap';
   	$this->data['account'] = HTTPS_SERVER . 'index.php?route=account/account';
	$this->data['logged'] = $this->customer->isLogged();
	$this->data['login'] = HTTPS_SERVER . 'index.php?route=account/login';
	$this->data['logout'] = HTTP_SERVER . 'index.php?route=account/logout';
   	$this->data['cart'] = HTTP_SERVER . 'index.php?route=checkout/cart';
	$this->data['checkout'] = HTTPS_SERVER . 'index.php?route=checkout/shipping';
	$this->data['oplata'] = HTTP_SERVER . 'index.php?route=information/information&information_id=6';

........

ну и в папку /catalog/language/russian/common/header.tpl добавляю строку $_['text_oplata'] = 'Оплата';

получается такой код :

....
$_['text_account']  = 'Кабинет';
$_['text_login']    = 'Войти';
$_['text_logout']   = 'Выйти';
$_['text_cart']     = 'Корзина';
$_['text_checkout'] = 'Оформить';
$_['text_oplata'] = 'Оплата';


$_['text_keyword']  = 'Поиск...';
$_['text_advanced'] = 'Расширенный поиск';
$_['text_category'] = 'Все категории
.....

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


Наверно много написал раз помочь так никто и не захотел.Хотя странно что еще никто с такой проблемой не столкнулся.

Вообщем проблема была в джава скрипте,нужно было вместо

else if (part[0] == 'information_id=6') {
$('#tab_oplata').addClass('selected');

написать

else if (part[0] == 'information/information') {
$('#tab_oplata').addClass('selected');
в итоге получаем примерно такой код:

if (!route) {
         $('#tab_home').addClass('nav_a_selected');
	} else {
		part = route.split('/');

		if (route == 'common/home') {
			$('#tab_home').addClass('nav_a_selected');
		} else if (route == 'account/login') {
			$('#tab_login').addClass('nav_a_selected');
		} else if (part[0] == 'account') {
			$('#tab_account').addClass('nav_a_selected');
		} else if (route == 'checkout/cart') {
			$('#tab_cart').addClass('nav_a_selected');
		} else if (part[0] == 'checkout') {
			$('#tab_checkout').addClass('nav_a_selected');
		} else if (route == 'information/information') {
        $('#tab_oplata').addClass('nav_a_selected');
  • +1 1
Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

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

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

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

Important Information

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