HEX
Server: Apache
System: Linux WWW 6.1.0-40-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.153-1 (2025-09-20) x86_64
User: web11 (1011)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: /var/www/lcc.kaunokolegija.lt/wp-content/plugins/siteorigin-panels/compat/widget-options.php
<?php

/**
 * Filter panels_data so it's compatible with Widget Options plugin.
 *
 * @return mixed
 */
function siteorigin_panels_widget_options_compat_panels_data( $panels_data ) {
	if ( ! empty( $panels_data['widgets'] ) && is_array( $panels_data['widgets'] ) ) {
		foreach ( $panels_data['widgets'] as & $widget ) {
			if ( ! empty( $widget['extended_widget_opts'] ) ) {
				$widget['extended_widget_opts'] = siteorigin_panels_widget_options_compat_filter( $widget['extended_widget_opts'] );
			}
		}
	}

	return $panels_data;
}
add_filter( 'siteorigin_panels_data', 'siteorigin_panels_widget_options_compat_panels_data' );

/**
 * Filter that removes any empty strings so they pass an ! isset() test.
 *
 * @return array
 */
function siteorigin_panels_widget_options_compat_filter( $value ) {
	if ( is_array( $value ) ) {
		foreach ( $value as $k => & $v ) {
			if ( is_array( $v ) ) {
				$v = siteorigin_panels_widget_options_compat_filter( $v );
			} elseif ( is_string( $v ) && empty( $v ) ) {
				unset( $value[$k] );
			}
		}
	}

	return $value;
}