Wordpress

Criando a página ou post programaticamente após a ativação do plug-in

O desenvolvedor do plug-in precisa criar uma página assim que o plug-in for ativado. O gancho de ação ajuda o desenvolvedor do plugin a fazer isso. Aqui está o código de exemplo:

define( 'PLUGIN_FILE_PATH', __FILE__ );
 
register_activation_hook( PLUGIN_FILE_PATH, 'insert_page_on_activation' );
 
function insert_page_on_activation() {
  if ( ! current_user_can( 'activate_plugins' ) ) return;
 
    $page_slug = 'test-page-title'; // Slug of the Post
    $new_page = array(
        'post_type'     => 'page',               // Post Type Slug eg: 'page', 'post'
        'post_title'    => 'Test Page Title',    // Title of the Content
        'post_content'  => 'Test Page Content',  // Content
        'post_status'   => 'publish',            // Post Status
        'post_author'   => 1,                    // Post Author ID
        'post_name'     => $page_slug            // Slug of the Post
    );
    if (!get_page_by_path( $page_slug, OBJECT, 'page')) { // Check If Page Not Exits
        $new_page_id = wp_insert_post($new_page);
    }
}

Você pode inserir este código no arquivo PHP principal do seu plugin.

Post Recentes

Bloquear .env e .git no nginx: as regras que ainda deixam o arquivo vazar

Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…

12 horas atrás

Canonical errado no Yoast: corrigindo pelo filtro wpseo_canonical

O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…

16 horas atrás

Layout XML do Magento 2: remover bloco de módulo de terceiro

Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…

1 dia atrás

Restaurar dump do Magento 2 em outro servidor: trocar a base_url no SQL

Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…

2 dias atrás

Criar exceção customizada em PHP: quando estender Exception compensa

Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…

3 dias atrás

DataProvider Magento 2: form do admin abre com campos vazios ao editar

O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…

4 dias atrás