href и span в выпадающем меню

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

Вот текущий код + мои усилия:

    echo "<div id='languages-container'>";
// Show the language switcher
foreach($translationController->getLanguages() as $language){
$isSSL = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] == 443;
$path = 'http'.(($isSSL) ? 's' : '').'://' . $_SERVER['HTTP_HOST'] . strip_tags($_SERVER['REQUEST_URI']);
$path = (strpos("x".$path,'?') !== false) ? substr($path, 0, strpos($path, "?")) : $path;
$path.= "?lang=" . $language;
$selected = $_COOKIE['webba_translator_language'] == $language ? 'selected' : '';
echo "<a href='{$path}'><span class='language {$language} {$selected}'></span></a>";

}
//15-9 Test, not working
echo "<select>
<option><a href='{$path}'><span class='language {$language} '></span>English</option>
<option><a href='{$path}'><span class='language {$language} '></span>Nederlands</option>
</select>";echo "</div>";

И CSS

#languages-container .language {
width: 20px;
height: 20px;
float: left;
margin: 2.5px 5px;
background-position: center center;
background-size: cover;
}
#languages-container .language.selected {
outline: 2px solid black;
outline-offset: 3px;
}

.language.nl_NL {
background-image: url('../img/lang/nl_NL.png');
}
.language.en_US {
background-image: url('../img/lang/en_US.png');
}

Это WiP, поэтому форматирование находится в списке задач.
У меня вопрос: как я могу получить флаги в выпадающий список вместо двух кликабельных значков?

Спасибо!

0

Решение

Проблема была исправлена ​​моим коллегой, использующим некоторый код Javascript:

foreach($translationController->getLanguages() as $language){
$isSSL = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] == 443;
$path = 'http'.(($isSSL) ? 's' : '').'://' . $_SERVER['HTTP_HOST'] . strip_tags($_SERVER['REQUEST_URI']);
$path = (strpos("x".$path,'?') !== false) ? substr($path, 0, strpos($path, "?")) : $path;
$path.= "?lang=" . $language;
$selected = $_COOKIE['webba_translator_language'] == $language ? 'selected' : '';

if($selected) {
$selectedString = "<a href='" . $path . "'><span class='language " . $language . "'></span></a>";
}
else{
$restLanguages[] = "<a href='" . $path . "'><span class='language " . $language . "'></span></a>";
}
}

echo "<div dir='ltr' id='languages-container' style='display: none;'>";
echo $selectedString;

echo "<div id='languages-container-hover' style='display: none;' >";
foreach($restLanguages as $restString){
echo $restString;
}
echo "</div>";
echo "</div>";
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector