وردپرس

Edge case: array expected in sempress_pre_get_avatar_data


I was trying to solve an unrelated problem but couldn’t find any logs for it due to the high volume of PHP warnings that array_merge expects the first parameter to be an array.

I tracked down the function where the error was taking place and this is my fix.

If it turns out that args['class'] exists but isn’t an array, make it into an array.

function sempress_pre_get_avatar_data( $args, $id_or_email ) {
	if ( ! isset( $args['class'] ) ) {
		$args['class'] = array();
	}
    if( ! is_array($args['class'])){
        $args['class'] = array($args['class']);
    }
	// Adds a class for microformats v2
	$args['class'] = array_unique( array_merge( $args['class'], array( 'u-photo' ) ) );
	$args['extra_attr'] = 'itemprop="image"';

	return $args;
}

این خبر را در ایران وب سازان مرجع وب و فناوری دنبال کنید

مشاهده پاسخ های این مطلب
———————————————
این مطلب از سایت انجمن وردپرس گردآوری شده است و کلیه حقوق مطلق به انجمن وردپرس می باشد در صورت مغایرت و یا بروز مشکل اطلاع دهید تا حذف گردد

منبع: انجمن وردپرس

دکمه بازگشت به بالا