* @param \Elementor\Element_Base $element
* @return void
*/
public function add_dce_background_data_attributes(\Elementor\Element_Base $element)
{
// Background Color
$background_color = $element->get_settings_for_display('background_color');
if (!empty($background_color)) {
$element->add_render_attribute('_wrapper', 'data-dce-background-color', $background_color, \true);
}
$background_hover_color = $element->get_settings_for_display('background_hover_color');
if (!empty($background_hover_color)) {
$element->add_render_attribute('_wrapper', 'data-dce-background-hover-color', $background_hover_color, \true);
}
$background_overlay_color = $element->get_settings_for_display('background_overlay_color');
if (!empty($background_overlay_color)) {
$element->add_render_attribute('_wrapper', 'data-dce-background-overlay-color', $background_overlay_color, \true);
}
$background_overlay_hover_color = $element->get_settings_for_display('background_overlay_hover_color');
if (!empty($background_overlay_hover_color)) {
$element->add_render_attribute('_wrapper', 'data-dce-background-overlay-hover-color', $background_overlay_hover_color, \true);
}
// Background Image URL
$background_image = $element->get_settings_for_display('background_image');
if (!empty($background_image['url'])) {
$element->add_render_attribute('_wrapper', 'data-dce-background-image-url', $background_image['url'], \true);
}
$background_hover_image = $element->get_settings_for_display('background_hover_image');
if (!empty($background_hover_image['url'])) {
$element->add_render_attribute('_wrapper', 'data-dce-background-hover-image-url', $background_hover_image['url'], \true);
}
$background_overlay_image = $element->get_settings_for_display('background_overlay_image');
if (!empty($background_overlay_image['url'])) {
$element->add_render_attribute('_wrapper', 'data-dce-background-overlay-image-url', $background_overlay_image['url'], \true);
}
$background_overlay_hover_image = $element->get_settings_for_display('background_overlay_hover_image');
if (!empty($background_overlay_hover_image['url'])) {
$element->add_render_attribute('_wrapper', 'data-dce-background-overlay-hover-image-url', $background_overlay_hover_image['url'], \true);
}
// Background Color on Advanced
$advanced_background_color = $element->get_settings_for_display('_background_color');
if (!empty($advanced_background_color)) {
$element->add_render_attribute('_wrapper', 'data-dce-advanced-background-color', $advanced_background_color, \true);
}
$advanced_background_hover_color = $element->get_settings_for_display('_background_hover_color');
if (!empty($advanced_background_hover_color)) {
$element->add_render_attribute('_wrapper', 'data-dce-advanced-background-hover-color', $advanced_background_hover_color, \true);
}
// Background Image on Advanced
$advanced_background_image = $element->get_settings_for_display('_background_image');
if (!empty($advanced_background_image['url'])) {
$element->add_render_attribute('_wrapper', 'data-dce-advanced-background-image-url', $advanced_background_image['url'], \true);
}
$advanced_background_hover_image = $element->get_settings_for_display('background_hover_image');
if (!empty($advanced_background_hover_image['url'])) {
$element->add_render_attribute('_wrapper', 'data-dce-advanced-background-hover-image-url', $advanced_background_hover_image['url'], \true);
}
}
/**
* CSS Class Fix
*
* @param string $content
* @param int $template_id
* @return string
*/
public static function css_class_fix(string $content = '', int $template_id = 0)
{
if (empty($content)) {
return $content;
}
$template_html_id = Helper::get_template_id_by_html($content);
if ($template_id && $template_id !== $template_html_id) {
$content = \str_replace('class="elementor elementor-' . $template_html_id . ' ', 'class="elementor elementor-' . $template_id . ' ', $content);
} else {
$template_id = $template_html_id;
}
if ($template_id) {
$queried_object = get_queried_object();
$queried_object_id = get_queried_object_id();
$queried_object_type = Helper::get_queried_object_type();
if ('post' === $queried_object_type) {
$queried_object_id = get_the_ID();
}
if (Helper::is_acfpro_active()) {
$row = acf_get_loop('active');
if ($row) {
$queried_object_type = 'row';
$queried_object_id = get_row_index();
}
}
$content = \str_replace('class="elementor elementor-' . $template_id . ' ', 'class="elementor elementor-' . $template_id . ' dce-elementor-' . $queried_object_type . '-' . $queried_object_id . ' ', $content);
$content = \str_replace('class="elementor elementor-' . $template_id . '"', 'class="elementor elementor-' . $template_id . ' dce-elementor-' . $queried_object_type . '-' . $queried_object_id . '"', $content);
$pieces = \explode('data-elementor-id="', $content, 2);
foreach ($pieces as $pkey => $apiece) {
if ($pkey) {
list($eid, $more) = \explode('"', $apiece, 2);
$new_content .= 'data-elementor-id="' . $eid . '" data-' . $queried_object_type . '-id="' . $queried_object_id . '" data-obj-id="' . $queried_object_id . '"' . $more;
} else {
$new_content = $apiece;
}
}
$content = $new_content;
$content = \str_replace('data-' . $queried_object_type . '-id="' . $queried_object_id . '" data-' . $queried_object_type . '-id="' . $queried_object_id . '"', 'data-' . $queried_object_type . '-id="' . $queried_object_id . '"', $content);
$content = \str_replace('data-' . $queried_object_type . '-id="' . $queried_object_id . '" data-' . $queried_object_type . '-id="', 'data-' . $queried_object_type . '-id="', $content);
$content = \str_replace('data-' . $queried_object_type . '-id="' . $queried_object_id . '" data-obj-id="' . $queried_object_id . '" data-' . $queried_object_type . '-id="' . $queried_object_id . '" data-obj-id="' . $queried_object_id . '"', 'data-' . $queried_object_type . '-id="' . $queried_object_id . '" data-obj-id="' . $queried_object_id . '"', $content);
}
return $content;
}
/**
* Fix Style
*
* Change Selector to fix background images in a loop
*
* @param \Elementor\Element_Base $element
* @return void
*/
public function fix_style(\Elementor\Element_Base $element)
{
$settings = $element->get_settings_for_display();
if (empty($settings['__dynamic__'])) {
return;
}
$css = '';
$element_id = $element->get_id();
$element_controls = $element->get_controls();
$queried_object_type = Helper::get_queried_object_type();
$queried_object_id = get_queried_object_id();
if (Helper::is_acfpro_active()) {
$row = acf_get_loop('active');
if ($row) {
$queried_object_type = 'row';
$queried_object_id = get_row_index();
}
}
foreach ($settings['__dynamic__'] as $key => $dsetting) {
$tmp = \explode('_', $key);
$device_detected = \array_pop($tmp);
if (\in_array($device_detected, ['tablet', 'mobile'], \true)) {
$devices = [$device_detected => $key];
} else {
$devices = ['desktop' => $key];
}
foreach ($devices as $device => $setting_key) {
$selector = '.dce-fix-background-loop .dce-elementor-' . $queried_object_type . '-' . $queried_object_id;
if ('desktop' !== $device) {
$selector = '[data-elementor-device-mode="' . $device . '"] ' . $selector;
}
if (isset($element_controls[$setting_key])) {
if (!empty($element_controls[$key]['selectors'])) {
foreach ($element_controls[$key]['selectors'] as $skey => $svalue) {
$rule_value = \false;
$rule_selector = \str_replace('{{WRAPPER}}', $selector . ' .elementor-element.elementor-element-' . $element_id, $skey);
if (!empty($settings[$setting_key])) {
if (\is_array($settings[$setting_key])) {
if (!empty($settings[$setting_key]['url'])) {
$rule_value = \str_replace('{{URL}}', $settings[$setting_key]['url'], $svalue);
}
} else {
$rule_value = \str_replace('{{VALUE}}', $settings[$setting_key], $svalue);
}
}
if ($rule_value) {
$css .= $rule_selector . '{' . $rule_value . '}';
}
}
}
}
}
}
if ($css) {
$css = '';
if (!wp_doing_ajax()) {
$css = \DynamicContentForElementor\Assets::dce_enqueue_style('template-fix-' . $element->get_id() . '-inline', $css);
}
echo $css;
}
}
/**
* Retrieve all Custom Post Types
*
* @return array
*/
public static function get_registered_types()
{
$types_registered = get_post_types(['public' => \true], 'names', 'and');
$types_excluded = self::$supported_types;
return \array_diff($types_registered, $types_excluded);
}
}
Fatal error: Uncaught Error: Class 'DynamicContentForElementor\TemplateSystem' not found in /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/core/plugin.php:166
Stack trace:
#0 /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/core/plugin.php(128): DynamicContentForElementor\Plugin->init_managers()
#1 /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/core/plugin.php(95): DynamicContentForElementor\Plugin->init()
#2 /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/core/plugin.php(122): DynamicContentForElementor\Plugin->__construct()
#3 /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/core/plugin.php(259): DynamicContentForElementor\Plugin::instance()
#4 /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/dynamic-content-for-elementor.php(200): require_once('/home/sportuga/...')
#5 /home/sportuga/public_html/wp-includes/class-wp-hook.php(324): dce_load('')
#6 /home/spo in /home/sportuga/public_html/wp-content/plugins/dynamic-content-for-elementor/core/plugin.php on line 166