Edit File by line
/home/zeestwma/ceyloniy.../wp-conte.../plugins/elemento.../modules/home/classes
File: transformations-manager.php
<?php
[0] Fix | Delete
namespace Elementor\Modules\Home\Classes;
[1] Fix | Delete
[2] Fix | Delete
use Elementor\Core\Isolation\Wordpress_Adapter;
[3] Fix | Delete
use Elementor\Core\Isolation\Plugin_Status_Adapter;
[4] Fix | Delete
[5] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[6] Fix | Delete
exit; // Exit if accessed directly.
[7] Fix | Delete
}
[8] Fix | Delete
[9] Fix | Delete
class Transformations_Manager {
[10] Fix | Delete
[11] Fix | Delete
private static $cached_data = [];
[12] Fix | Delete
[13] Fix | Delete
private const TRANSFORMATIONS = [
[14] Fix | Delete
'Create_New_Page_Url',
[15] Fix | Delete
'Create_Edit_Website_Url',
[16] Fix | Delete
'Filter_Plugins',
[17] Fix | Delete
'Filter_Get_Started_By_License',
[18] Fix | Delete
'Filter_Sidebar_Promotion_By_License',
[19] Fix | Delete
'Filter_Condition_Introduction_Meta',
[20] Fix | Delete
'Create_Site_Settings_Url',
[21] Fix | Delete
'Filter_Top_Section_By_License',
[22] Fix | Delete
'Filter_Add_Ons_By_License',
[23] Fix | Delete
];
[24] Fix | Delete
[25] Fix | Delete
protected array $home_screen_data;
[26] Fix | Delete
[27] Fix | Delete
protected Wordpress_Adapter $wordpress_adapter;
[28] Fix | Delete
[29] Fix | Delete
protected Plugin_Status_Adapter $plugin_status_adapter;
[30] Fix | Delete
[31] Fix | Delete
protected array $transformation_classes = [];
[32] Fix | Delete
[33] Fix | Delete
public function __construct( $home_screen_data ) {
[34] Fix | Delete
$this->home_screen_data = $home_screen_data;
[35] Fix | Delete
$this->wordpress_adapter = new Wordpress_Adapter();
[36] Fix | Delete
$this->plugin_status_adapter = new Plugin_Status_Adapter( $this->wordpress_adapter );
[37] Fix | Delete
$this->transformation_classes = $this->get_transformation_classes();
[38] Fix | Delete
}
[39] Fix | Delete
[40] Fix | Delete
public function run_transformations(): array {
[41] Fix | Delete
if ( ! empty( self::$cached_data ) ) {
[42] Fix | Delete
return self::$cached_data;
[43] Fix | Delete
}
[44] Fix | Delete
[45] Fix | Delete
$transformations = self::TRANSFORMATIONS;
[46] Fix | Delete
[47] Fix | Delete
foreach ( $transformations as $transformation_id ) {
[48] Fix | Delete
$this->home_screen_data = $this->transformation_classes[ $transformation_id ]->transform( $this->home_screen_data );
[49] Fix | Delete
}
[50] Fix | Delete
[51] Fix | Delete
self::$cached_data = $this->home_screen_data;
[52] Fix | Delete
[53] Fix | Delete
return $this->home_screen_data;
[54] Fix | Delete
}
[55] Fix | Delete
[56] Fix | Delete
private function get_transformation_classes(): array {
[57] Fix | Delete
$classes = [];
[58] Fix | Delete
[59] Fix | Delete
$transformations = self::TRANSFORMATIONS;
[60] Fix | Delete
[61] Fix | Delete
$arguments = [
[62] Fix | Delete
'wordpress_adapter' => $this->wordpress_adapter,
[63] Fix | Delete
'plugin_status_adapter' => $this->plugin_status_adapter,
[64] Fix | Delete
];
[65] Fix | Delete
[66] Fix | Delete
foreach ( $transformations as $transformation_id ) {
[67] Fix | Delete
$class_name = '\\Elementor\\Modules\\Home\\Transformations\\' . $transformation_id;
[68] Fix | Delete
$classes[ $transformation_id ] = new $class_name( $arguments );
[69] Fix | Delete
}
[70] Fix | Delete
[71] Fix | Delete
return $classes;
[72] Fix | Delete
}
[73] Fix | Delete
}
[74] Fix | Delete
[75] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function