Допустим на сайте подключен плагин многоязычности qtranslate-X. И есть какой-то длинный контент заключенный в do_shortcode(‘… тут какое-то множество шорткодов …’); Возможно сам плагин qtranslate-X в данном случай имеет какую-то запись чтобы текст переделывался под нужный язык, во всяком случае мне это не известно. А просто ставя «[:ru] Русский [:en] Английский» заключив запись в функцию _e() — результатом стала ошибка php. В итоге написан небольшой шорткод. На сайте два языка русский и английский, по умолчанию английский.
Добавляем в php файл:
function title_carusel( $atts ) { $en = "{$atts['en']}"; $ru = "{$atts['ru']}"; $str_serv_lang = substr($_SERVER['REQUEST_URI'],0,4); if ($str_serv_lang == '/ru/'){ return $ru; } else {return $en;} } add_shortcode( 'title_carusel', 'title_carusel' );
В сам контент добавляем:
[title_carusel en="Текст на английском" ru="Текст на русском"]
Или вызов из php:
echo do_shortcode('[title_carusel en="Текст на английском" ru="Текст на русском"]');
Должно быть в самом плагине qtranslate-X что-то на подобие шорткода, но долго искать не хотелось, добавил несколько строчек кода.