Soporte » Guías – Resolución de problemas » No funciona el permalink distinto de post-id

  • Resuelto aamoresano77

    (@aamoresano77)


    Hola!
    Ante todo les comento que he leído muchísimos post con este problema y he aplicado todas las soluciones posibles y no he podido dar con la solución.

    El problema que tengo es que me han dejado de funcionar los links internos en la pagina, antes los tenia configurados como /%category%/%postname%/ y solo he logrado que funcionen configurando con ?p=123. Pero necesito que funcionen al menos con /%postname%/.

    Características de mi sitio:
    – Tengo el sitio en un hosting con Apache/2.4.41, Version PHP 7.1.33, Mysql 5.5.62
    – Tengo version 5.4 de WordPress
    – Tiene un tema comprado (Bridge) actualizado
    – Tengo el sitio instalado en un subfolder
    – No tengo plugin de cache
    – Tengo plugin de SSL (Really Simple SSL)

    Las soluciones que lei en este foro e implemente fueron las siguientes:
    1. Verificar permisos en .htaccess, tiene 644
    2. He borrado y creado nuevamente el archivo .htaccess, les pego el código que tengo actualmente:

    # BEGIN rlrssslReallySimpleSSL rsssl_version[3.3.1]
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{HTTPS} !=on [NC]
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
    RewriteCond %{HTTP_HOST} ^(www.)?animatealmundo.com.ar$
    RewriteCond %{REQUEST_URI} !^/subfolder/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /subfolder/$1
    RewriteCond %{HTTP_HOST} ^(www.)?animatealmundo.com.ar$
    RewriteRule ^(/)?$ subfolder/index.php [L]
    </IfModule>
    # END rlrssslReallySimpleSSL
    # BEGIN WordPress
    # Las directivas (líneas) entre BEGIN WordPress y END WordPress se generan dinámicamente
    # , y solo se deberían modificar mediante filtros de WordPress.
    # Cualquier cambio en las directivas que hay entre esos marcadores se sobreescribirán.
    # END WordPress

    3. Con el tema Bridge, Cambie dentro de ajustes – enlaces permanentes a default y luego a personalizado.
    4. Probe con el tema Twenty Twenty la configuración del paso 3 y nada.
    5. Configure los enlaces predeterminados como /%postname%/, desactive todos los plugins, ingrese al sitio con el tema bridge y con el twenty twenty y en ambos no consigo ver las paginas.

    La verdad ya no se que mas hacer, ya que no soy programadora y al tener el sitio en un hosting no tengo mucha opción de ver como esta instalado el servidor.

    Agradezco vuestra respuesta y ayuda!

    Saludos
    Anabella.

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 6 respuestas - de la 1 a la 6 (de un total de 6)
  • Moderador LGrusin

    (@lgrusin)

    Prueba eliminar el archivo .htaccess
    Deja que WordPress cree el archivo .htaccess, no lo crees manualmente.

    Prueba con el permalink /%postname%

    Iniciador del debate aamoresano77

    (@aamoresano77)

    Muchas gracias por responder!! Lamentablemente sigo con el problema.

    Hice eso y el htaccess me quedo así:

    # BEGIN WordPress
    # Las directivas (líneas) entre BEGIN WordPress y END WordPress se generan dinámicamente
    # , y solo se deberían modificar mediante filtros de WordPress.
    # Cualquier cambio en las directivas que hay entre esos marcadores se sobreescribirán.
    <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

    Me derivo a la pagina del hosting porque no encuentra el directorio (correcto).

    Luego, agregue la información de subfolder y finalmente quedo así:

    # BEGIN WordPress
    # Las directivas (líneas) entre BEGIN WordPress y END WordPress se generan dinámicamente
    # , y solo se deberían modificar mediante filtros de WordPress.
    # Cualquier cambio en las directivas que hay entre esos marcadores se sobreescribirán.
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^(www.)?animatealmundo.com.ar$
    RewriteCond %{REQUEST_URI} !^/subfolder/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /subfolder/$1
    RewriteCond %{HTTP_HOST} ^(www.)?animatealmundo.com.ar$
    RewriteRule ^(/)?$ subfolder/index.php [L]
    </IfModule>

    # END WordPress

    pero cuando ingreso a la web, al querer entrar a alguna opción de menu me sale el cartel 404 (quedo incorrecta ahora para que se vea).

    Gracias por la ayuda nuevamente!!

    Moderador LGrusin

    (@lgrusin)

    Pero es que subfolder no es el nombre de la carpeta real.
    ¿En qué carpeta tienes WordPress?
    ¿Nunca has tenido problemas antes?
    Creo que esa instalación no está correctamente modificada como para trabajar en una carpeta.

    Consulta este artículo a ver si te aclara algo:
    https://wordpress.org/support/article/giving-wordpress-its-own-directory/

    Iniciador del debate aamoresano77

    (@aamoresano77)

    No, para pegarlo aqui lo reemplace por ese nombre, el real es w0rpr3ss. Funciono desde el principio, de hecho, recuerda que con el permalink en p=id funciona. No tengo en claro desde cuando no funciona, ya que lo descubri 2 semanas atras luego de actualizar wordpress y los plugins.

    entre al link que mencionas y el htaccess tiene como unica diferencia que veo es «RewriteBase /»

    htaccess sugerido

    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^(www.)?example.com$
    RewriteCond %{REQUEST_URI} !^/my_subdir/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /my_subdir/$1
    RewriteCond %{HTTP_HOST} ^(www.)?example.com$
    RewriteRule ^(/)?$ my_subdir/index.php [L]

    mi htaccess (con el nombre del folder cambiado)
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^(www.)?animatealmundo.com.ar$
    RewriteCond %{REQUEST_URI} !^/subfolder/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /subfolder/$1
    RewriteCond %{HTTP_HOST} ^(www.)?animatealmundo.com.ar$
    RewriteRule ^(/)?$ subfolder/index.php [L]

    Gracias una vez mas!

    Moderador LGrusin

    (@lgrusin)

    Tendrás que comprobar todo detenidamente y con calma.

    Deja a WordPress crear el archivo .htaccess. Este archivo únicamente se crea cuando eliges un permalink. Con la opción ?p=123 (sin permalink) no crea .htaccess, de hecho lo puedes eliminar y el sitio funciona sin permalink. Comprueba que se crea un nuevo archivo .htaccess al modificar el permalink, se crea en el raiz. Puede que no se esté creando por temas de permisos de archivos.

    Pregunto ¿Tienes una instalación de WordPress en el raiz?
    Solo debe estar en el directorio

    Comprueba todos los pasos que te indican en este enlace
    https://wordpress.org/support/article/giving-wordpress-its-own-directory/#method-ii-with-url-change
    Los puntos 1 y 6 no los tienes que hacer.

    Comprueba que has puesto https en las URLs en los puntos 3 y 4.

    Iniciador del debate aamoresano77

    (@aamoresano77)

    Hola!

    Ante todo millones y millones de gracias porque por fin pude resolverlo!
    Explico lo que hice así queda para otros casos:

    Seguí los pasos indicados por ti en el link de referencia https://wordpress.org/support/article/giving-wordpress-its-own-directory/#method-ii-with-url-change

    Pero, en el paso 7 hice al revés con el htacces ya que lo tenia en el root y <b>no</b> en el subfolder y luego continue con los pasos siguientes.

    Aclaro que tengo una sola instalación de wordpress y es solo en el subfolder.

    Gracias una vez mas, estoy feliz!!

Viendo 6 respuestas - de la 1 a la 6 (de un total de 6)
  • El debate ‘No funciona el permalink distinto de post-id’ está cerrado a nuevas respuestas.