Smallbear

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

Рекомендуемые сообщения

Smallbear    79

Вообщем нужно добавить в горизонтальное меню разделы "доставка","оплата","контакты". Использую 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'] = 'Все категории
.....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Smallbear    79

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

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

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');

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу