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

[Решено] смена лого с языком


Recommended Posts

Всем привет.

Как думаете, реально ли как-то менять логотип вместе со сменой языка?

у меня в лого слоганы на разных языках.. Как сделать ума не приложу..

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


enlogo: image/data/en/my_super_logo.png

rulogo: image/data/ru/my_super_logo.png

catalog/controller/common/header.php

if (file_exists(DIR_IMAGE."data/".$this->session->data['language']."/my_super_logo.png")) {
$this->data['logo'] = $server."data/".$this->session->data['language']."/my_super_logo.png";
} else {
$this->data['logo'] = '';
}

Змінено користувачем afwollis
исправил код
  • +1 3
Надіслати
Поділитися на інших сайтах

Спасибо за ответ!

Подскажите пожалуйста что еще надо заменить в этом скрипте или в админке?

Пока не работает.

папки создал, файлы положил.

enlogo: image/data/en/my_super_logo.png

rulogo: image/data/ru/my_super_logo.png

В админке выбрал логотип:

image/data/my_super_logo.png

в header.php нашел

if ($this->config->get('config_logo') && file_exists(DIR_IMAGE . $this->config->get('config_logo'))) {
$this->data['logo'] = $server . $this->config->get('config_logo');
} else {
$this->data['logo'] = '';
}

заменил на ваш:


if ($this->config->get('config_logo') && file_exists(DIR_IMAGE . $this->config->get('config_logo'))) {
$this->data['logo'] = $server.$this->session->data['language']."/".$this->config->get('config_logo');
} else {
$this->data['logo'] = '';
}

на сайте не отображается никакой логотип в обоих языках. Что делаю не так?

Спасибо!

Змінено користувачем dm82
Надіслати
Поділитися на інших сайтах


стандартная комплектация ocstore_v1.5.4.1. чистая, никаких шаблонов не ставил, php не трогал.

языки рус и анг. по умолчанию стоит рус.

в файлах russian.php и english.php - стоят коды ru и en.

<?php
// Locale
$_['code']				  = 'ru';
$_['direction']			 = 'ltr';

если вы про это спросили..

перепробовал массу вариантов с именами, папками и тп. ничего не помогает.

На английских форумах ничего про это не нашел..

А у вас это работает?

А то я так понял, что это известный простой вопрос и есть решение.

Пожалуйста помогите разобраться.

Очень надо сделать смену лого.

И там же в шапке вставить поле с рус/анг текстом.

Змінено користувачем dm82
Надіслати
Поділитися на інших сайтах


хм... пересмотрел свой код... таки да, малость накосячил :lol:

отредактировал сообщение - исправьте у себя по аналогии.

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

Есть. работает.

Ура!!!

а то я сам ломал голову - где-то ж это my_super_logo.png должно быть прописано!

Спасибо!

Про текст еще не подскажете?

не хотелось бы тем плодить, вопрос похожий.

Еще раз - надо там же в шапке адрес прописать текстом, чтобы менялся рус/анг

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


какой адрес?

если у вас международная компания и вы хотите "адрес офиса / магазина" указать, то в этом случае адрес пишется на английском.

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

да нет, какая там международная. Компания - наша. Просто сайт нужно делать на двух языках. Этим тоже opencart нравиться - сразу есть такая возможность.

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

Поэтому, нужна общая схема - как это делать, можно без админ панели - через правку файлов.

Благодарю за помощь!

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


Разобрался сам. Прошу прощения, вопрос оказался простой.

Кому интересно:

добавляем текстовое поле info1:

\catalog\controller\common\header.php

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

\catalog\language\english\common\header.php

\catalog\language\russian\common\header.php

$_['text_info1'] = 'text 1';

$_['text_info1'] = 'текст 1';

\catalog\view\theme\default\template\common\header.tpl

<div class="info1"> <?php echo $text_info1; ?> </div>

\catalog\view\theme\default\stylesheet.css

#header .info1 { ... }

Вопросы по теме можно считать решенными.

Спасибо afwollis.

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


  • 2 months later...
  • 2 years later...

Доброго здравия всем.

 

А как провернуть такое же в весрии 2.0.3.1 ?

В  catalog\controller\common\header.php нашел только такой код:


        if (is_file(DIR_IMAGE . $this->config->get('config_logo'))) {
            $data['logo'] = $server . 'image/' . $this->config->get('config_logo');
        } else {
            $data['logo'] = '';
        }

Как тут подправить? Подскажите пожалуйста.

Змінено користувачем FusSheva
Надіслати
Поділитися на інших сайтах


  • 3 weeks later...

Мдя... помощи так и не дождался. :(

Пришлось мудрить и делать по топорному...

 

Смена логотипа при смене языка - для версии движка 2.0.3.1

 

В  catalog\controller\common\header.php

Вместо:

        if (is_file(DIR_IMAGE . $this->config->get('config_logo'))) {
            $data['logo'] = $server . 'image/' . $this->config->get('config_logo');
        } else {
            $data['logo'] = '';
        }

Прописал (для 3-х языков - русский, украинский, английский):

Меняем на это:

 if ($data['lang'] == 'ru') {
     $data['logo'] = $server . 'image/'.('ru/logo.png');
     }	
     elseif ($data['lang'] == 'uk') {
     $data['logo'] = $server . 'image/'.('uk/logo.png');
     }
       else {
     $data['logo'] = $server . 'image/'.('en/logo.png');
     }		

Ну и понятное дело, в папке image создаем 3 папки ru, uk и en куда ложим соответствующие языку изображения логотипов.

 

p.s. Уверен что есть решение проще, но увы, от форумчан помощи так и не дождался, а старая голова только на это сработала. :)

 

Всем удачи!

  • +1 2
Надіслати
Поділитися на інших сайтах


те. до "старая голова" не догадалась

$data['logo'] = $server . 'image/'.$data['lang']. '/logo.png';

 

или

 

$data['logo'] = $server . 'image/'.$data['lang']. '-logo.png';

Змінено користувачем chukcha
Надіслати
Поділитися на інших сайтах

 

Я обратился за помощью 10-го июля, а дополнение вышло 19 числа. Так что "контрольным выстрелом"  это сложновато назвать. :)

 

те. до "старая голова" не догадалась

$data['logo'] = $server . 'image/'.$data['lang']. '/logo.png';

 

Епт, как вариант! Ну дык, голова то старая, туго уже соображает. :)

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


p.s. И кстати, чтобы установить дополнение "Multilingual Logo" нужно до него установить еще и правильный vQmod который не конфликтует с установлненным по умолчанию в движке OCmod.

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


Спасибо, но уже как бы и не нужно (но таки скачал на всякий пожарный) :). Но может конечно кому ще и нужно будет.

 

p.s. Мне было достаточно и своего варианта, но подумал и установил еще и vQmod. И таки не зря, нашел еще несколько интересный на мой взгляд модификаций требующих как раз наличие именно vQmod.

Змінено користувачем FusSheva
Надіслати
Поділитися на інших сайтах


  • 9 months later...
  • 2 weeks later...

enlogo: image/data/en/my_super_logo.png

rulogo: image/data/ru/my_super_logo.png

catalog/controller/common/header.php

if (file_exists(DIR_IMAGE."data/".$this->session->data['language']."/my_super_logo.png")) {
$this->data['logo'] = $server."data/".$this->session->data['language']."/my_super_logo.png";
} else {
$this->data['logo'] = '';
}

на 1.5.5.1.2. не работает, по крайней мере с шаблоном Moneymaker

Змінено користувачем globaltrading
Надіслати
Поділитися на інших сайтах


этот xml конфликтует с модулями Маркимакса (SEO CMS TOP 2) - он отдает массив значений

Змінено користувачем globaltrading
Надіслати
Поділитися на інших сайтах


  • 3 months later...

Тестировал на oc 2.1 будет работать на всех версиях опенкарта 100%

 

в языковых header.php пишем

rus: 

$_['logo_link']           = '/image/catalog/logo/logo-rus.png';

eng:

$_['logo_link']           = '/image/catalog/logo/logo.png';

в контроллере добавляем

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

в header.tpl в нужном месте (ключевой код <img src="<?php echo $logo_link; ?>)

 

<div id="logo" class="logo">
  <?php if ($logo) { ?>
  <a href="<?php echo $home; ?>"><img src="<?php echo $logo_link; ?>" title="<?php echo $name; ?>" alt="<?php echo $name; ?>" class="img-responsive"/>   </a>
  <?php }  ?></div>

 

 

автор: Макаронок Сергей (BY Minsk)

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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