Con el lanzamiento de WordPress 3.0 vino la capacidad de agregar «Tipos de publicaciones personalizados» a sus temas de WordPress, que es una herramienta muy valiosa y la he usado en muchos temas de WordPress que he creado. A estas alturas, los tipos de publicaciones personalizadas se han vuelto extremadamente populares y se utilizan en casi todos los temas de WordPress que existen. Pero cualquiera que haya trabajado con tipos de publicaciones personalizados probablemente haya encontrado el Dreadful 404 Error no encontrado al intentar acceder a una publicación desde el tipo de publicación en un momento u otro. Afortunadamente, casi siempre existe una solución sencilla para corregir estos errores.
A continuación, enumero algunos de los problemas más comunes que tienen las personas con los tipos de publicaciones personalizadas y por qué pueden estar recibiendo estos errores. Con suerte, ayudarán al menos a algunas personas.
1. Verifique la configuración de su enlace permanente
Esta es probablemente una de las razones más comunes por las que las personas reciben errores 404 en sus tipos de publicaciones personalizadas y lo he tratado muchas veces. He visto muchas correcciones, como eliminar las reglas de reescritura (que no recomiendo), pero personalmente he tenido la mejor suerte con la siguiente corrección simple:
Solución:
- Establezca su estructura personalizada de enlaces permanentes (como% postname%)
- Clic en Guardar
- Vea si sus páginas de publicaciones personalizadas individuales devuelven páginas de error 404
- Si lo hacen, regrese y cambie los enlaces permanentes a los predeterminados y guarde
- Ahora intente configurar el enlace permanente personalizado nuevamente y guarde
Ir y venir normalmente me ha ayudado a corregir mis errores y he tenido mucho éxito con este método.
Ahora, en algunos servidores, si sus permisos no están configurados correctamente, es posible que esto no funcione y que tenga que actualizar su archivo .htaccess manualmente. Para hacer esto, tendrá que iniciar sesión en su sitio a través de FTP o SFTP y navegar a su directorio raíz de WordPress (el mismo lugar donde se encuentra su archivo wp-config.php y la carpeta wp-content). Aquí debe encontrar un archivo llamado .htaccess que puede modificar (si no lo ve, asegúrese de que su programa FTP tenga la opción de mostrar archivos ocultos habilitados y si simplemente no hay uno, cree uno). Ahora asegúrese de que el archivo contenga el código principal de WordPress como se menciona en el Documentos de WordPress, que se ve así:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Importante: Si está modificando un archivo .htaccess existente, asegúrese de hacer una copia de seguridad del archivo en su computadora primero en caso de que se estropee algo.
2. Compruebe si hay conflictos de slug (tener una página con el mismo slug que su tipo de publicación)
Otra cosa que puede causar un error 404 es que tiene una página principal para mostrar su publicación de tipo de publicación y tiene la misma slug que su slug singular de tipo de publicación real. Por ejemplo, si tiene un tipo de publicación denominada «cartera» y también tiene una página principal de «Cartera», ambas con la slug «cartera» (en otras palabras, para acceder a una publicación de cartera, iría a site.com/portfolio/sample- publicación) esto crea un conflicto que causa errores 404 en sus publicaciones de tipo de publicación singular. Es por eso que a menudo encuentras que el tipo de publicación de cartera usa la palabra «proyectos» o «artículo de cartera» para la barra singular.
Solución:
- Puede cambiar el nombre de la página para que sea diferente al tipo de publicación personalizada
- Puede cambiar su tipo de publicación personalizada slug, que se hace modificando el parámetro de reescritura cuando registrando su tipo de publicación personalizada
3. Reglas de reescritura de limpieza automática (para desarrolladores)
Otra causa de los errores 404 es que cada vez que se registra un nuevo tipo de publicación, debe «eliminar» sus reglas de reescritura en WordPress. Esto se puede hacer yendo a Configuración> Enlaces permanentes y haciendo clic en el botón Guardar (mencionado en la primera sección de esta publicación).
Si está trabajando en un tema o complemento personalizado con tipos de publicaciones registradas, es posible que desee considerar la posibilidad de eliminar automáticamente las reglas de reescritura para su usuario final cuando activen su tema o complemento para evitar errores 404. A continuación, se muestra un ejemplo del código que puede utilizar:
// Code for themes
add_action( 'after_switch_theme', 'flush_rewrite_rules' );
// Code for plugins
register_deactivation_hook( __FILE__, 'flush_rewrite_rules' );
register_activation_hook( __FILE__, 'myplugin_flush_rewrites' );
function myplugin_flush_rewrites() {
// call your CPT registration function here (it should also be hooked into 'init')
myplugin_custom_post_types_registration();
flush_rewrite_rules();
}
¿Tiene otro error o solución?
Si tiene otro error o tiene una solución mejor que la mía, comente a continuación y hágamelo saber. No solo me ayudará, sino que probablemente ayudará a otras personas que buscan una solución a su problema. ¡Gracias!