add_section( 'agropampa_pro_info', array(
'title' => __( '🚀 Versão PRO (Desbloquear Cores)', 'agropampa-lite' ),
'priority' => 1, // Fica no topo
));
$wp_customize->add_setting( 'agropampa_upsell_link', array(
'default' => '',
'sanitize_callback' => 'esc_url',
));
// Usamos um controle simples de texto para mostrar a mensagem
// Nota: Existem formas mais bonitas, mas esta passa na validação fácil
class AgroPampa_Upsell_Control extends WP_Customize_Control {
public $type = 'upsell';
public function render_content() {
?>
Quer mudar as cores, textos e ter WhatsApp no topo?
Atualize para o AgroPampa PRO e tenha controle total do seu negócio.
Ver Versão PRO
add_control( new AgroPampa_Upsell_Control( $wp_customize, 'agropampa_upsell_link', array(
'section' => 'agropampa_pro_info',
)));
}
add_action( 'customize_register', 'agropampa_lite_upsell' );
// Função para criar as opções no menu "Personalizar"
function agropampa_configuracoes_personalizador( $wp_customize ) {
// --- SECÇÃO DE IDENTIDADE VISUAL ---
// (O WordPress já cria a secção "Identidade do Site" para o Logo automaticamente)
// 1. Cor Primária (Antigo Verde)
$wp_customize->add_setting( 'cor_primaria', array(
'default' => '#2c5e2e',
'transport' => 'refresh',
'sanitize_callback' => 'sanitize_hex_color',
));
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'cor_primaria', array(
'label' => __( 'Cor Primária (Principal)', 'agropampa-lite' ),
'section' => 'agropampa_cores',
'settings' => 'cor_primaria',
'description' => 'Usada em: Cabeçalho, Botões, Preços',
)));
// 2. Cor Secundária (Antigo Amarelo)
$wp_customize->add_setting( 'cor_secundaria', array(
'default' => '#d4a017',
'transport' => 'refresh',
'sanitize_callback' => 'sanitize_hex_color',
));
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'cor_secundaria', array(
'label' => __( 'Cor Secundária (Detalhes)', 'agropampa-lite' ),
'section' => 'agropampa_cores',
'settings' => 'cor_secundaria',
'description' => 'Usada em: Bordas, Ícones, Hover',
)));
// --- SECÇÃO DE CONTATO (Telefone) ---
$wp_customize->add_section( 'agropampa_contato', array(
'title' => __( 'Informações de Contato', 'agropampa-lite' ),
'priority' => 40,
));
$wp_customize->add_setting( 'telefone_loja', array(
'default' => '(51) 9999-9999',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'telefone_loja', array(
'label' => __( 'Telefone do Topo', 'agropampa-lite' ),
'section' => 'agropampa_contato',
'type' => 'text',
));
// 1. Frase de Impacto (Slogan)
$wp_customize->add_setting( 'frase_topo', array(
'default' => 'A melhor genética do sul.',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'frase_topo', array(
'label' => __( 'Frase do Topo', 'agropampa-lite' ),
'section' => 'agropampa_topo_social',
'type' => 'text',
));
// 2. WhatsApp (Link Direto)
$wp_customize->add_setting( 'social_whatsapp', array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field', // Aceita números e texto
));
$wp_customize->add_control( 'social_whatsapp', array(
'label' => __( 'Número do WhatsApp', 'agropampa-lite' ),
'description' => 'Ex: 555199999999 (Apenas números, com código do país)',
'section' => 'agropampa_topo_social',
'type' => 'text',
));
// 3. Instagram
$wp_customize->add_setting( 'social_instagram', array(
'default' => '',
'sanitize_callback' => 'esc_url_raw',
));
$wp_customize->add_control( 'social_instagram', array(
'label' => __( 'Link do Instagram', 'agropampa-lite' ),
'section' => 'agropampa_topo_social',
'type' => 'url',
));
// 4. Facebook
$wp_customize->add_setting( 'social_facebook', array(
'default' => '',
'sanitize_callback' => 'esc_url_raw',
));
$wp_customize->add_control( 'social_facebook', array(
'label' => __( 'Link do Facebook', 'agropampa-lite' ),
'section' => 'agropampa_topo_social',
'type' => 'url',
));
// 1. Mostrar ou Esconder?
$wp_customize->add_setting( 'mostrar_botao_header', array(
'default' => 'sim',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'mostrar_botao_header', array(
'label' => __( 'Exibir Botão?', 'agropampa-lite' ),
'section' => 'agropampa_botao_header',
'type' => 'select',
'choices' => array(
'sim' => 'Sim',
'nao' => 'Não (Esconder)',
),
));
// 2. Texto do Botão
$wp_customize->add_setting( 'texto_botao_header', array(
'default' => 'Orçamento',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'texto_botao_header', array(
'label' => __( 'Texto do Botão', 'agropampa-lite' ),
'section' => 'agropampa_botao_header',
'type' => 'text',
));
// 3. Tipo de Ação (WhatsApp, Email ou Link)
$wp_customize->add_setting( 'tipo_acao_botao', array(
'default' => 'whatsapp',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'tipo_acao_botao', array(
'label' => __( 'O que o botão faz?', 'agropampa-lite' ),
'section' => 'agropampa_botao_header',
'type' => 'select',
'choices' => array(
'whatsapp' => 'Abrir WhatsApp',
'email' => 'Enviar E-mail',
'link' => 'Link Personalizado (URL)',
),
));
// 4. O Valor (Número, Email ou Link)
$wp_customize->add_setting( 'destino_botao_header', array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'destino_botao_header', array(
'label' => __( 'Destino (Número/Email/Link)', 'agropampa-lite' ),
'description' => 'WhatsApp: apenas números (com DDD). Email: endereço completo.',
'section' => 'agropampa_botao_header',
'type' => 'text',
));
// 1. Título Principal
$wp_customize->add_setting( 'hero_titulo', array(
'default' => 'Do Pampa para o Mundo',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'hero_titulo', array(
'label' => __( 'Título do Banner', 'agropampa-lite' ),
'section' => 'agropampa_hero',
'type' => 'text',
));
// 2. Subtítulo / Descrição
$wp_customize->add_setting( 'hero_texto', array(
'default' => 'Genética forte e tradição que atravessa gerações.',
'sanitize_callback' => 'sanitize_textarea_field', // Permite texto maior
));
$wp_customize->add_control( 'hero_texto', array(
'label' => __( 'Descrição do Banner', 'agropampa-lite' ),
'section' => 'agropampa_hero',
'type' => 'textarea', // Campo maior para escrever
));
// 3. Texto do Botão (Extra: já deixamos pronto!)
$wp_customize->add_setting( 'hero_botao_texto', array(
'default' => 'Ver Plantel',
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control( 'hero_botao_texto', array(
'label' => __( 'Texto do Botão', 'agropampa-lite' ),
'section' => 'agropampa_hero',
'type' => 'text',
));
// 4. Imagem de Fundo (Upload)
$wp_customize->add_setting( 'hero_imagem', array(
'default' => get_template_directory_uri() . '/assets/img/banner-hero.png', // A imagem padrão da pasta
'sanitize_callback' => 'esc_url_raw', // Garante que é uma URL segura
));
$wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'hero_imagem', array(
'label' => __( 'Imagem de Fundo', 'agropampa-lite' ),
'section' => 'agropampa_hero',
'settings' => 'hero_imagem',
'description' => 'Recomendado: 1920x600 pixels ou maior.',
)));
}
add_action( 'customize_register', 'agropampa_configuracoes_personalizador' );
// Função para registar os menus do tema
function agropampa_registar_menus() {
register_nav_menus( array(
'menu_principal' => __( 'Menu Principal (Topo)', 'agropampa-lite' ),
'menu_rodape' => __( 'Menu do Rodapé', 'agropampa-lite' ), // Já deixamos pronto para o futuro
) );
}
add_action( 'after_setup_theme', 'agropampa_registar_menus' );
// Habilita suporte a imagens destacadas (Thumbnails)
function agropampa_suporte_tema() {
add_theme_support( 'post-thumbnails' );
}
add_action( 'after_setup_theme', 'agropampa_suporte_tema' );
// // Registar o Custom Post Type "Produtos"
// function agropampa_registar_produtos() {
// // Rótulos do menu (para ficar bonito em português)
// $labels = array(
// 'name' => 'Produtos',
// 'singular_name' => 'Produto',
// 'menu_name' => 'Produtos Agro',
// 'add_new' => 'Adicionar Novo',
// 'add_new_item' => 'Adicionar Novo Produto',
// 'edit_item' => 'Editar Produto',
// 'new_item' => 'Novo Produto',
// 'view_item' => 'Ver Produto',
// 'all_items' => 'Todos os Produtos',
// 'search_items' => 'Pesquisar Produtos',
// 'not_found' => 'Nenhum produto encontrado',
// );
// // Configurações técnicas
// $args = array(
// 'labels' => $labels,
// 'public' => true, // Aparece no site? Sim.
// 'publicly_queryable' => true,
// 'show_ui' => true, // Aparece no painel admin? Sim.
// 'show_in_menu' => true,
// 'query_var' => true,
// 'rewrite' => array( 'slug' => 'produto' ), // A URL será site.com/produto/nome
// 'capability_type' => 'post',
// 'has_archive' => true, // Terá uma página de listagem? Sim.
// 'hierarchical' => false,
// 'menu_position' => 5, // Posição no menu (logo abaixo de Posts)
// 'menu_icon' => 'dashicons-cart', // Ícone do carrinho de compras
// 'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt' ), // O que o produto tem?
// );
// register_post_type( 'produto', $args );
// }
// add_action( 'init', 'agropampa_registar_produtos' );
/* --- METABOX DE PREÇO --- */
// 1. Adicionar a Metabox
function agropampa_adicionar_metabox_preco() {
add_meta_box(
'agropampa_preco_box', // ID único da caixa
'Informações de Venda', // Título que aparece no painel
'agropampa_html_metabox_preco', // Função que desenha o campo (veja abaixo)
'produto', // Em qual tipo de post aparece? (no nosso 'produto')
'side', // Onde? Na lateral ('side') ou no centro ('normal')
'high' // Prioridade
);
}
add_action( 'add_meta_boxes', 'agropampa_adicionar_metabox_preco' );
// 2. O HTML do Campo (O que tu vês ao editar)
function agropampa_html_metabox_preco( $post ) {
wp_nonce_field( 'salvar_preco_seguranca', 'agropampa_nonce_preco' );
// Tenta recuperar o valor antigo se já existir
$preco_atual = get_post_meta( $post->ID, '_agropampa_preco', true );
?>
Ex: 1.200,00
manual
add_theme_support( 'automatic-feed-links' );
// RECOMENDADOS (Evita avisos)
add_theme_support( 'post-thumbnails' );
add_theme_support( 'align-wide' );
add_theme_support( 'responsive-embeds' );
// Habilita Logótipo Personalizado (para não ser só texto)
add_theme_support( 'custom-logo', array(
'height' => 80,
'width' => 200,
'flex-height' => true,
'flex-width' => true,
) );
// --- SUPORTES RECOMENDADOS PELO THEME CHECK ---
// Habilita tags HTML5 limpas para formulários e listas
add_theme_support( 'html5', array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption',
'style',
'script'
) );
// Habilita Fundo Personalizado (Aparência > Fundo)
add_theme_support( 'custom-background' );
// Habilita Cabeçalho Personalizado (Aparência > Cabeçalho)
// Mesmo que não uses, é bom declarar para evitar o aviso
add_theme_support( 'custom-header' );
// Melhora a aparência do Editor de Blocos (Gutenberg)
add_theme_support( 'wp-block-styles' );
// add_theme_support( 'responsive-embeds' );
// Carrega estilos do tema dentro do editor do WordPress
add_editor_style( 'style.css' );
}
add_action( 'after_setup_theme', 'agropampa_suporte_woo' );
// Função para verificar se o WooCommerce está ativo (evita erros fatais)
function agropampa_tem_woocommerce() {
return class_exists( 'WooCommerce' );
}
// --- REGISTO DE WIDGETS (SIDEBARS) DO RODAPÉ ---
function agropampa_widgets_init() {
// Configuração padrão para não repetir código
$shared_args = array(
'before_widget' => '',
'after_widget' => '
',
'before_title' => '',
);
// Coluna 1
register_sidebar( array_merge( $shared_args, array(
'name' => __( 'Rodapé Coluna 1', 'agropampa-lite' ),
'id' => 'rodape-1',
'description' => __( 'Primeira coluna do rodapé.', 'agropampa-lite' ),
) ) );
// Coluna 2
register_sidebar( array_merge( $shared_args, array(
'name' => __( 'Rodapé Coluna 2', 'agropampa-lite' ),
'id' => 'rodape-2',
'description' => __( 'Segunda coluna do rodapé.', 'agropampa-lite' ),
) ) );
// Coluna 3
register_sidebar( array_merge( $shared_args, array(
'name' => __( 'Rodapé Coluna 3', 'agropampa-lite' ),
'id' => 'rodape-3',
'description' => __( 'Terceira coluna do rodapé.', 'agropampa-lite' ),
) ) );
}
add_action( 'widgets_init', 'agropampa_widgets_init' );
// --- OPÇÃO DE COPYRIGHT NO PERSONALIZADOR ---
function agropampa_personalizador_rodape( $wp_customize ) {
$wp_customize->add_setting( 'texto_copyright', array(
'default' => '© 2024 AgroPampa. Todos os direitos reservados.',
'sanitize_callback' => 'wp_kses_post', // Permite HTML seguro (links)
));
$wp_customize->add_control( 'texto_copyright', array(
'label' => __( 'Texto de Copyright', 'agropampa-lite' ),
'section' => 'agropampa_rodape',
'type' => 'textarea',
));
}
add_action( 'customize_register', 'agropampa_personalizador_rodape' );
function agropampa_carregar_scripts() {
// ... teus estilos e scripts existentes ...
// Carrega o estilo principal
wp_enqueue_style( 'agropampa-style', get_stylesheet_uri() );
// --- ADICIONE ISTO AQUI PARA CORRIGIR O ERRO DE COMENTÁRIOS ---
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
?>