Eu tenho um tipo de post personalizado chamado "visningshus" e também uma página com essa lesma. É assim que deve (deve) ser.
Atualmente, " http://my-site.com/visningshus " lista todas as postagens desse tipo. Quero mostrar a página que tem essa lesma permalink.
Como posso fazer com que o Wordpress não faça com que o nome do tipo de postagem tenha precedência, mas o permalink e mostre a página?
custom-post-types
permalinks
redirect
Henrik Erlandsson
fonte
fonte
Não tenho reputação alta o suficiente para comentar na postagem de @ Carl, mas a resposta é correta (pelo menos para essa situação de manter a página slug e o tipo de postagem personalizada slug iguais e sem usar um arquivo archive.php)
Mas sua resposta daria erros na paginação. Para evitar erros de paginação:
Ele examina a paginação, pega o número da página e, no outro lado, o força a usar a página com a lesma correspondente e, em seguida, insere a variável da página.
Isso , além do
'has_archive' => false,
postado acima, deve alcançar a funcionalidade desejada.Como outros declararam, certifique-se de liberar as regras de reescrita visitando Configurações> Links permanentes depois de fazer essa alteração.
Espero que isso ajude alguém, porque eu sei que isso me deixou perplexo por muito tempo.
fonte
Tjena Henrik!
Eu acho que tudo que você precisa fazer é adicionar uma regra de reescrita às regras de reescrita do Wordpress que já foram criadas. Adicione esse trecho de código às suas funções.php do seu tema ou inclua-o como um arquivo separado ...
fonte
flush_rewrite_rules();
Você não deve alterar as regras de reescritainit
sempre. Recarregar uma vez e depois removê-lo, ou manualmente permalinks descarga, indo para as configurações permalink no painel de administração e clique em "Salvar alterações"Eu resolvi isso sem resolver o conflito. Crie uma página com slug visningshus e escreva o que quiser nela. Anote o ID desta página.
Crie e personalize o modelo archive-custom-post-type.php da maneira que desejar (provavelmente você usará apenas um modelo de página), mas substitua a parte do loop por
Então, quando você acessar o site http://my-site.com/visningshus, verá o conteúdo gerenciado pela página no URL correto.
Deixe-me saber que funciona.
fonte
Não é permitido votar, mas + na solução Carls, register_post_type deve ter
Simples. No entanto, quando você enfrentar problemas de paginação, consulte
fonte
O que foi corrigido para mim foi definir o arquivo como falso, mas também definir o Hierárquico como falso ao configurar meu tipo de postagem personalizado!
fonte
Aqui está uma solução geral para priorizar a paginação sobre o conteúdo personalizado de tipos de postagem para QUALQUER slug de tipo de postagem personalizada.
Além de adicionar esse snippet, você também deve garantir que seu tipo de postagem personalizado tenha
archive = false
e, por último, mas não menos importante, vá para a página de configurações de Permalinks Configurações> Permalinks (/wp/wp-admin/options-permalink.php) e salve as configurações atuais para atualizar a estrutura de links na página.
fonte