Mini Shell

Direktori : /home/brasafestival/www/old/wp-content/themes/brasa_2023/
Upload File :
Current File : /home/brasafestival/www/old/wp-content/themes/brasa_2023/functions.php

<?php
function custom_theme_setup() {
    add_theme_support( 'post-thumbnails' );
}
add_action( 'after_setup_theme', 'custom_theme_setup' );

add_action('init', 'register_custom_posts_init');
function register_custom_posts_init() {
    /* 
    **** SOBRE ****
    */
    $sobre_labels = array(
        'name'               => 'Sobre nós',
        'singular_name'      => 'Sobre nós',
        'menu_name'          => 'Sobre nós'
    );
	$sobre_args = array(
        'labels'             => $sobre_labels,
        'public'             => true,
        'capability_type'    => 'page',
        'capabilities'       => array(
            'create_posts' => 'do_not_allow', 
        ),
        'map_meta_cap'       => true,
        'has_archive'        => true,
        'menu_icon'          => 'dashicons-businessman',
        'menu_position'      => 2
    );
    register_post_type('sobre', $sobre_args);
    
    /* 
    **** ÚLTIMA EDIÇÃO ****
    */
    $ultima_edicao_labels = array(
        'name'               => 'Última Edição',
        'singular_name'      => 'Última Edição',
        'menu_name'          => 'Última Edição'
    );
	$ultima_edicao_args = array(
        'labels'             => $ultima_edicao_labels,
        'public'             => true,
        'capability_type'    => 'page',
        'capabilities'       => array(
            'create_posts' => 'do_not_allow', 
        ),
        'map_meta_cap'       => true,
        'has_archive'        => true,
        'menu_icon'          => 'dashicons-tickets-alt',
        'menu_position'      => 2
    );
    register_post_type('ultima_edicao', $ultima_edicao_args);

    /* 
    **** ESTRUTURA ****
    */
    $estrutura_labels = array(
        'name'               => 'Estrutura',
        'singular_name'      => 'Estrutura',
        'menu_name'          => 'Estrutura'
    );
	$estrutura_args = array(
        'labels'             => $estrutura_labels,
        'public'             => true,
        'capability_type'    => 'page',
        'capabilities'       => array(
            'create_posts' => 'do_not_allow', 
        ),
        'map_meta_cap'       => true,
        'has_archive'        => true,
        'menu_icon'         => 'dashicons-building',
        'menu_position'      => 2
    );
    register_post_type('estrutura', $estrutura_args);
    
    /* 
    **** INGRESSOS ****
    */
    $ingressos_labels = array(
        'name'               => 'Ingressos',
        'singular_name'      => 'Ingressos',
        'menu_name'          => 'Ingressos'
    );
	$ingressos_args = array(
        'labels'             => $ingressos_labels,
        'public'             => true,
        'capability_type'    => 'page',
        'capabilities'       => array(
            'create_posts' => 'do_not_allow', 
        ),
        'map_meta_cap'       => true,
        'has_archive'        => true,
        'menu_icon'          => 'dashicons-tickets',
        'menu_position'      => 2
    );
    register_post_type('ingressos', $ingressos_args);

    /* 
    **** LOCALIZAÇÃO ****
    */
    $localizacao_labels = array(
        'name'               => 'Localização',
        'singular_name'      => 'Localização',
        'menu_name'          => 'Localização'
    );
	$localizacao_args = array(
        'labels'             => $localizacao_labels,
        'public'             => true,
        'capability_type'    => 'page',
        // 'capabilities'       => array(
        //     'create_posts' => 'do_not_allow', 
        // ),
        'map_meta_cap'       => true,
        'has_archive'        => true,
        'menu_icon'          => 'dashicons-location-alt',
        'menu_position'      => 2
    );
    register_post_type('localizacao', $localizacao_args);
/* 
    **** PARCEIROS ****
    */
    $parceiros_labels = array(
        'name'               => 'Parceiros',
        'singular_name'      => 'Parceiro',
        'menu_name'          => 'Parceiros'
    );
	$parceiros_args = array(
        'labels'             => $parceiros_labels,
        'public'             => true,
        'capability_type'    => 'page',
        'capabilities'       => array(
            'create_posts' => 'do_not_allow', 
        ),
        'map_meta_cap'       => true,
        'has_archive'        => true,
        'menu_icon'          => 'dashicons-location-alt',
        'menu_position'      => 2
    );
    register_post_type('parceiros', $parceiros_args);

    if( function_exists('acf_add_options_page') ) {
    
        acf_add_options_page(array(
            'page_title'    => 'Configurações do site',
            'menu_title'    => 'Configurações do site',
            'menu_slug'     => 'configuracoes-do-site',
            'capability'    => 'edit_posts',
            'redirect'      => false
        ));
        
    }
}

function scripts() {
    wp_enqueue_style('bootstrap', 'https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css');
    wp_enqueue_style('font-awesome', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css');
    wp_enqueue_style('animate-css', 'https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css');
    wp_enqueue_style('style', get_stylesheet_uri().'?v='.filemtime(get_stylesheet_directory() . '/style.css'));
    wp_enqueue_script( 'bootstrap', 'https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.min.js', '', '1', true );
    // wp_register_script( 'cf7-enable-enter-key-submit', get_template_directory_uri() . '/js/cf7-enable-enter-key-submit.js', array( 'jquery' ), '1.0', true );
    // wp_enqueue_script( 'cf7-enable-enter-key-submit' );
    wp_enqueue_script( 'google-maps', 'https://maps.googleapis.com/maps/api/js?key=AIzaSyAo0MlsJAX2dK2JR8OozJlB2dQMWfY_-cA&callback=Function.prototype', '', '1', true );
    wp_enqueue_script( 'map', get_template_directory_uri() . '/js/dist/map.prod.js', array( 'jquery' ), '1.0', true );
    wp_enqueue_script( 'scripts', get_template_directory_uri() . '/js/dist/scripts.prod.js', array( 'jquery' ), '1.0', true );
}
add_action( 'wp_enqueue_scripts', 'scripts' );

add_image_size( '556x266', 556, 266, true );
add_image_size( '856x410', 856, 410, true );
add_image_size( '500x311', 500, 311, true );
add_image_size( '1920x738', 1920, 738, true );
  

function redirect_to_edit_sobre() {
    global $pagenow, $typenow;
    if ( $pagenow == 'edit.php' && $typenow == 'sobre' ) {
      wp_redirect( admin_url( 'post.php?action=edit&post=14' ) );
      exit;
    }
}
add_action( 'admin_init', 'redirect_to_edit_sobre' );

function redirect_to_edit_ultima_edicao() {
    global $pagenow, $typenow;
    if ( $pagenow == 'edit.php' && $typenow == 'ultima_edicao' ) {
      wp_redirect( admin_url( 'post.php?action=edit&post=18' ) );
      exit;
    }
}
add_action( 'admin_init', 'redirect_to_edit_ultima_edicao' );

function redirect_to_edit_estrutura() {
    global $pagenow, $typenow;
    if ( $pagenow == 'edit.php' && $typenow == 'estrutura' ) {
      wp_redirect( admin_url( 'post.php?action=edit&post=21' ) );
      exit;
    }
}
add_action( 'admin_init', 'redirect_to_edit_estrutura' );

function redirect_to_edit_ingressos() {
    global $pagenow, $typenow;
    if ( $pagenow == 'edit.php' && $typenow == 'ingressos' ) {
      wp_redirect( admin_url( 'post.php?action=edit&post=42' ) );
      exit;
    }
}
add_action( 'admin_init', 'redirect_to_edit_ingressos' );

function redirect_to_edit_localizacao() {
    global $pagenow, $typenow;
    if ( $pagenow == 'edit.php' && $typenow == 'localizacao' ) {
      wp_redirect( admin_url( 'post.php?action=edit&post=62' ) );
      exit;
    }
}
add_action( 'admin_init', 'redirect_to_edit_localizacao' );

function my_acf_init() {
    acf_update_setting('google_api_key', 'AIzaSyAo0MlsJAX2dK2JR8OozJlB2dQMWfY_-cA');
}
add_action('acf/init', 'my_acf_init');
 
// Modificar a tela de adicionar novo post para limitar à categoria "notícias"
function modificar_tela_adicionar_post() {
    global $pagenow;
    if ($pagenow == 'post-new.php' && isset($_GET['post_type']) && $_GET['post_type'] == 'noticias') {
        $categoria_noticias = get_category_by_slug('noticias');
        if ($categoria_noticias) {
            // Define a categoria padrão como "notícias"
            wp_set_post_categories(get_the_ID(), array($categoria_noticias->term_id));
            // Remove as outras categorias
            remove_meta_box('categorydiv', 'noticias', 'side');
        }
    }
}
add_action('admin_head', 'modificar_tela_adicionar_post');

add_action( 'admin_menu', 'remover_menus_administracao' );

function remover_menus_administracao() {
    remove_menu_page( 'index.php' );                   // Painel
    // remove_menu_page( 'edit.php' );                    // Posts
    remove_menu_page( 'edit-comments.php' );           // Comentários
    remove_menu_page( 'edit.php?post_type=page' );     // Páginas
    remove_menu_page( 'themes.php' );                  // Aparência
    remove_menu_page( 'plugins.php' );                 // Plugins
    remove_menu_page( 'users.php' );                   // Usuários
    remove_menu_page( 'tools.php' );                   // Ferramentas
    // remove_menu_page( 'options-general.php' );         // Configurações
    remove_menu_page( 'edit.php?post_type=acf-field-group' ); // Campos personalizados (ACF)
    remove_menu_page( 'wpcf7' );                       // Contato (Contact Form 7)
    remove_menu_page('upload.php');                    // Mídia
}
function remove_jetpack_menu_page() {
    remove_menu_page('jetpack');
}
add_action('admin_menu', 'remove_jetpack_menu_page', 999);

function custom_login_redirect( $redirect_to, $request, $user ) {
    // Redireciona para a página de sobre após o login
    return home_url( '/wp-admin/post.php?action=edit&post=14' );
}
add_filter( 'login_redirect', 'custom_login_redirect', 10, 3 );

add_theme_support( 'infinite-scroll', array(
    'type'           => 'scroll',
    'container'      => 'content',
    'wrapper'        => false,
    'render'         => 'function_name',
    'footer'         => false,
    'posts_per_page' => 6,
) );
function function_name() {
    while ( have_posts() ) : the_post();
        get_template_part( 'template-parts/content', get_post_format() );
    endwhile;
}

function custom_jetpack_infinite_scroll_settings( $settings ) {
    $settings['text'] = 'Veja mais';
    $settings['button']['label'] = 'Veja mais';
    $settings['button']['loading-label'] = 'Carregando...';
    return $settings;
}
add_filter( 'infinite_scroll_js_settings', 'custom_jetpack_infinite_scroll_settings' );


// add_action('wp_footer', 'show_current_template');
// function show_current_template() {
//     if (current_user_can('administrator')) {
//         echo '<div style="position:fixed;bottom:0;right:0;padding:10px;background:#fff;border:1px solid #000;">';
//         echo 'Current Template: ' . get_page_template();
//         echo '</div>';
//     }
// }

Zerion Mini Shell 1.0