Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/elemento.../modules/usage
File: module.php
}
[500] Fix | Delete
[501] Fix | Delete
return $registry;
[502] Fix | Delete
}
[503] Fix | Delete
[504] Fix | Delete
/**
[505] Fix | Delete
* Save document usage.
[506] Fix | Delete
*
[507] Fix | Delete
* Save requested document usage, and update global.
[508] Fix | Delete
*
[509] Fix | Delete
* @param Document $document
[510] Fix | Delete
*/
[511] Fix | Delete
private function save_document_usage( Document $document ) {
[512] Fix | Delete
if ( ! $document::get_property( 'is_editable' ) && ! $document->is_built_with_elementor() ) {
[513] Fix | Delete
return;
[514] Fix | Delete
}
[515] Fix | Delete
[516] Fix | Delete
// Get data manually to avoid conflict with `\Elementor\Core\Base\Document::get_elements_data... convert_to_elementor`.
[517] Fix | Delete
$data = $document->get_json_meta( '_elementor_data' );
[518] Fix | Delete
[519] Fix | Delete
if ( ! empty( $data ) ) {
[520] Fix | Delete
try {
[521] Fix | Delete
$usage = $this->get_elements_usage( $document->get_elements_raw_data( $data ) );
[522] Fix | Delete
[523] Fix | Delete
$document->update_meta( self::META_KEY, $usage );
[524] Fix | Delete
[525] Fix | Delete
$this->add_to_global( $document->get_name(), $usage );
[526] Fix | Delete
} catch ( \Exception $exception ) {
[527] Fix | Delete
Logger::warning( $exception->getMessage(), [
[528] Fix | Delete
'document_id' => $document->get_id(),
[529] Fix | Delete
'document_name' => $document->get_name(),
[530] Fix | Delete
] );
[531] Fix | Delete
[532] Fix | Delete
return;
[533] Fix | Delete
}
[534] Fix | Delete
}
[535] Fix | Delete
}
[536] Fix | Delete
[537] Fix | Delete
public static function get_settings_usage() {
[538] Fix | Delete
$usage = [];
[539] Fix | Delete
[540] Fix | Delete
$settings_tab = Plugin::$instance->settings->get_tabs();
[541] Fix | Delete
$settings = array_merge(
[542] Fix | Delete
$settings_tab[ Settings::TAB_GENERAL ]['sections'],
[543] Fix | Delete
$settings_tab[ Settings::TAB_ADVANCED ]['sections']
[544] Fix | Delete
);
[545] Fix | Delete
[546] Fix | Delete
foreach ( $settings as $setting_data ) {
[547] Fix | Delete
foreach ( $setting_data['fields'] as $field_name => $field_data ) {
[548] Fix | Delete
$is_hidden_field = ( empty( $field_data['field_args']['type'] ) || 'hidden' === $field_data['field_args']['type'] );
[549] Fix | Delete
[550] Fix | Delete
if ( $is_hidden_field ) {
[551] Fix | Delete
continue;
[552] Fix | Delete
}
[553] Fix | Delete
[554] Fix | Delete
$setting_value = get_option( 'elementor_' . $field_name );
[555] Fix | Delete
[556] Fix | Delete
if ( empty( $setting_value ) ) {
[557] Fix | Delete
continue;
[558] Fix | Delete
}
[559] Fix | Delete
[560] Fix | Delete
$is_default_value = ( ! empty( $field_data['field_args']['std'] ) && $setting_value === $field_data['field_args']['std'] );
[561] Fix | Delete
[562] Fix | Delete
if ( $is_default_value ) {
[563] Fix | Delete
continue;
[564] Fix | Delete
}
[565] Fix | Delete
[566] Fix | Delete
$usage[ $field_name ] = $setting_value;
[567] Fix | Delete
}
[568] Fix | Delete
}
[569] Fix | Delete
[570] Fix | Delete
$usage = apply_filters( 'elementor/system-info/usage/settings', $usage );
[571] Fix | Delete
[572] Fix | Delete
return $usage;
[573] Fix | Delete
}
[574] Fix | Delete
[575] Fix | Delete
/**
[576] Fix | Delete
* Add system info report.
[577] Fix | Delete
*/
[578] Fix | Delete
public function add_system_info_report() {
[579] Fix | Delete
System_Info::add_report( 'usage', [
[580] Fix | Delete
'file_name' => __DIR__ . '/usage-reporter.php',
[581] Fix | Delete
'class_name' => __NAMESPACE__ . '\Usage_Reporter',
[582] Fix | Delete
] );
[583] Fix | Delete
[584] Fix | Delete
System_Info::add_report( 'settings', [
[585] Fix | Delete
'file_name' => __DIR__ . '/settings-reporter.php',
[586] Fix | Delete
'class_name' => __NAMESPACE__ . '\Settings_Reporter',
[587] Fix | Delete
] );
[588] Fix | Delete
}
[589] Fix | Delete
[590] Fix | Delete
/**
[591] Fix | Delete
* Usage module constructor.
[592] Fix | Delete
*
[593] Fix | Delete
* Initializing Elementor usage module.
[594] Fix | Delete
*
[595] Fix | Delete
* @access public
[596] Fix | Delete
*/
[597] Fix | Delete
public function __construct() {
[598] Fix | Delete
if ( ! Tracker::is_allow_track() ) {
[599] Fix | Delete
return;
[600] Fix | Delete
}
[601] Fix | Delete
[602] Fix | Delete
add_action( 'transition_post_status', [ $this, 'on_status_change' ], 10, 3 );
[603] Fix | Delete
add_action( 'before_delete_post', [ $this, 'on_before_delete_post' ] );
[604] Fix | Delete
[605] Fix | Delete
add_action( 'elementor/document/before_save', [ $this, 'before_document_save' ], 10, 2 );
[606] Fix | Delete
add_action( 'elementor/document/after_save', [ $this, 'after_document_save' ] );
[607] Fix | Delete
[608] Fix | Delete
add_filter( 'elementor/tracker/send_tracking_data_params', [ $this, 'add_tracking_data' ] );
[609] Fix | Delete
[610] Fix | Delete
add_action( 'admin_init', [ $this, 'add_system_info_report' ], 50 );
[611] Fix | Delete
}
[612] Fix | Delete
}
[613] Fix | Delete
[614] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function