web-dev-qa-db-fra.com

Recherche personnalisée de brouillons dans un type de message personnalisé

Est-il possible de créer une page de recherche qui recherchera un mot clé uniquement dans un type d'article personnalisé ayant le statut "brouillon"?

En gros, j'ai prévu d'importer un grand nombre de données en tant que type de publication personnalisé. Les données seraient simples, "nom", "réponse", "notes". Cependant, je ne souhaite pas que ces données soient publiées, car chaque publication personnalisée ne contiendrait quasiment aucune donnée et le site contiendrait alors 5 000 pages de spam.

Cependant, les utilisateurs veulent souvent connaître la "réponse" de certains "noms" et je dois leur donner la possibilité de rechercher et de trouver.

1
jonbon

Il est possible d'effectuer une recherche dans les brouillons en définissant l'argument post_status sur draft dans votre requête de recherche. Toutefois, une meilleure option consiste à contrôler les éléments à l'aide des arguments passés à register_post_type.

Nous avons d’abord défini public sur false, ce qui masquera le type de publication partout: devant et derrière. Nous activons ensuite sélectivement show_ui pour obtenir l'interface utilisateur d'administration et définissons exclude_from_search sur false afin qu'ils apparaissent dans les recherches frontales. Nous avons également défini rewrite sur false. Par conséquent, WordPress ne génère pas de règles de réécriture pour ce type de publication.

Vous aurez ensuite publié des articles qui sont interrogeables, mais ils n'auront aucune page individuelle sur le front-end.

$args = array(
    'public' => false,
    'show_ui' => true,
    'exclude_from_search' => false,
    'rewrite' => false,
    'label' => 'Name',
    // your other arguments...
);
register_post_type( 'name', $args );
2
Milo