web-dev-qa-db-fra.com

Réécrire Slug pour les pages d'archives CPT au nom pluriel de Slug

J'ai un type d'article personnalisé avec le slug réécrit de plugin créant la structure d'URL de http://site.com/plugin/plugin-slug/ . Ce qui rend les archives CPT en tant que http://site.com/plugin/

Je voudrais le réécrire, sans utiliser une page et un modèle de page personnalisé, pour utiliser http://site.com/plugins/ (qui est le labels=>Name dans le CPT). tout en conservant le slug pour les publications individuelles sous la forme /plugin/, il devrait également prendre en charge des éléments tels que `/ plugins/page/21 - ce qu’il fait actuellement.

10
alpha1

Lorsque vous enregistrez le type de publication, définissez l'argument 'has_archive' sur une chaîne, dans votre cas plugins.

Le bloc de documentation pour register_post_type() dit:

@type bool|string $has_archive
S'il doit y avoir des archives de type publication ou, s'il s'agit d'une chaîne, l'archive slug à utiliser. Générera les règles de réécriture appropriées si $rewrite est activé. Par défaut false.

Exemple minifié:

register_post_type( 'plugin', [ 'has_archive' => 'plugins' ] );
20
fuxia