Reescribir Slug para páginas de archivo de CPT al nombre plural de Slug

11

Tengo un tipo de publicación personalizado con la babosa reescrita de plugincrear la estructura de URL de http://site.com/plugin/plugin-slug/ . Lo que hace que el Archivo CPT sea http://site.com/plugin/

Me gustaría volver a escribirlo, sin usar una página y una plantilla de página personalizada, para usar http://site.com/plugins/ (que está labels=>Nameen el CPT). manteniendo la babosa para las publicaciones individuales, ya que /plugin/ esto también necesitaría admitir cosas como `/ plugins / page / 21, lo que actualmente hace.

alfa1
fuente

Respuestas:

21

Cuando registre el tipo de publicación, establezca el argumento 'has_archive'en una cadena, en su caso plugins.

El bloque de documentos para register_post_type()dice:

@type bool|string $has_archive
Si debe haber archivos de tipo de publicación, o si es una cadena, la babosa de archivo para usar. Generará las reglas de reescritura adecuadas si $rewriteestá habilitado. Por defecto false.

Ejemplo minimizado:

register_post_type( 'plugin', [ 'has_archive' => 'plugins' ] );
fuxia
fuente
66
Para actualizar las reglas de reescritura de un tipo de publicación personalizado que está actualizando, visite Configuración> Enlaces permanentes . Según el ejemplo anterior, si no hace esto, /pluginseguirá siendo la babosa de archivo y /pluginsaún no funcionará.
Mark Rummel