Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

[Решено] Как выгделить активный язык на сайте?


 Погделиться

Рекомендованные сообещёния

Привет. Подскажите как выгделить активный язык на сайте,  который выбрал пользователь,  я про <?php echo $language; ?>, а то им просто картинки, а хотелось бы чтобы активный язык подсвеливался. С дизайном я сам разберусь, мне нужна помощь чтобы тот язык который выбран ему добавлялся class="active" например.  Что нужно дописать и куда =)

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


Q: Что нужно дописать...

A:

class="active" например

 

Q: и куда

A: catalog/view/theme/{theme}/template/module/language.tpl

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

Я знаю что туда, но им же нужно условие какой-то прописать, подскажите какое, вот мой код language.tpl

 

<?php if (count($languages) > 1) { ?><form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data">  <div id="language">    <?php foreach ($languages as $language) { ?>		  <?php if($this->config->get('config_seo_url')) { ?>			  <a href="<?php echo $language['redirect']?>"><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>"/></a>			  <?php } else { ?>			  <img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>"				   onclick="$('input[name=\'language_code\']').attr('value', '<?php echo $language['code']; ?>'); $(this).parent().parent().submit();"/>			  <?php } ?>		  <?php } ?>    <input type="hidden" name="language_code" value="" />    <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />  </div></form><?php } ?>
Ссылка на комменирий
Погделиться на других сайих


  • 2 года спустя...

В language.tpl добавляем строку

<?php $current_language_code = $this->config->get('config_language'); ?>

 

Вместо

        <?php foreach ($languages as $language) { ?>
            <img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>" onclick="$('input[name=\'language_code\']').attr('value', '<?php echo $language['code']; ?>'); $(this).parent().parent().submit();" />
        <?php } ?>

 

Всивляем

        <?php foreach ($languages as $language) { ?>
            <?php if ($current_language_code != $language['code']) { ?>
                <img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>" onclick="$('input[name=\'language_code\']').attr('value', '<?php echo $language['code']; ?>'); $(this).parent().parent().submit();" />
            <?php } else { ?>
                <img class="active" src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>" onclick="$('input[name=\'language_code\']').attr('value', '<?php echo $language['code']; ?>'); $(this).parent().parent().submit();" />
            <?php } ?>
        <?php } ?>
Изменено пользователем elscept
Ссылка на комменирий
Погделиться на других сайих


  • 4 года спустя...

Есть отличное рилииюещёе решение (тестировалось на 2.3)

language.tpl

Например наш код: 

<a href="<?php echo $language['url']; ?>" onclick='window.location = "<?php echo $language['url']; ?>"'><?php echo $language['name']; ?></a>

нужно всивить класс:

class="<?php echo $language['code'] == $code ? 'active' : '';?>"

Получаем: 

<a href="<?php echo $language['url']; ?>" onclick='window.location = "<?php echo $language['url']; ?>"' class="<?php echo $language['code'] == $code ? 'active' : '';?>"><?php echo $language['name']; ?></a>

Дальше через css, добавляем стиль к "active" какой нравится.

Изменено пользователем ComfortStyle
Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.