Skip to content

Instantly share code, notes, and snippets.

@corellian
Created May 4, 2016 09:21
Show Gist options
  • Save corellian/1086856a90570e2ac44146ed81f144ee to your computer and use it in GitHub Desktop.
Save corellian/1086856a90570e2ac44146ed81f144ee to your computer and use it in GitHub Desktop.
Wordpress qTranslate-X language selector shortcode
/**
* Language Selector Shortcode
*/
function qtranxf_generateLanguageSelectorShortcode() {
global $q_config;
if(is_404()) $url = get_option('home'); else $url = '';
echo PHP_EOL.'<div style="text-transform: uppercase;" class="lang-sel sel-dropdown"><a href="#"><span>'.$q_config['language'].'</span></a><ul>'.PHP_EOL;
foreach(qtranxf_getSortedLanguages() as $language) {
$alt = $q_config['language_name'][$language].' ('.$language.')';
$classes = array('lang-'.$language);
if($language == $q_config['language']) $classes[] = 'active';
echo '<li class="'. implode(' ', $classes) .'"><a href="'.qtranxf_convertURL($url, $language, false, true).'"';
// set hreflang
echo ' hreflang="'.$language.'"';
echo ' title="'.$alt.'"';
echo ' >';
echo '<span style="text-transform: uppercase;">'.$language.'</span>';
echo '</a></li>'.PHP_EOL;
}
echo '</ul></div><div class="qtranxs_widget_end"></div>'.PHP_EOL;
}
add_shortcode('qtranslate_selector', 'qtranxf_generateLanguageSelectorShortcode');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment