| 1 |
<?php |
| 2 |
|
| 3 |
namespace Templately\Builder\Types; |
| 4 |
|
| 5 |
use Templately\Core\Importer\FullSiteImport; |
| 6 |
|
| 7 |
class Header extends HeaderFooterBase { |
| 8 |
public static function get_type(): string { |
| 9 |
return 'header'; |
| 10 |
} |
| 11 |
|
| 12 |
public static function get_title(): string { |
| 13 |
return __( 'Header', 'templately' ); |
| 14 |
} |
| 15 |
|
| 16 |
public static function get_plural_title(): string { |
| 17 |
return __( 'Headers', 'templately' ); |
| 18 |
} |
| 19 |
|
| 20 |
public static function get_properties(): array { |
| 21 |
$properties = parent::get_properties(); |
| 22 |
|
| 23 |
$properties['location'] = 'header'; |
| 24 |
|
| 25 |
return $properties; |
| 26 |
} |
| 27 |
|
| 28 |
public function import( $elementor_data ) { |
| 29 |
if ( $this->is_elementor_template() ) { |
| 30 |
$request = FullSiteImport::get_instance()->get_session_data(); |
| 31 |
|
| 32 |
$elementor_data['content'] = \Elementor\Plugin::$instance->db->iterate_data($elementor_data['content'], function($element) use ($request){ |
| 33 |
// check if it's a image widget |
| 34 |
if( $element['elType'] == 'widget' && $element['widgetType'] == 'image' ) { |
| 35 |
// check if it has a image source |
| 36 |
if( isset($request['logo']['url']) ) { |
| 37 |
// set the image url |
| 38 |
$element['settings']['image']['id'] = $request['logo']['id']; |
| 39 |
$element['settings']['image']['url'] = $request['logo']['url']; |
| 40 |
} |
| 41 |
} |
| 42 |
|
| 43 |
return $element; |
| 44 |
}); |
| 45 |
|
| 46 |
|
| 47 |
} |
| 48 |
parent::import( $elementor_data ); |
| 49 |
} |
| 50 |
} |