🚀 Hostinger Optimized
🖥️ Server: LiteSpeed
💻 System: Linux s20058.bom1.stableserver.net 5.14.0-611.55.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 15:19:29 EDT 2026 x86_64
👤 User: skhata (1324)
🐘 PHP: 8.4.20
🚫 Disabled: ✨ NONE

💻 Terminal

📁 /home/skhata/chandrasons.com/public
$

📄 pricing_plan.php

📁 Path: /home/skhata/labaagrofarm.com.np/wp-content/plugins/gardencare-plugin/elementor/pricing_plan.php
📊 Size: 8.13 KB
🔒 Perm: 0644
📝 MIME: text/x-php
<?php

namespace GARDENCAREPLUGIN\Element;

use Elementor\Controls_Manager;
use Elementor\Controls_Stack;
use Elementor\Group_Control_Typography;
use Elementor\Scheme_Typography;
use Elementor\Scheme_Color;
use Elementor\Group_Control_Border;
use Elementor\Repeater;
use Elementor\Widget_Base;
use Elementor\Utils;
use Elementor\Group_Control_Text_Shadow;
use Elementor\Plugin;

/**
 * Elementor button widget.
 * Elementor widget that displays a button with the ability to control every
 * aspect of the button design.
 *
 * @since 1.0.0
 */
class Pricing_Plan extends Widget_Base {

	/**
	 * Get widget name.
	 * Retrieve button widget name.
	 *
	 * @since  1.0.0
	 * @access public
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'gardencare_pricing_plan';
	}

	/**
	 * Get widget title.
	 * Retrieve button widget title.
	 *
	 * @since  1.0.0
	 * @access public
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Pricing Plan', 'gardencare' );
	}

	/**
	 * Get widget icon.
	 * Retrieve button widget icon.
	 *
	 * @since  1.0.0
	 * @access public
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-library-open';
	}

	/**
	 * Get widget categories.
	 * Retrieve the list of categories the button widget belongs to.
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since  2.0.0
	 * @access public
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'gardencare' ];
	}
	
	/**
	 * Register button widget controls.
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since  1.0.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'pricing_plan',
			[
				'label' => esc_html__( 'Pricing Plan', 'gardencare' ),
			]
		);
		$this->add_control(
				'style_two',
				[
					'label'   => esc_html__( 'Choose Different BG Style', 'gardencare' ),
					'label_block' => true,
					'type'    => Controls_Manager::SELECT,
					'default' => 'one',
					'options' => array(
						'one' => esc_html__( 'Choose Bg Color Style V1', 'gardencare' ),
						'two' => esc_html__( 'Choose Bg Color Style V2 ', 'gardencare' ),
					),
				]
			);
		$this->add_control(
			'subtitle',
			[
				'label'       => __( 'Sub Title', 'gardencare' ),
				'label_block' => true,
				'type'        => Controls_Manager::TEXT,
				'dynamic'     => [
					'active' => true,
				],
				'placeholder' => __( 'Enter your Title', 'gardencare' ),
			]
		);
		$this->add_control(
			'title',
			[
				'label'       => __( 'Title', 'gardencare' ),
				'type'        => Controls_Manager::TEXTAREA,
				'dynamic'     => [
					'active' => true,
				],
				'placeholder' => __( 'Enter your Title', 'gardencare' ),
			]
		);
		$this->add_control(
			'text',
			[
				'label'       => __( 'Text', 'gardencare' ),
				'type'        => Controls_Manager::TEXTAREA,
				'dynamic'     => [
					'active' => true,
				],
				'placeholder' => __( 'Enter your Text', 'gardencare' ),
			]
		);
		$this->add_control(
              'pricing_table', 
			  	[
            		'type' => Controls_Manager::REPEATER,
            		'seperator' => 'before',
            		'default' => 
						[
                			['plan_title' => esc_html__('Standard Plan', 'gardencare')],
                			['plan_title' => esc_html__('Basic Plan', 'gardencare')],
                			['plan_title' => esc_html__('Sliver Plan', 'gardencare')],
                			['plan_title' => esc_html__('Gold Plan', 'gardencare')],
            			],
            		'fields' => 
						[
							[
                    			'name' => 'plan_title',
                    			'label' => esc_html__('Plan Title', 'gardencare'),
								'label_block' => true,
                    			'type' => Controls_Manager::TEXT,
								'default' => esc_html__('', 'gardencare')
                			],
							[
                    			'name' => 'our_prices',
                    			'label' => esc_html__('Our Prices', 'gardencare'),
								'label_block' => true,
                    			'type' => Controls_Manager::TEXT,
								'default' => esc_html__('', 'gardencare')
                			],
							[
                    			'name' => 'features_list',
                    			'label' => esc_html__('Feature List', 'gardencare'),
                    			'type' => Controls_Manager::TEXTAREA,
								'default' => esc_html__('', 'gardencare')
                			],
							[
                    			'name' => 'btn_title',
                    			'label' => esc_html__('Button Title', 'gardencare'),
								'label_block' => true,
                    			'type' => Controls_Manager::TEXT,
                    			'default' => esc_html__('Order Now', 'gardencare')
                			],
							[
                    			'name' => 'btn_link',
								'label' => __( 'Button Url', 'gardencare' ),
							    'type' => Controls_Manager::URL,
							    'placeholder' => __( 'https://your-link.com', 'plugin-domain' ),
							    'show_external' => true,
							    'default' => ['url' => '','is_external' => true,'nofollow' => true,],
                			],
            			],
            	    'title_field' => '{{plan_title}}',
                 ]
        );
		$this->end_controls_section();
	}

	/**
	 * Render button widget output on the frontend.
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since  1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$allowed_tags = wp_kses_allowed_html('post');
		?>
        
        
        
         <!--Start awesome service pricing area-->
    <section id="awesome-service-pricing-area" class="<?php if($settings['style_two'] == 'two') echo ''; else echo 'pricing-table-v2'; ?>">
    	<div class="auto-container">
        	<div class="row">
            	<div class="col-lg-12">
                	<?php if($settings['subtitle'] || $settings['title']  || $settings['text']) { ?>
                    <div class="section-title2">
                       <?php if($settings['subtitle']) { ?> <p><?php echo wp_kses($settings['subtitle'], true);?></p><?php } ?>
                        <?php if($settings['title']) { ?><h1><span><?php echo wp_kses($settings['title'], true);?></span></h1><?php } ?>
                        <?php if($settings['text']) { ?><p class="title-text"><?php echo wp_kses($settings['text'], true);?></p><?php } ?>
					</div>
                    <?php } ?>
                </div>
            </div>
            <div class="row">
            	<?php foreach($settings['pricing_table'] as $key => $item):?>
                <!--Start Single price content box-->
            	<div class="col-lg-3 col-md-3 col-sm-6 col-xs-12 price-table">
                	<div class="price-content">
						<div class="price-table-top">
							<h3><?php echo wp_kses($item['plan_title'], true);?></h3>
                            <div class="paln-toltip"></div>
						</div>
                        <div class="price-box-price-info">
                            <div class="price-box">
                                <?php echo wp_kses($item['our_prices'], true);?>
                            </div>
                            <?php $features_list = $item['features_list'];
							    if(!empty($features_list)){
								$features_list = explode("\n", ($features_list)); 
							?>
                                 <ul class="price-info">
                                    <?php foreach($features_list as $features): ?>
                                    <li><?php echo wp_kses($features, true); ?></li>
                                    <?php endforeach; ?>
                                </ul>
                            <?php } ?>
                            <?php if($item['btn_link']['url']){ ?>
                            <a href="<?php echo esc_url($item['btn_link']['url']);?>"><?php echo wp_kses($item['btn_title'], true);?></a>
                         	<?php } ?>
                         </div>
					</div>
                </div>
                <!--End Single price content box-->
               <?php endforeach;?>
            </div>
        </div>
    </section>
    <!--End awesome service pricing area-->
       
                
		<?php 
	}

}
← Back📥 Raw✏️ Edit🔒 Chmod
✨ File Manager Magic ✨