Cómo eliminar slug de tipos personalizados jerárquicos en 3.5.2


8

Sé que no se sugiere y que hay mucha discusión sobre este argumento. Desafortunadamente, después de una semana de intentos y pruebas, todavía no he logrado eliminar la babosa de mi tipo personalizado. Aquí está la situación:

La estructura de url que necesito

  • post / blog / my-blog-post [¡ok!]
  • páginas / servicio-padre / servicio [¡ok!]
  • portfolio / portfolio / my-first-work [¡ok!]
  • static / parent-static-page / static-page [<<< --- aquí está el problema]

Mi configuracion

  • Wordpress 3.5.2
  • Tipo personalizado 'estático': jerárquico; sin ninguna regla de 'reescribir'.
  • Tipo personalizado 'cartera': no ​​jerárquico; 'rewrite' => array ('with_front' => false)
  • Estructura de enlace permanente: / blog /% postname% /
  • Como primera página configuro la página estática 'blog'

El problema

  • post blog / my-blog-post [¡ok!]
  • páginas / sitios web / sitios web dinámicos [¡ok!]
  • portfolio / portfolio / my-first-work [¡ok!]
  • static / who-i-am / terms [<<< --- aquí está el problema]

Lo que he probado

Nada

Al principio, como se esperaba, la url de la publicación "estática" "Mi página de prueba" es / blog / static / my-test-page

'rewrite' => array ('slug' => '', 'with_front' => false)

Quité el frente de la url ... ¡bien! Ahora tengo / static / my-test-page

'rewrite' => array ('slug' => false, 'with_front' => false)

No elimina la babosa. Tengo / static / my-test-page todavía.

'rewrite' => array ('slug' => '/', 'with_front' => false)

¡Elimina la babosa! Ahora tengo / my-test-page . Desafortunadamente, todas las páginas me devuelven un error 404 .

Complemento 'Eliminar babosa del tipo de publicación personalizada'

Aunque solo funciona si mi estructura de enlace permanente es /% postname%, he intentado instalar este complemento y cambiar mi estructura de enlace permanente para hacer una prueba. Funciona, pero desafortunadamente no respeta la naturaleza jerárquica de mi tipo 'estático'.

El tutorial de Joakin Lim

No funciona En particular, después de agregar function book_rewrite_rule(), dice que mi tipo personalizado ahora será accesible desde / my-test-page y / static / my-test-page , pero no funciona para mí. Solo puedo acceder desde / static / my-test-page . También intenté aplicar todo el tutorial, también hice algunos cambios y pruebas, pero sin éxito.

El tutorial de vip.wordpress

Si cambio 'evento' con 'estático' en ambas funciones, puedo acceder a mi página desde blog / parent-page / my-test-page . Si agrego 'rewrite' => ('with_front' => false) todo se rompe y solo puedo acceder desde static / parent-page / my-test-page

Otras soluciones y pruebas

Desafortunadamente, con mi reputación real, no puedo vincular más de dos enlaces. Pero también probé la solución que se encuentra en ryansechrest.com, shibashake.com y, por supuesto, TODAS las preguntas publicadas en este portal anteriormente. Por supuesto, cada vez que eliminé todas las reglas de enlaces permanentes, visité la página de configuración, guardé las opciones, las cambié dos veces y las guardé nuevamente, usando el global $wp_rewrite; $wp_rewrite->flush_rules();. He intentado muchas combinaciones con la matriz 'rewrite' y las diferentes soluciones anteriores.

¿Tienes alguna sugerencia?


1
Reviviendo una pregunta que se hizo hace mucho tiempo (gran pregunta, por cierto). ¿Encontraste alguna solución? ¿Podría ser una solución usar los tipos de página WP predeterminados y usar una plantilla de página personalizada?
Jen

Hola @guiniveretoo, todavía no he encontrado una solución. En mi sitio web estoy implementando un experimento: convertiré todos mis tipos de publicaciones personalizadas (cartera, herramientas, información) y todas las publicaciones en páginas. De esa manera simplificaré la estructura y las URL. Luego especificaré páginas con metacampos; También la parte delantera resultará más simple.
Marco Panichi

Respuestas:


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.