File "switchers.php"
Full Path: /home/jlklyejr/public_html/wp-content/test/wp-content/themes/goya/inc/switchers.php
File size: 5.3 KB
MIME-type: text/x-php
Charset: utf-8
<?php
function goya_currency_switcher( $args = array() ) {
if ( class_exists( 'WOOCS' ) ) {
global $WOOCS;
$args = wp_parse_args( $args, array( 'label' => '', 'direction' => 'down' ) );
$currencies = $WOOCS->get_currencies();
$currency_list = array();
foreach ( $currencies as $key => $currency ) {
if ( $WOOCS->current_currency == $key ) {
array_unshift( $currency_list, sprintf(
'<li><a href="#" class="woocs_flag_view_item woocs_flag_view_item_current" data-currency="%s">%s</a></li>',
esc_attr( $currency['name'] ),
esc_html( $currency['name'] )
) );
} else {
$currency_list[] = sprintf(
'<li><a href="#" class="woocs_flag_view_item" data-currency="%s">%s</a></li>',
esc_attr( $currency['name'] ),
esc_html( $currency['name'] )
);
}
}
?>
<div class="et-switcher-container et-currency">
<span class="label"><?php echo esc_html__('Currency', 'goya'); ?></span>
<?php if ( ! empty( $args['label'] ) ) : ?>
<span class="label"><?php echo esc_html( $args['label'] ); ?></span>
<?php endif; ?>
<ul class="et-header-menu">
<li class="menu-item-has-children">
<span class="selected"><?php echo esc_html( $currencies[ $WOOCS->current_currency ]['name'] ); ?></span>
<ul class="sub-menu">
<?php echo implode( "\n\t", $currency_list ); ?>
</ul>
</li>
</ul>
</div>
<?php } else if (class_exists('WCML_Currency_Switcher') ) { ?>
<div class="et-switcher-container et-currency">
<span class="label"><?php echo esc_html__('Currency', 'goya'); ?></span> <?php do_action('wcml_currency_switcher', array('format' => '%code%')); ?>
</div>
<?php }
}
add_action( 'goya_currency_switcher', 'goya_currency_switcher' );
/* Custom Language Switcher */
function goya_language_switcher() {
$langs = array();
$languages = apply_filters( 'goya_languages', $langs );
$ls_default = get_theme_mod('ls_default', array('name'));
$ls_mobile = get_theme_mod('ls_mobile_header', array('code'));
if (function_exists('icl_get_languages') ||
function_exists('pll_the_languages') ||
function_exists('weglot_get_languages_available') ||
class_exists('TRP_Translate_Press') ||
function_exists('weglot_get_languages_available') ||
!empty($languages)) {
?>
<div class="et-switcher-container et-language">
<span class="label"><?php echo esc_html__('Language', 'goya'); ?></span>
<?php
if (class_exists('TRP_Translate_Press')) {
echo do_shortcode('[language-switcher]');
} else if (function_exists('weglot_get_languages_available')) {
echo do_shortcode('[weglot_switcher]');
} else if ( function_exists('icl_get_languages')
|| !empty($languages)
|| function_exists('pll_the_languages')) {
$classes [] = 'et-header-menu';
foreach($ls_default as $el) {
$classes [] = 'ls-default-' . $el;
}
foreach($ls_mobile as $el) {
$classes [] = 'ls-mobile-' . $el;
}
$classes [] = 'style-' . apply_filters( 'goya_language_switcher_style', get_theme_mod('ls_default_layout', 'dropdown') );
if (function_exists('pll_the_languages')) {
$languages = pll_the_languages(array('raw'=>1));
} else if (function_exists('icl_get_languages')) {
$languages = icl_get_languages('skip_missing=0');
}
?>
<ul class="<?php echo esc_attr(implode(' ', $classes)); ?>">
<li class="menu-item-has-children">
<span class="selected"><?php
if(1 < count($languages)){
if (function_exists('pll_the_languages')) { // Polylang
foreach($languages as $l){
if ($l['current_lang']) {
echo '<img class="ls-flag" src="'. $l['flag'] .'" alt="'.$l['name'].'"><span class="ls-code">' . $l['slug'] . '</span><span class="ls-name">' . $l['name'] . '</span>';
}
}
} else { // WPML, Custom
foreach($languages as $l){
if ($l['active']) {
if (!empty($l['country_flag_url'])) {
echo '<img class="ls-flag" src="'. $l['country_flag_url'] .'" alt="'.$l['native_name'].'">';
}
echo '<span class="ls-code">' . $l['language_code'] . '</span><span class="ls-name">' . $l['native_name'] . '</span>';
}
}
}
}
?></span>
<ul class="sub-menu">
<?php
if(0 < count($languages)){
foreach($languages as $l){
if (function_exists('pll_the_languages')) {
if (!$l['current_lang']) {
echo '<li><a lang="'.$l['locale'].'" hreflang="'.$l['locale'].'" href="'.$l['url'].'" data-lang="'.$l['slug'].'" title="'.$l['name'].'"><img class="ls-flag" src="'. $l['flag'] .'" alt="'.$l['name'].'"><span class="ls-code">' . $l['slug'] . '</span><span class="ls-name">' . $l['name'] . '</span></a></li>';
}
} else {
if (!$l['active']) {
echo '<li><a href="'.$l['url'].'" data-lang="'.$l['language_code'].'" title="'.$l['native_name'].'" class="nturl">';
if (!empty($l['country_flag_url'])) {
echo '<img class="ls-flag" src="'. $l['country_flag_url'] .'" alt="'.$l['native_name'].'">';
}
echo '<span class="ls-code">' . $l['language_code'] . '</span><span class="ls-name">' . $l['native_name'] . '</span></a></li>';
}
}
}
} else {
echo '<li>'.esc_html__('Add Languages', 'goya').'</li>';
}
?>
</ul>
</li>
</ul>
<?php } ?>
</div>
<?php
}
}
add_action( 'goya_language_switcher', 'goya_language_switcher' );