WPCS - WordPress Currency Switcher Professional

¿Cómo cambiar la moneda al cambiar el idioma?

Para cambiar la moneda al cambiar el idioma en WordPress, usa los siguientes fragmentos de PHP:

WPML:

  • abre el archivo functions.php del tema de WordPress activo
  • añade ahí el siguiente código PHP:
    add_filter('wp_head', function() {
        $lang = ICL_LANGUAGE_CODE;
        global $WPCS;
        switch ($lang)
        {
            case 'bg':
                $WPCS->storage->set_val('wpcs_current_currency', 'BGN');
                break;
            case 'en':
                $WPCS->storage->set_val('wpcs_current_currency', 'EUR');
                break;
            default:
                $WPCS->storage->set_val('wpcs_current_currency', 'USD');
                break;
        }
    });
  • Consulta la documentación de WPML sobre los códigos de idioma

Polylang y TranslatePress:

  • abre el archivo functions.php del tema de WordPress activo
  • añade ahí el siguiente código PHP:
    add_filter('wp_head', function() {
        $lang = get_locale();
        global $WPCS;
        switch ($lang)
        {
            case 'bg_BG':
                $WPCS->storage->set_val('wpcs_current_currency', 'BGN');
                break;
            case 'en_GB':
                $WPCS->storage->set_val('wpcs_current_currency', 'EUR');
                break;
            default:
                $WPCS->storage->set_val('wpcs_current_currency', 'USD');
                break;
        }
    });
  • https://wordpress.org/support/topic/switch-currency-with-language-change-polylang/
  • Consulta la documentación de Polylang sobre los códigos de idioma

GTranslate:

  • abre el archivo functions.php del tema de WordPress activo
  • añade ahí el siguiente código PHP:
    add_filter('wp_head', function() {
        $lang = isset($_SERVER['HTTP_X_GT_LANG']) ? $_SERVER['HTTP_X_GT_LANG'] : '';
        global $WPCS;
        switch ($lang)
        {
            case 'bg_BG':
                $WPCS->storage->set_val('wpcs_current_currency', 'BGN');
                break;
            case 'en_GB':
                $WPCS->storage->set_val('wpcs_current_currency', 'EUR');
                break;
            default:
                $WPCS->storage->set_val('wpcs_current_currency', 'USD');
                break;
        }
    });
  • https://wordpress.org/plugins/gtranslate/