HEX
Server: Apache/2.4.65 (Debian)
System: Linux web6 5.10.0-36-amd64 #1 SMP Debian 5.10.244-1 (2025-09-29) x86_64
User: innocamp (1028)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //home/plan4ev/public_html/wp-content/plugins/siteorigin-panels/widgets/migration.php
<?php

/**
 * Go through all the old PB widgets and change them into far better visual editor widgets
 *
 * @param array $panels_data
 *
 * @return array
 */
function siteorigin_panels_legacy_widget_migration( $panels_data ) {
	if ( ! empty( $panels_data['widgets'] ) && is_array( $panels_data['widgets'] ) ) {
		foreach ( $panels_data['widgets'] as &$widget ) {
			switch ( $widget['panels_info']['class'] ) {
				case 'SiteOrigin_Panels_Widgets_Gallery':
					$shortcode = '[gallery ';

					if ( ! empty( $widget['ids'] ) ) {
						$shortcode .= 'ids="' . esc_attr( $widget['ids'] ) . '" ';
					}
					$shortcode = trim( $shortcode ) . ']';

					$widget = array(
						'title' => '',
						'filter' => '1',
						'type' => 'visual',
						'text' => $shortcode,
						'panels_info' => $widget['panels_info'],
					);
					$widget['panels_info']['class'] = 'SiteOrigin_Widget_Editor_Widget';

					break;

				case 'SiteOrigin_Panels_Widgets_Image':
					if ( class_exists( 'SiteOrigin_Panels_Widgets_Image' ) ) {
						ob_start();
						the_widget(
							'SiteOrigin_Panels_Widgets_Image',
							$widget,
							array(
								'before_widget' => '',
								'after_widget' => '',
								'before_title' => '',
								'after_title' => '',
							)
						);

						$widget = array(
							'title' => '',
							'filter' => '1',
							'type' => 'visual',
							'text' => ob_get_clean(),
							'panels_info' => $widget['panels_info'],
						);

						$widget['panels_info']['class'] = 'SiteOrigin_Widget_Editor_Widget';
					}

					break;
			}
		}
	}

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