WPML
Статус
Решено
Решено в
3.0.3

Обзор проблемы

Если Вы задали некорректную локаль в WPML > Языки для языка (или пользовательского языка, который Вы добавили), то при переходе на этот язык Вы можете получить фатальную ошибку, подобную этой:

Fatal error: Uncaught RuntimeException: Language of .../wp-content/languages/plugins/sitepress-ar3.mo cannot be recognized in ...wp-contentpluginswpml-string-translationclassestranslations-file-scantranslations-filewpml-st-translations-file-locale.php on line 65

( ! ) RuntimeException: Language of .../wp-content/languages/plugins/sitepress-ar3.mo cannot be recognized in ...wp-contentpluginswpml-string-translationclassestranslations-file-scantranslations-filewpml-st-translations-file-locale.php on line 65

Call Stack

#	Time	Memory	Function	Location

1	0.4015	410016	{main}( )	...index.php:0

2	0.4017	410296	require( '...wp-blog-header.php' )	...index.php:17

3	0.4017	410840	require_once( ...wp-load.php' )	...wp-blog-header.php:13

4	0.4019	411368	require_once( '...wp-config.php' )	...wp-load.php:37

5	0.4019	416200	require_once( '...wp-settings.php' )	...wp-config.php:97

6	0.4676	3677216	do_action( )	...wp-settings.php:394

7	0.4676	3677592	WP_Hook->do_action( )	...plugin.php:465

8	0.4676	3677592	WP_Hook->apply_filters( )	...class-wp-hook.php:310

9	0.4923	3975520	SitePress->plugin_localization( )	...class-wp-hook.php:286

10	0.4923	3975584	load_plugin_textdomain( )	...sitepress.class.php:3350

11	0.4923	3975728	load_textdomain( )	...l10n.php:791

12	0.4923	3975728	apply_filters( )	...l10n.php:621

13	0.4923	3976128	WP_Hook->apply_filters( )	...plugin.php:208

14	0.4923	3977632	WPMLSTMOHooksLoadTextDomain->overrideLoadTextDomain( )	...class-wp-hook.php:286

15	0.4923	3978112	WPML_ST_Translations_File_Locale->get( )	...LoadTextDomain.php:59

Обходное решение

В настоящее время мы работаем над исправлением этой ошибки
Рекомендуется исправить локаль в разделе WPML > Языки > Редактировать языки
Если у Вас нет доступа к страницам админ-панели, временно отключите WPML Перевод строк — лучше всего зайти по FTP в папку /wp-content/plugins/ и переименовать папку плагина во что-нибудь другое.

В качестве временного решения отредактируйте файл wpml-string-translation/classes/translations-file-scan/translations-file/wpml-st-translations-file-locale.php в строке 65 и замените:

throw new RuntimeException( 'Language of ' . $this->filepath. ' cannot be recognized' );

на:

return '';

Все известные проблемы →