WP 3.1 - páginas de arquivo para tipos de conteúdo personalizados possíveis agora sem um plugin?

3

Notei que o WP 3.1 supostamente tem ' novos recursos de CMS, como páginas de arquivo para tipos de conteúdo personalizados ', no entanto, não consigo ver isso implementado ainda?

Eu tenho usado um plugin chamado 'Simple Custom Post Type Archives' para ver postagens personalizadas na url enlace , mas queria usar o recurso embutido, considerando que é "agora possível".

Alguém mais teve o mesmo problema?

Obrigado

osu

PS. Estou usando o arquivo-custom_post_type_name.php para tentar e estilizar minha página de arquivo de tipo de postagem personalizada

    
por Osu 28.02.2011 / 15:42

2 respostas

13

Sim, você só precisa definir o parâmetro has_archive como true ou o slug escolhido ao registrar seu tipo de postagem personalizado.

Então, primeiro adicione o parâmetro has_archive ao seu tipo de postagem, aqui está um exemplo ...

add_action( 'init', 'question_10706_init' );

function question_10706_init() {

    register_post_type( 'example', array(
        'labels' => array(
            'name' => __('Examples'),
            'singular_name' => __('Example')
            ),
        'public' => true,
        'show_ui' => true,
        'rewrite' => array(
            'slug' => 'example',
            'with_front' => false
            ),
        //'has_archive' => true // Will use the post type slug, ie. example
        //'has_archive' => 'my-example-archive' // Explicitly setting the archive slug
    ) );

}

O parâmetro has_archive suporta as seguintes configurações.

  1. false (padrão)

    Nenhum arquivo

  2. true

    O URL do arquivo é formulado a partir do tipo de mensagem slug

    www.example.com/example/

  3. ' string '

    O URL do arquivo é explicitamente definido para o slug que você forneceu

    www.example.com/my-example-archive/

Depois de adicionar o parâmetro, visite a página de link permanente, isso fará com que uma regeneração das regras de reescrita, representando o arquivo de tipo de postagem personalizado.

Por último, crie um modelo archive-{$post_type}.php para lidar com esse arquivo (pode ser uma cópia direta > colagem do seu arquivo existente, faça os ajustes necessários). Observando, que {$post_type} representaria, naturalmente, o tamanho do seu tipo de postagem atual.

Informações fornecidas:

Espero que ajude. :)

    
por t31os 28.02.2011 / 16:22
1

Sim, isso é implementado em 3.1, você precisa garantir que os argumentos passados para register_post_type tenham o sinalizador has_archive definido como true. Veja a página do Codex sobre isso.

Você também pode precisar visitar a página de configurações do permalink e reenviá-las, o que parece ajudar com frequência.

    
por Simon Blackbourn 28.02.2011 / 16:14