Enviar plugin com um tema personalizado

3

Eu preciso adicionar um plug-in a um tema e ativá-lo automaticamente quando o tema for ativado. Também gostaria de alterar suas configurações, se possível. Este é o plugin que estou tentando incluir: enlace

Eu tentei adicionar o plugin dentro da pasta do plugin do tema, mas ele não aparece na página de plugins do WP. O que estou fazendo errado?

    
por user3312508 23.02.2015 / 23:05

2 respostas

8

O usuário decide

Para responder primeiro à sua última pergunta:

  

Eu tentei adicionar o plugin dentro da pasta do plugin do tema [...] O que estou fazendo errado?

Você está tentando agrupar a funcionalidade em um tema. Essa é a coisa errada em primeiro lugar. Temas oferecem apresentação - Plugins oferece funcionalidade.

Além disso, a funcionalidade deve ser a escolha do usuário. E o seu tema deve funcionar com e sem o plugin. Você também salva o usuário de perder suas configurações quando ele alterna o tema. Apenas observe que o seu tema "suporta o plug-in de subtítulos" . A instalação e ativação são de responsabilidade do usuário.

Como?

Para conseguir isso, você pode apenas quebrar a funcionalidade do plugin em um filtro ou hook e verificar se o plugin está ativo usando is_plugin_active() :

// functions.php
add_action( 'subheading', 'subheading_callback' );
function subheading_callback()
{
    if ( ! is_plugin_active( 'plugin-folder-name/plugin-file.php' ) )
    {
        remove_action( current_action(), __FUNCTION__ );
        return;
    }

    // Call subheading-plugin function to output subheading here
    // From the subheading plugin:
    // $before = '', $after = '', $display = true, $id = false
    the_subheading( '<h3>', '</h3>', true, get_the_ID() );
}

Em seguida, no seu arquivo de modelo, basta adicionar o gancho para gerar o subtítulo.

// for e.g. single.php - in the loop
do_action( 'subheading' );

Além disso, há o script "Ativação de plug-in do TGM" que você pode usar em seu tema. Ele permite que você diga ao usuário após a ativação que ele precisa dos plugins X, Y e Z que você pode configurar com as configurações padrão (IIRC).

    
por kaiser 23.02.2015 / 23:29
2

Não há um método para agrupar um plug-in com uma instalação de tema. Sua melhor aposta seria verificar se um plugin está instalado usando is_plugin_active em seu functions.php. Caso contrário, exiba um aviso na área de administração para que eles façam o download / instalem-no.

    
por Joey Yax 23.02.2015 / 23:23