Перейти к содержанию
supmener

[Решено] Меню выбора языка

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

Зачем есть меню выбора языка, если там только русский язык?

post-126-1293741785,946_thumb.jpg

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


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

Можно добавить других языков.

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


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

А как добавить английский язык?

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


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

А если планируется оставить только русский язык, то есть ли возможность отключить этот выпадающий список с выбором языков?

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


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

Да, друзья, поддерживаю вопрос:можно ли отключить выбор языка и выбор валюты?Чтобы использовать только Русский - Рубль

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


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

OK. Разобрался.

Если кому нужно, чтобы убрать выбор языка и валюты:

в файлике catalogviewthemedefaulttemplatecommonheader.tpl

удалите следующий кусок кода:

<div class="div7">        <?php if ($currencies) { ?>        <form action="<?php echo str_replace('&', '&', $action); ?>" method="post" enctype="multipart/form-data" id="currency_form">          <div class="switcher">            <?php foreach ($currencies as $currency) { ?>            <?php if ($currency['code'] == $currency_code) { ?>            <div class="selected"><a><?php echo $currency['title']; ?></a></div>            <?php } ?>            <?php } ?>            <div class="option">              <?php foreach ($currencies as $currency) { ?>              <a onclick="$('input[name='currency_code']').attr('value', '<?php echo $currency['code']; ?>'); $('#currency_form').submit();"><?php echo $currency['title']; ?></a>              <?php } ?>            </div>          </div>          <div style="display: inline;">            <input type="hidden" name="currency_code" value="" />            <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />          </div>        </form>        <?php } ?>        <?php if ($languages) { ?>        <form action="<?php echo str_replace('&', '&', $action); ?>" method="post" enctype="multipart/form-data" id="language_form">          <div class="switcher">            <?php foreach ($languages as $language) { ?>            <?php if ($language['code'] == $language_code) { ?>            <div class="selected"><a><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" />  <?php echo $language['name']; ?></a></div>            <?php } ?>            <?php } ?>            <div class="option">              <?php foreach ($languages as $language) { ?>              <a onclick="$('input[name='language_code']').attr('value', '<?php echo $language['code']; ?>'); $('#language_form').submit();"><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" />  <?php echo $language['name']; ?></a>              <?php } ?>            </div>          </div>          <div>            <input type="hidden" name="language_code" value="" />            <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />          </div>        </form>        <?php } ?>      </div>
Изменено пользователем afwollis
edit -> save

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


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

Спасибо за решение! Проверил и правда помогает!

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


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

OK. Разобрался.

Если кому нужно, чтобы убрать выбор языка и валюты:

в файлике catalogviewthemedefaulttemplatecommonheader.tpl

удалите следующий кусок кода:

<div class="div7">        <?php if ($currencies) { ?>        <form action="<?php echo str_replace('&', '&', $action); ?>" method="post" enctype="multipart/form-data" id="currency_form">          <div class="switcher">            <?php foreach ($currencies as $currency) { ?>            <?php if ($currency['code'] == $currency_code) { ?>            <div class="selected"><a><?php echo $currency['title']; ?></a></div>            <?php } ?>            <?php } ?>            <div class="option">              <?php foreach ($currencies as $currency) { ?>              <a onclick="$('input[name='currency_code']').attr('value', '<?php echo $currency['code']; ?>'); $('#currency_form').submit();"><?php echo $currency['title']; ?></a>              <?php } ?>            </div>          </div>          <div style="display: inline;">            <input type="hidden" name="currency_code" value="" />            <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />          </div>        </form>        <?php } ?>        <?php if ($languages) { ?>        <form action="<?php echo str_replace('&', '&', $action); ?>" method="post" enctype="multipart/form-data" id="language_form">          <div class="switcher">            <?php foreach ($languages as $language) { ?>            <?php if ($language['code'] == $language_code) { ?>            <div class="selected"><a><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" />  <?php echo $language['name']; ?></a></div>            <?php } ?>            <?php } ?>            <div class="option">              <?php foreach ($languages as $language) { ?>              <a onclick="$('input[name='language_code']').attr('value', '<?php echo $language['code']; ?>'); $('#language_form').submit();"><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" />  <?php echo $language['name']; ?></a>              <?php } ?>            </div>          </div>          <div>            <input type="hidden" name="language_code" value="" />            <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />          </div>        </form>        <?php } ?>      </div>
А я бы всё это неудалял а оставил так:

<div class="div7">          <div style="display: inline;">            <input type="hidden" name="currency_code" value="<?php echo $currencies[code];?>" />          </div>          <div>            <input type="hidden" name="language_code" value="<?php echo $languages[code];?>" />          </div>        </div>
Изменено пользователем afwollis
edit -> save
  • +1 1

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


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

DEATH, а что дают эти строки, зачем мы их оставили?

И в предыдущем убранном коде нет выражения echo $currencies

, почему? Возможно, дело в версии скрипта (у меня ocStore v0.0.7), тогда надо еще раз потщательнее определить, что мы там оставляем. Я не знаком с ПХП и с логикой этого скрипта, поэтому отношусь к вкраплениям ПХП трепетно, хочется быть уверенным, что ничего не будет хуже.

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


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

Если нужно убрать только выбор языка, то в блоке "div7" нужно найти и убрать следующий кусок кода:

<div class="switcher">            <?php foreach ($languages as $language) { ?>            <?php if ($language['code'] == $language_code) { ?>            <div class="selected"><a><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" />  <?php echo $language['name']; ?></a></div>            <?php } ?>            <?php } ?>            <div class="option">              <?php foreach ($languages as $language) { ?>              <a onclick="$('input[name='language_code']').attr('value', '<?php echo $language['code']; ?>'); $('#language_form').submit();"><img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" />  <?php echo $language['name']; ?></a>              <?php } ?>            </div>          </div>
Изменено пользователем afwollis
edit -> save

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


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

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

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


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

А можно вообще элементарно добавить свойство display: none в необходимых блоках, и ничего не удалять. Так же можно убрать ненужные поля при регистрации и оформлении заказа — способ немного топорный, но зачем экономить пару байт кода, удаляя их? https://opencartforum.com/public/style_emoticons/default/icon_question.gif

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


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

куда подевался код который нужно убирать?

пустые таблицы на форуме!

помогите очень нужно убрать валюту и выбор языка

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


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

поправил сообщения.

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


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

Изображение

ребята, подскажите, пожалуйста, как уменьшить (сузить) поле выбора языка? и еще такой момент, в админке не дает ввести название языка менее трех символов, хотелось бы поставить просто ru

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


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

за это отвечает класс .switcher

маргинами и паддингами можно всякого добиться.

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


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

за это отвечает класс .switcher

маргинами и паддингами можно всякого добиться.

сорри, а как для новичка, можно более расширенный ответ? :blink:

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


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

более расширенный ответ.

открываете файл catalog/view/theme/ВАША_ТЕМА/stylesheet/stylesheet.css

находите там .switcher и все, что с ним связано(оно ниже и начинается тоже с .switcher)

И редактируете! ;)

Для примера вот вам отредактированный под ширину 200px. Сравнивайте со стандартным и делайте выводы, там несложно

.switcher {
	float: right;	
	margin-top: 6px;
	margin-right: 16px;
	width: 200px;
}
.switcher a {
	text-decoration: none;
	display: block;
	width:200px;
}
.switcher .selected {
	background: #FFFFFF url('../image/switcher.png') repeat-x;
	width:195px;
}
.switcher .selected a {
	border: 1px solid #CCCCCC;
	background: url('../image/arrow_down.png') 200px center no-repeat;
	color: #666666;
	padding: 2px 5px 2px 5px;
	width: 200px;
}
.switcher .selected a:hover {
	background: #F0F0F0 url('../image/arrow_down.png') 200px center no-repeat;
	width: 200px;
}
.switcher .option {	
	position: absolute;
	z-index: 3;
	border-left: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	background-color: #EEEEEE;
	display: none;
	width: 200px;
}
.switcher .option a {
	color: #000;
	padding: 3px 1px 3px 5px;
	width: 200px;
}
.switcher .option a:hover {
	background: #FFC;
	width: 194px;
}
.switcher img {
	position: relative;
	top: 1px;
}

успехов.

post-3552-0-00058800-1302942361_thumb.png

  • +1 1

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


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

AlexFisher, спасибо, поправил, теперь все отлично смотрится ))

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

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


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

admin/controller/localisation/language.php

ищем

if ((strlen(utf8_decode($this->request->post['name'])) < 3) || (strlen(utf8_decode($this->request->post['name'])) > 32)) {
			$this->error['name'] = $this->language->get('error_name');
		}
меняем на

if ((strlen(utf8_decode($this->request->post['name'])) < 1) || (strlen(utf8_decode($this->request->post['name'])) > 32)) {
			$this->error['name'] = $this->language->get('error_name');
		}
порядок. ;)

post-3552-0-98950400-1302947377_thumb.png

  • +1 1

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


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

порядок. ;)

действительно порядок B) большое спасибо!

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


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

А нельзя сделать чтоб вообще не было Eng (в товаре, описание), или оч геморно?

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


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

админка -> настройки -> локализация -> язык.

Как-то так...

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


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

ковырял, ковырял но так и не понял как сделать следующее:

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

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


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

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

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

×

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

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