Criar um Widget Personalizado no Elementor

Este snippet de código define e registra um widget personalizado para o Elementor, chamado “WP24Horas Custom Widget”. Esse widget personalizado permite adicionar um título que pode ser configurado no editor do Elementor.

 

0
				
					class WP24Horas_Custom_Widget extends ElementorWidget_Base {

    public function get_name() {
        return 'wp24horas_custom_widget';
    }

    public function get_title() {
        return __('WP24Horas Custom Widget', 'wp24horas');
    }

    public function get_icon() {
        return 'fa fa-code';
    }

    public function get_categories() {
        return ['wp24horas-widgets'];
    }

    protected function _register_controls() {
        $this->start_controls_section(
            'content_section',
            [
                'label' => __('Content', 'wp24horas'),
                'tab' => ElementorControls_Manager::TAB_CONTENT,
            ]
        );

        $this->add_control(
            'title',
            [
                'label' => __('Title', 'wp24horas'),
                'type' => ElementorControls_Manager::TEXT,
                'default' => __('Default Title', 'wp24horas'),
            ]
        );

        $this->end_controls_section();
    }

    protected function render() {
        $settings = $this->get_settings_for_display();
        echo '<h2>' . $settings['title'] . '</h2>';
    }
}

ElementorPlugin::instance()->widgets_manager->register_widget_type(new WP24Horas_Custom_Widget());

				
			

Quer ajuda de um especialista para implementar?

Instruções de Uso

Como funciona:

  1. Definição da Classe:
    • class WP24Horas_Custom_Widget extends ElementorWidget_Base { ... }: Define uma nova classe que estende a classe base de widgets do Elementor (ElementorWidget_Base). Esta classe contém todos os métodos necessários para criar e registrar o widget personalizado.
  2. Nome do Widget:
    • public function get_name() { return 'wp24horas_custom_widget'; }: Define o nome único do widget.
  3. Título do Widget:
    • public function get_title() { return __('WP24Horas Custom Widget', 'wp24horas'); }: Define o título do widget que será exibido na interface do Elementor.
  4. Ícone do Widget:
    • public function get_icon() { return 'fa fa-code'; }: Define o ícone do widget usando uma classe da Font Awesome.
  5. Categoria do Widget:
    • public function get_categories() { return ['wp24horas-widgets']; }: Define a categoria do widget. Este widget será exibido na categoria ‘wp24horas-widgets’ no Elementor.
  6. Registro de Controles:
    • protected function _register_controls() { ... }: Define os controles (configurações) do widget que aparecerão no painel do Elementor.
      • $this->start_controls_section(...): Inicia uma nova seção de controles.
      • $this->add_control(...): Adiciona um controle de texto para definir o título do widget.
      • $this->end_controls_section(): Finaliza a seção de controles.
  7. Renderização do Widget:
    • protected function render() { ... }: Define como o widget será renderizado no front-end.
      • $settings = $this->get_settings_for_display();: Obtém as configurações do widget.
      • echo '<h2>' . $settings['title'] . '</h2>';: Exibe o título definido no editor do Elementor.
  8. Registro do Widget:
    • ElementorPlugin::instance()->widgets_manager->register_widget_type(new WP24Horas_Custom_Widget());: Registra o widget personalizado no Elementor, tornando-o disponível no editor.

Instruções de Uso

Esse código pode ser usado adicionando-o ao arquivo functions.php do seu tema ou, preferencialmente, em um plugin específico para o site. Utilizar um plugin para essas customizações mantém o código organizado e seguro contra atualizações do tema.

Conclusão

Este snippet permite criar e registrar um widget personalizado no Elementor, adicionando flexibilidade e personalização ao seu site WordPress. O widget inclui um controle para definir um título, que é renderizado como um elemento <h2> no front-end.

Outros Snippets

WooCommerce
Este snippet cria um shortcode que exibe os detalhes de uma reserva do WooCommerce com base no ID do pedido fornecido na URL.
WordPress
Este snippet redireciona todos os visitantes do site que não estejam logados para uma página específica (não a página de login).
WordPress
Este snippet redireciona todos os visitantes do site que não estejam logados para a página de login do WordPress. Isso é útil se você deseja restringir o acesso ao conteúdo do seu site apenas para usuários autenticados.

Últimos Posts

Como Internacionalizar seu Plugin WordPress (i18n e l10n) do Jeito Certo

Internacionalização e Localização (i18n e l10n)

Aprenda como preparar seu plugin para tradução com WordPress, incluindo uso de text domains, funções de i18n e criação de arquivos .pot, .po e .mo

Segurança Profunda em Plugins WordPress

Segurança Profunda em Plugins WordPress

Descubra como aplicar segurança real nos seus plugins WordPress e proteger dados, ações e reputação.

Como Tratar Erros e Exceptions em Plugins WordPress do Jeito Certo

Tratamento de Erros e Uso Inteligente de Exceptions em Plugins WordPress

Aprenda a criar exceções personalizadas, capturar erros com contexto e registrar falhas com elegância em seus plugins WordPress

Como Implementar um Sistema de Logs Profissional em Plugins WordPress

Como Gerenciar Logs e Erros Internos em Plugins WordPress (Do Jeito Certo)

Aprenda a criar um sistema de gerenciamento de erros e logs para plugins WordPress, elevando a qualidade e profissionalismo dos seus projetos

Como Criar um Bloco WordPress com Filtro por Múltiplas Categorias

Bloco de Posts com Filtro por Múltiplas Categorias

Aprenda a criar um bloco Gutenberg com filtro por múltiplas categorias no WordPress. Ideal para projetos profissionais e sites dinâmicos!

Como Filtrar Posts por Categoria em um Bloco Gutenberg

Filtrando Posts por Categoria no Editor do Bloco

Aprenda a criar um bloco personalizado em WordPress que exibe os últimos posts com filtro por categoria. Ideal para projetos dinâmicos com Gutenberg

Comentários

Você precisa estar logado para ver esta informação.

Adicione seu Snippet

Título *
Resumo *
Descrição Completa *
Código *
Instruções de uso *

Solicitar Orçamento

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! 

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!