WPML
סטטוס
נפתר
דווח עבור
WPML Multilingual CMS 4.4.6
נפתר בגרסה
WPML 4.4.8

סקירה כללית של התקלה

אם תעבור אל עמוד התאמה אישית או וידג’טים באזור הניהול של האתר, מוצג דף ריק או שגיאה קריטית:

PHP Fatal error: Uncaught InvalidArgumentException: item should be a Collection or an array or an object in .../wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/Obj.php:97

פתרון עוקף


  • צור גיבוי מלא של האתר שלך לפני שתמשיך.

  • פתח את הקובץ /wp-content/plugins/sitepress-multilingual-cms/classes/widgets/class-wpml-widgets-support-backend.php.

  • שנה את:
    			'selected_language' => Obj::propOr( 'all', 'wpml_language', $instance ),


  • ל:
    			'selected_language' => Obj::propOr( 'all', 'wpml_language', is_array( $instance ) ? $instance : [] ),


  • ערוך את אפשרויות ההתאמה האישית ו/או הווידג’טים שלך.

  • בסיום העריכה, הסר את הקוד שהוסף בשלב 2.
  • פתח את הקובץ: wp-content/plugins/sitepress-multilingual-cms/sitepress.class.php
  • שנה את:
    		$post_types = get_post_types( $args, 'objects' );
    
    		foreach ( $post_types as $name => $attrs ) {
    			$slug = trim( Obj::pathOr( '', [ 'rewrite', 'slug' ], $attrs ), '/' );
    			if ( $slug && isset( $vars[ $slug ] ) ) {
    				$post_type = $name;
    				$post_slug = $vars[ $slug ];
    				break;
    			}
    		}
  • ל:
    		$post_types = get_post_types( $args, 'objects' );
    
    		foreach ( $post_types as $name => $attrs ) {
    		    if ( $attrs->rewrite == false ) {
    		        break;
    		    }
    			$slug = trim( Obj::pathOr( '', [ 'rewrite', 'slug' ], $attrs ), '/' );
    			if ( $slug && isset( $vars[ $slug ] ) ) {
    				$post_type = $name;
    				$post_slug = $vars[ $slug ];
    				break;
    			}
    		}

כל התקלות הידועות →