如何在 Elementor 自定义模块中渲染一个现有的模板-综合讨论论坛-讨论专区-光子波动网 | 专业WordPress修复服务,全球范围,快速响应

如何在 Elementor 自定义模块中渲染一个现有的模板

我正在创建一个带有中继器的 Elementor 自定义模块,我希望能够为每个中继器项选择一个现有的模板并将其渲染。如何在 Elementor 控件中实现模板选择,并在前端根据选择渲染相应的模板?

<?php

namespace elementorWidget;
use Elementor\Controls_Manager;
use Elementor\Widget_Base;

class CustomStore extends Widget_Base
{
    public function get_name()
    {
        return 'custom_store';
    }

    public function get_title()
    {
        return __('Custom Store', 'custom-store');
    }

    public function get_categories()
    {
        return ['general'];
    }

    /**
     * Register widget controls.
     */
    protected function _register_controls()
    {
        $this->start_controls_section(
            'section_content',
            [
                'label' => esc_html__('Content', 'textdomain'),
                'tab' => \Elementor\Controls_Manager::TAB_CONTENT,
            ]
        );

        $this->add_control(
            'store_settings',
            [
                'label' => esc_html__('Store Settings', 'textdomain'),
                'type' => \Elementor\Controls_Manager::REPEATER,
                'fields' => [
                    [
                        'name' => 'title_section',
                        'label' => __('Title for Section', 'custom-store'),
                        'type' => \Elementor\Controls_Manager::TEXT,
                        'placeholder' => __('Enter Title', 'custom-store'),
                        'default' => __('Default Title', 'custom-store'),
                    ],
                ],
            ]
        );

        $this->end_controls_section();
    }

    protected function render()
    {
        $settings = $this->get_settings();
        $args = [];

        show_template('template', $args, str_replace(get_stylesheet_directory() . DIRECTORY_SEPARATOR, '', __DIR__));
    }
}

 

20241213165239265-image

 


联系我们
文章看不懂?联系我们为您免费解答!免费助力个人,小企站点!
电话:020-2206-9892
QQ咨询:1025174874
邮件:info@361sale.com
工作时间:周一至周五,9:30-18:30,节假日休息
评论 共1条

请登录后发表评论

客服

客服

在线时间
9:00 - 18:00

联系客服

扫一扫联系客服
电话联系 020-2206-9892
QQ联系 1025174874
客服邮箱 info@361sale.com