Como configurar um tipo de postagem personalizado para não aparecer no front end

8

Eu uso um tipo de postagem personalizado em um dos meus sites para apresentações de slides de imagens. Tenho a possibilidade de consulta pública definida como false / off, mas quando o Google rastreia meu site, vejo erros 404 nos URLs das minhas apresentações de slides. Eu pensei que por ter publicamente consultável fora do Wordpress não iria criar os URLs front-end.

Como posso desativar completamente os URLs e páginas frontais do meu tipo de postagem personalizada?

EDITAR

Ao adicionar public => false , has_archive => false , publicaly_queryable => false e query_var => false , me livrei dos erros 404 no Google. Eu também adicionei a função fornecida pelo @Norcross apenas por uma boa medida.

    
por dkmojo 30.11.2012 / 15:27

3 respostas

4

Outra opção seria definir um redirecionamento 301 para todos os CPTs da apresentação de slides redirecionarem para algum lugar (como a home page). Isso seria detectado pelo Google e também garantir que ninguém acidentalmente os atinja

function rkv_slideshow_redirect() {
    global $wp_query;

    // redirect from 'slideshow' CPT to home page
    if ( is_archive('CPT_NAME_HERE') || is_singular('CPT_NAME_HERE') ) :
        $url   = get_bloginfo('url');

        wp_redirect( esc_url_raw( $url ), 301 );
        exit();
    endif;
}

add_action ( 'template_redirect', 'rkv_slideshow_redirect', 1);
    
por Norcross 02.12.2012 / 17:23
1

Aparentemente, sua apresentação de slides , não o WordPress, revela essas URLs. Eu suponho que está envolvendo as imagens na apresentação de slides com links para as postagens personalizadas, que você não quer. Você precisa editar o slideshow para que ele não faça isso.

    
por s_ha_dum 30.11.2012 / 15:43
0

Uma modificação na sua pergunta original, você deve adicionar

'exclude_from_search' => true,

Se isso não for adicionado, o CPT será exibido nos resultados da pesquisa.

    
por JoseLazo 08.09.2015 / 12:04