Edit File by line
/home/zeestwma/ceyloniy.../wp-conte.../plugins/elemento.../modules/global-c...
File: atomic-global-styles.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace Elementor\Modules\GlobalClasses;
[2] Fix | Delete
[3] Fix | Delete
use Elementor\Plugin;
[4] Fix | Delete
use Elementor\Modules\AtomicWidgets\Styles\Atomic_Styles_Manager;
[5] Fix | Delete
[6] Fix | Delete
class Atomic_Global_Styles {
[7] Fix | Delete
const STYLES_KEY = 'global';
[8] Fix | Delete
[9] Fix | Delete
public function register_hooks() {
[10] Fix | Delete
add_action(
[11] Fix | Delete
'elementor/atomic-widgets/styles/register',
[12] Fix | Delete
fn( Atomic_Styles_Manager $styles_manager ) => $this->register_styles( $styles_manager ),
[13] Fix | Delete
20,
[14] Fix | Delete
2
[15] Fix | Delete
);
[16] Fix | Delete
[17] Fix | Delete
add_action( 'elementor/global_classes/update', fn( string $context ) => $this->invalidate_cache( $context ), 10, 1 );
[18] Fix | Delete
[19] Fix | Delete
add_action(
[20] Fix | Delete
'deleted_post',
[21] Fix | Delete
fn( $post_id ) => $this->on_post_delete( $post_id )
[22] Fix | Delete
);
[23] Fix | Delete
[24] Fix | Delete
add_action(
[25] Fix | Delete
'elementor/core/files/clear_cache',
[26] Fix | Delete
fn() => $this->invalidate_cache(),
[27] Fix | Delete
);
[28] Fix | Delete
[29] Fix | Delete
add_filter('elementor/atomic-widgets/settings/transformers/classes',
[30] Fix | Delete
fn( $value ) => $this->transform_classes_names( $value )
[31] Fix | Delete
);
[32] Fix | Delete
}
[33] Fix | Delete
[34] Fix | Delete
private function register_styles( Atomic_Styles_Manager $styles_manager ) {
[35] Fix | Delete
$context = is_preview() ? Global_Classes_Repository::CONTEXT_PREVIEW : Global_Classes_Repository::CONTEXT_FRONTEND;
[36] Fix | Delete
[37] Fix | Delete
$get_styles = function () use ( $context ) {
[38] Fix | Delete
return Global_Classes_Repository::make()->context( $context )->all()->get_items()->map( function( $item ) {
[39] Fix | Delete
$item['id'] = $item['label'];
[40] Fix | Delete
return $item;
[41] Fix | Delete
})->all();
[42] Fix | Delete
};
[43] Fix | Delete
[44] Fix | Delete
$styles_manager->register(
[45] Fix | Delete
[ self::STYLES_KEY, $context ],
[46] Fix | Delete
$get_styles,
[47] Fix | Delete
);
[48] Fix | Delete
}
[49] Fix | Delete
[50] Fix | Delete
private function on_post_delete( $post_id ) {
[51] Fix | Delete
if ( ! Plugin::$instance->kits_manager->is_kit( $post_id ) ) {
[52] Fix | Delete
return;
[53] Fix | Delete
}
[54] Fix | Delete
[55] Fix | Delete
$this->invalidate_cache();
[56] Fix | Delete
}
[57] Fix | Delete
[58] Fix | Delete
private function invalidate_cache( ?string $context = null ) {
[59] Fix | Delete
if ( empty( $context ) || Global_Classes_Repository::CONTEXT_FRONTEND === $context ) {
[60] Fix | Delete
do_action( 'elementor/atomic-widgets/styles/clear', [ self::STYLES_KEY ] );
[61] Fix | Delete
[62] Fix | Delete
return;
[63] Fix | Delete
}
[64] Fix | Delete
[65] Fix | Delete
do_action( 'elementor/atomic-widgets/styles/clear', [ self::STYLES_KEY, $context ] );
[66] Fix | Delete
}
[67] Fix | Delete
[68] Fix | Delete
private function transform_classes_names( $ids ) {
[69] Fix | Delete
$context = is_preview() ? Global_Classes_Repository::CONTEXT_PREVIEW : Global_Classes_Repository::CONTEXT_FRONTEND;
[70] Fix | Delete
[71] Fix | Delete
$classes = Global_Classes_Repository::make()
[72] Fix | Delete
->context( $context )
[73] Fix | Delete
->all()
[74] Fix | Delete
->get_items();
[75] Fix | Delete
[76] Fix | Delete
return array_map(
[77] Fix | Delete
function( $id ) use ( $classes ) {
[78] Fix | Delete
$class = $classes->get( $id );
[79] Fix | Delete
[80] Fix | Delete
return $class ? $class['label'] : $id;
[81] Fix | Delete
},
[82] Fix | Delete
$ids
[83] Fix | Delete
);
[84] Fix | Delete
}
[85] Fix | Delete
}
[86] Fix | Delete
[87] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function