102 lines
2.4 KiB
PHP
102 lines
2.4 KiB
PHP
<?php
|
|
|
|
namespace Elementor\Modules\Checklist\Steps;
|
|
|
|
use Elementor\Core\Utils\Promotions\Filtered_Promotions_Manager;
|
|
use Elementor\Utils;
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit; // Exit if accessed directly.
|
|
}
|
|
|
|
class Setup_Header extends Step_Base {
|
|
const STEP_ID = 'setup_header';
|
|
|
|
public function __construct( $module, $wordpress_adapter = null, $elementor_adapter = null, $should_promote = true ) {
|
|
$promotion_data = $should_promote
|
|
? $this->render_promotion()
|
|
: null;
|
|
|
|
parent::__construct( $module, $wordpress_adapter, $elementor_adapter, $promotion_data );
|
|
}
|
|
|
|
public function get_id() : string {
|
|
return self::STEP_ID;
|
|
}
|
|
|
|
public function is_visible() : bool {
|
|
if ( Utils::has_pro() ) {
|
|
return false;
|
|
}
|
|
|
|
return parent::is_visible();
|
|
}
|
|
|
|
public function is_absolute_completed() : bool {
|
|
$args = [
|
|
'post_type' => 'elementor_library',
|
|
'meta_query' => [
|
|
'relation' => 'AND',
|
|
[
|
|
'key' => '_elementor_template_type',
|
|
'value' => 'header',
|
|
'compare' => '=',
|
|
],
|
|
[
|
|
'key' => '_elementor_conditions',
|
|
],
|
|
],
|
|
'posts_per_page' => 1,
|
|
'fields' => 'ids',
|
|
'no_found_rows' => true,
|
|
'update_post_term_cache' => false,
|
|
'update_post_meta_cache' => false,
|
|
];
|
|
$query = $this->wordpress_adapter->get_query( $args );
|
|
$header_templates = $query->posts ?? [];
|
|
|
|
return count( $header_templates ) >= 1;
|
|
}
|
|
|
|
public function get_title() : string {
|
|
return esc_html__( 'Set up a header', 'elementor' );
|
|
}
|
|
|
|
public function get_description() : string {
|
|
return esc_html__( 'This element applies across different pages, so visitors can easily navigate around your site.', 'elementor' );
|
|
}
|
|
|
|
public function get_cta_text() : string {
|
|
return esc_html__( 'Add a header', 'elementor' );
|
|
}
|
|
|
|
public function get_cta_url() : string {
|
|
return '';
|
|
}
|
|
|
|
public function get_image_src() : string {
|
|
return 'https://assets.elementor.com/checklist/v1/images/checklist-step-4.jpg';
|
|
}
|
|
|
|
public function get_is_completion_immutable() : bool {
|
|
return false;
|
|
}
|
|
|
|
public function get_learn_more_url() : string {
|
|
return 'https://go.elementor.com/app-website-checklist-header-article';
|
|
}
|
|
|
|
private function render_promotion() {
|
|
return Filtered_Promotions_Manager::get_filtered_promotion_data(
|
|
[
|
|
'url' => 'https://go.elementor.com/go-pro-website-checklist-header',
|
|
'text' => esc_html__( 'Upgrade Now', 'elementor' ),
|
|
'icon' => 'default',
|
|
],
|
|
'elementor/checklist/promotion',
|
|
'upgrade_url'
|
|
);
|
|
|
|
}
|
|
|
|
}
|