Модификация переключателя языка Joomla - PullRequest
0 голосов
/ 25 июня 2011

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

<?php
/**
 * @version     $Id: default.php 19022 2010-10-02 14:51:33Z infograf768 $
 * @package     Joomla.Site
 * @subpackage  mod_languages
 * @copyright   Copyright (C) 2005 - 2010 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);
$document = &JFactory::getDocument();
$document->addScript('jomres/javascript/jquery.ui.selectmenu.js');  
$document->addScript('jomres/javascript/selectmenu.js');  
?>

<select name="speedB" id="speedB"  onchange="Javascript: window.location.href='<?php echo $language->title;?>'">>

    <?php foreach($list as $language):?>



    <option value=" <?php echo $language->active ? 'lang-active' : '';?>">



       <?php echo $language->title;?>





<?php endforeach;?></option>


            </select>

1 Ответ

0 голосов
/ 25 июня 2011

Проблема в том, как отображаются теги опций.Атрибут value должен содержать значение, которое будет отправлено обратно в браузер, и есть выбранный атрибут, который определяет, какое значение будет отправлено обратно.Только выбранному атрибуту будет возвращено его значение.

Так что вам нужно что-то вроде

<?php foreach($list as $language):?>
    <option value="<?php echo $language->title;?>" <?php echo $language->active ? 'selected' : '';?>
        <?php echo $language->title;?>
    </option>
<?php endforeach;?>

Обратите внимание, что у меня нет доступного Joomla, поэтому я не могу проверить, какое поле$language лучше всего использовать в атрибуте значения параметра.Вероятно, есть что-то, что дает короткое имя, например en-GB или fr-FR

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...