J’ai un type de message personnalisé appelé integrations
qui est utilisé pour héberger des informations de base pour les intégrations.
Voici comment j’ai enregistré le type de publication :
register_post_type(
'Integrations',
theme_build_post_args(
// $slug, $singular, $plural
'integrations', 'Integration', 'Integrations',
array(
'menu_position' => 21,
'has_archive' => false,
'public' => false,
'hierarchical' => false,
'supports' => array('title', 'revisions'),
'taxonomies' => array('categories'),
)
)
);
Maintenant, j’ai aussi une page appelée “Intégrations” qui se trouve sur /integrations
. Pour que la page d’archive utilise le modèle de page à la place, j’ai utilisé template_include
:
function custom_integrations_template( $template ) {
if ( is_page( 'integrations' ) ) {
$new_template = locate_template( array( 'integration-page-template.php' ) );
if ( '' != $new_template ) {
return $new_template ;
}
}
return $template;
}
add_filter( 'template_include', 'custom_integrations_template', 999 );
integration-page-template.php
:
<?php get_header(); ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>
<?php get_footer(); ?>
Maintenant, voici où mes problèmes commencent.
Sous le type de message personnalisé “Intégrations”, j’ai un message appelé “TaxCalc”, qui se trouve sur /integrations/taxcalc/
.
Cependant, je dois également créer une page, qui sera un enfant de la page “Intégrations” qui se trouve sur /integrations/taxcalc/
.
Actuellement, lorsque j’accède /integrations/taxcalc/
cela m’amène à une page vierge, qui est la version post.
Idéalement, je ne veux pas que les publications sous le type de publication “Intégrations” génèrent des URL. Pour ce faire, j’ai essayé 'publicly_queryable' => false
cependant, il ne fait rien.
Comment puis-je empêcher un type de publication de générer des URL et cela aurait-il des répercussions ? Par exemple, m’empêcher de créer des pages sous le même slug ?
Modifier (réponse à @Lewis)
Merci d’avoir répondu. J’ai ajouté 'rewrite' => false
mais le problème persiste.
Ci-dessous une intégration poste et vous pouvez également voir le lien permanent dans la capture d’écran :
Quand je vais sur ce permalien /integrations/card-taxcalc/
, cela m’amène à une page avec juste l’en-tête et le pied de page. Idéalement, ce poste ne devrait pas exister.
Voici maintenant une capture d’écran de la configuration de ma page TaxCalc :
Comme vous pouvez le voir, cette page se trouve sur /integrations/taxcalc/
. Cependant, lorsque je vais sur cette URL, cela me redirige vers /integrations/card-taxcalc/