WPML
الحالة
محلولة
أُبلغ عنها لـ
WPML Multilingual CMS 4.6.3
تم حلها في
WPML 4.6.4
وسوم الموضوع
Compatibility

نظرة عامة على المشكلة

عند استخدام WPML مع WordPress 4.7، يحدث خطأ فادح بسبب تسجيل كتلة مبدل اللغة للترجمة. يحدث هذا حتى لو لم يتم تمكين Gutenberg.

يسبب هذا مشاكل في التوافق مع إصدارات WordPress الأقدم من 5.0.

Fatal error: Uncaught Error: Call to undefined function WPML\BlockEditor\Blocks\register_block_type() in …/wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Blocks/LanguageSwitcher.php:47

حل بديل مؤقت

مطورونا على علم بهذه المشكلة وهم يعدّون إصدار بيتا من WPML لإصلاحها. في غضون ذلك:


  1. يُرجى التأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.

  2. افتح الملف …/wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Loader.php.

  3. ابحث عن السطر 57.

  4. غيّر:
    	public function registerBlocks() {
    		$LSLocalizedScriptData     = make( LanguageSwitcher::class )->register();
    		$this->localizedScriptData = array_merge( $this->localizedScriptData, $LSLocalizedScriptData );
    	}

    إلى:

    	public function registerBlocks() {
    		if ( \WPML_Block_Editor_Helper::is_active() ) {
    			$LSLocalizedScriptData     = make( LanguageSwitcher::class )->register();
    			$this->localizedScriptData = array_merge( $this->localizedScriptData, $LSLocalizedScriptData );
    		}
    	}

جميع المشاكل المعروفة →