Форум русской поддержки Joomla!® CMS
03.12.2016, 23:49:42 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1] 2  Все   Вниз
  Добавить закладку  |  Печать  
Автор

Переключатель языка, как его слепить так как нужно?

 (Прочитано 4519 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Filin-Rock
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16



« : 03.08.2012, 15:38:54 »

Подскажите пожалуйста. Где можно выставить чтобы чтобы обозначения языка (флажки) стояли в ряд,а не в колонку?

Вот что я имею в виду, у меня сейчас вот так: 

RU
UA
EN


Как сделать чтобы вот так было: "RU UA EN"   ?

 Smiley

Записан
HiopsNerevar
Завсегдатай
*****

Репутация: +87/-0
Offline Offline

Пол: Мужской
Сообщений: 656


Я удобный.


« Ответ #1 : 03.08.2012, 15:42:54 »

Посмотрите стиль для флажков и поставьте в CSS float: left;
Записан
Filin-Rock
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16



« Ответ #2 : 03.08.2012, 16:16:20 »

К сожалению мне это не помогло. Даже почему то нижний блок поднялся вверх на ~50px. То что код сырой я не отрицаю ни сколько, от туда и ошибки. Может есть ссылка к какому нибудь сайту где это реализовано? Там я уже firebug-ом сам "прошерстю" и думаю разберусь. Как говорят "истинна познается в сравнении", так и я, буду сравнивать!
Записан
sergoguga
Живу я здесь
******

Репутация: +70/-8
Offline Offline

Пол: Мужской
Сообщений: 990


www.mpbox.ru


« Ответ #3 : 18.09.2012, 20:41:41 »

Посмотрите стиль для флажков и поставьте в CSS float: left;
ну и width добавить, не?
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #4 : 17.06.2013, 18:49:40 »

Есть одна проблемка. Много искал, но так и не нашел ответа. Стандартный модуль переключения языков позволяет отображаться только в 3-х вариантах: флаги (без подписей), выпадающий текстовый список (без флагов) и горизонтальное текстовое меню (тоже без флагов).
Есть ли способ заставить выпадающий список отображаться с флагами и названием языка?
Можно конечно сделать простое выпадающее CSS-меню с ссылками на главные страницы языковых версий и оформить его как душе угодно, но тогда не будет связи между пунктами меню. 
modules\mod_languages\tmpl тут лежит файлик default.php который, как я понял отвечает за то как переключатель выглядит (помимо css).
Показать текстовый блок
Кто подскажет что нужно дописать, чтобы перед пунктом в выпадающем списке языков стояли флаги?
Или может альтернативный модуль переключения существует?
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #5 : 17.06.2013, 18:56:36 »

Вот этот кусочек отвечает за вывод выподющего списка:

Код
	<select class="inputbox" onchange="document.location.replace(this.value);" >
<?php foreach($list as $language):?>
<option dir=<?php echo JLanguage::getInstance($language->lang_code)->isRTL()? '"rtl"' : '"ltr"'?> value="<?php echo $language->link;?>" <?php echo $language->active ? 'selected="selected"' : ''?>>
<?php echo $language->title_native;?></option>
<?php endforeach; ?>
</select>
А добавить нужно вот это:

Код
<?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?>

Но разве это можно добавить рядом с option?
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #6 : 17.06.2013, 19:54:33 »

Спасибо за быстрый ответ!
Можно ли добавить рядом с option? Не знаю. Эти куски, на сколько я понял, взаимоисключающие, иначе в чем тогда логика предупреждений в настройках модуля: Если включен параметр 'Включить выпадающий список', указанные ниже настройки будут игнорироваться
Сомневаюсь что рядом, внутри - может быть, но точно не в таком же виде.
Мне не понятно почему стандартный модуль это не позволяет. И в настройках и в коде (в php не разбираюсь) видно что идет проверка: если dropdown включен, то никаких флагов.
Если посмотреть на строку про select, то видим
Код:
value="<?php echo $language->link;?>"
похоже как раз на пункт языка. Если после открывающей кавычки воткнуть еще одно эхо например:
Код:
value="<?php echo кусок выводящий нужный gif ?> <?php echo $language->link;?>"
то может и получится, но что именно написать я не понимаю. вот это:
Код:
echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif'
?
попробую щас на денвере но сильно сомневаюсь что сработает. Если все так просто то почему в сети нет рецептов... да и модулей альтернативных, с расширенными настройками я не нашел. Слайдшоу всяких тьма, а про языки ничего.
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #7 : 17.06.2013, 21:37:02 »

По идее так:

Код
<select class="inputbox" onchange="document.location.replace(this.value);" >
<?php foreach($list as $language):?>
<option dir=<?php echo JLanguage::getInstance($language->lang_code)->isRTL()? '"rtl"' : '"ltr"'?> value="<?php echo $language->link;?>" <?php echo $language->active ? 'selected="selected"' : ''?>>
<?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?> <?php echo $language->title_native;?></option>
<?php endforeach; ?>
</select>
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #8 : 18.06.2013, 17:34:52 »

Не работает. код с подстановкой флага полюбому должен быть в value... но как его правильно написать я не представляю
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #9 : 18.06.2013, 17:50:46 »

Почему не работает? И почему Вы решили, что в value? Как раз таки в value это не надо добавлять, а именно между тегами option, где по идее все что угодно можно написать: http://htmlbook.ru/html/select
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #10 : 18.06.2013, 18:13:24 »

Верно, ошибся, но тем не менее кусок кода про картинку не работает. Может препятствуют другие куски? Я их не удалял.
Сейчас весь код выглядит так:
Код:
<?php
/**
 * @package Joomla.Site
 * @subpackage mod_languages
 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
 * @license GNU General Public License version 2 or later; see LICENSE.txt
 */

// no direct access
defined('_JEXEC') or die('Restricted access');
JHtml::_('stylesheet', 'mod_languages/template.css', array(), true);
?>
<div class="mod-languages<?php echo $moduleclass_sfx ?>">
<?php if ($headerText) : ?>
<div class="pretext"><p><?php echo $headerText; ?></p></div>
<?php endif; ?>

<?php if ($params->get('dropdown', 1)) : ?>
<form name="lang" method="post" action="<?php echo JURI::current(); ?>">
<select class="inputbox" onchange="document.location.replace(this.value);" >
<?php foreach($list as $language):?>
<option dir=<?php echo JLanguage::getInstance($language->lang_code)->isRTL()? '"rtl"' : '"ltr"'?> value="<?php echo $language->link;?>" <?php echo $language->active ? 'selected="selected"' : ''?>>
<?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?>
<?php echo $language->title_native;?></option>
<?php endforeach; ?>
</select>
</form>
<?php else : ?>
<ul class="<?php echo $params->get('inline', 1)? 'lang-inline' : 'lang-block';?>">
<?php foreach($list as $language):?>
<?php if ($params->get('show_active', 0) || !$language->active):?>
<li class="<?php echo $language->active ? 'lang-active' : '';?>" dir="<?php echo JLanguage::getInstance($language->lang_code)->isRTL()? 'rtl' : 'ltr' ?>">
<a href="<?php echo $language->link;?>">
<?php if ($params->get('image', 1)):?>
<?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?>
<?php else : ?>
<?php echo $params->get('full_name', 1)? $language->title_native : strtoupper($language->sef);?>
<?php endif; ?>
</a>
</li>
<?php endif;?>
<?php endforeach;?>
</ul>
<?php endif; ?>

<?php if ($footerText) : ?>
<div class="posttext"><p><?php echo $footerText; ?></p></div>
<?php endif; ?>
</div>

по прежнему денвер, кэш чистил...

Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #11 : 18.06.2013, 18:41:09 »

Хмм, вроде должно выводить... А что вместо флажка? Или вообще пусто. И надеюсь, что включен режим dropdown
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #12 : 18.06.2013, 19:16:17 »

dropdown включен. просто игнорирует, даже намека что перед пунктами должно чтото быть не появилось, как выпадали текстовые два языка так и щас
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #13 : 18.06.2013, 21:35:30 »

У Вас шаблон стандартный? Если нет, то может в нем переопределен вывод модуля языков.
Записан
verstalshik
Практически профи
*******

Репутация: +94/-1
Offline Offline

Сообщений: 1788



« Ответ #14 : 18.06.2013, 23:00:07 »

у вас языки как сделаны - на поддоменах? если на поддоменах или разных доменах, то ставьте плагинчик и модуль переключения языков сделать как код, Ефаныч советовал как-то в какой-то теме соседней, а штатный модуль переключения выкиньте.
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #15 : 19.06.2013, 00:49:13 »

Joomla 2.5.6 шаблон "minisite"  T3Framework от JoomlArt. Что значит переопределен вывод модуля языков? Похож на все остальные, код не сравнивал правда, гляну.
Языки сделаны встроенными средствами на одном домене, иначе я не парился бы со штатным модулем, сделал бы список выпадающий на CSS и всё. А совет Ефаныча позволял связывать пункты меню? Это ведь единственная польза от штатного модуля.
Записан
verstalshik
Практически профи
*******

Репутация: +94/-1
Offline Offline

Сообщений: 1788



« Ответ #16 : 19.06.2013, 01:43:34 »

так все-таки как языки разделены? сено-солома... домен.зона/ru/Бла-бла и домен.зона/en/блабла ?
по совету Ефаныча кнопки - это ссылки на другой домен, т.е. в текущий путь вставляется нужный домен и все! т.е. связь пунктов меню в принципе не нужна! красиво!
например, вы находитесь на русскоязычной страничке abcde.ru/block33/page204.html, жмем кнопку и вместо abcde.ru вставляется abcde.com - в результате мы попадаем на англоязычную страничку abcde.com/block33/page204.html
Записан
fuchadzhi
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8



« Ответ #17 : 19.06.2013, 13:35:59 »

я же говорю, языки сделаны встроенными средствами на одном домене. именно так как вы написали: домен.зона/ru/Бла-бла и домен.зона/en/блабла
но никак у меня не укладывается мысль, что на php нельзя дописать массив условий и проверок какие языки активны и если выводится в списке такой-то язык, то передним должен стоять вот этот конкретный гиф. Я космос придумал? Для знающих Joomla и PHP, мне кажется, это как почесаться и чаю попить. Подправил штатный модуль и все в шоколаде. Хорошо конечно когда языковые версии находятся в своих зонах, но у меня так не случилось
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #18 : 19.06.2013, 15:04:09 »

Будет время, посмотрю у себя, что там с этими флажками (почему не выводятся).
Записан
Shustry
Moderator
*****

Репутация: +727/-3
Offline Offline

Пол: Мужской
Сообщений: 6667


Рисую дизайны


« Ответ #19 : 19.06.2013, 22:31:51 »

img внутрь option не работает! Но можно назначить фоном:
Код
<?php if ($params->get('dropdown', 1)) : ?>
<form name="lang" method="post" action="<?php echo JURI::current(); ?>">
<select class="inputbox" onchange="document.location.replace(this.value);" >
<?php foreach($list as $language):?>
<?php $imgbg = 'media/mod_languages/images/'.$language->image.'.gif'?>
<option dir=<?php echo JLanguage::getInstance($language->lang_code)->isRTL()? '"rtl"' : '"ltr"'?> value="<?php echo $language->link;?>" <?php echo $language->active ? 'selected="selected"' : ''?>
style='padding:2px 2px 2px 20px; background: url(<?php echo $imgbg;?>) 0 center no-repeat;'>
<?php echo $language->title_native;?>
</option>
<?php endforeach; ?>
</select>
</form>
<?php else : ?>
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #20 : 20.06.2013, 10:06:56 »

img внутрь option не работает! Но можно назначить фоном:
Во как, а жаль...
Записан
sergoguga
Живу я здесь
******

Репутация: +70/-8
Offline Offline

Пол: Мужской
Сообщений: 990


www.mpbox.ru


« Ответ #21 : 27.09.2013, 16:33:32 »

Во как, а жаль...
вот оно чо!!))
Записан
brood
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 47


« Ответ #22 : 12.02.2014, 19:02:53 »

Ребят а как сделать чтоб не было выпадаюшего списко ни флагов, чтоб было только название языка. Вот как на этом сайте: http://redsupertools.com/index.html . Как это сделать? 
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #23 : 12.02.2014, 19:44:20 »

В модуле сделать соответствующие настройки.
Записан
brood
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 47


« Ответ #24 : 12.02.2014, 19:50:05 »

Там такого нету. Может я что то не так делаю? Скрином можете скинуть? Спасибо !
Записан
brood
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 47


« Ответ #25 : 12.02.2014, 19:51:47 »

Все нашел... Sorry....
Записан
IgorArhangel
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 89



« Ответ #26 : 21.02.2014, 00:35:10 »

Добрый день..

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

в выпадающем списке видно только один язык.
может кто делал такое?
подскажите.
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #27 : 21.02.2014, 00:57:30 »

Добрый день..

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

в выпадающем списке видно только один язык.
может кто делал такое?
подскажите.
Чисто теоретически такое возможно, но сложновато. Надо переписывать логику в макете вывода языков.
Записан
IgorArhangel
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 89



« Ответ #28 : 21.02.2014, 01:04:23 »

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

Это только в модуле?

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

или в другой способ?
Записан
b2z
Support Team
*****

Репутация: +707/-0
Offline Offline

Пол: Мужской
Сообщений: 7517


Разраблю понемногу


« Ответ #29 : 21.02.2014, 01:08:42 »

Да, только в модуле. Такс, я сейчас вспомнил, что я такое делал когда-то. Сейчас, попробую найти.
Записан
Страниц: [1] 2  Все   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet