HEX
Server: nginx/1.27.1
System: Linux in-4 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64
User: ilikadirect (1186)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
Upload Files
File: /storage/v6964/srce/public_html/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;
}