Por lo que comentas tienes mal configurado el WordPress.
Cuando lo movistes a una subcarpeta comprobastes que funcionaba bien?
Despues de activar el multisite añadistes el codigo php en el wp-config.php pero no comentas si tambien cambiastes el contenido en el .htaccess en el caso de usar apache u otro codigo cuando no es apache?
Para utilizar el wordpress dentro de un subcarpeta del dominio tienes que tener todos los archivos en esa carpeta y no solo en index.php, luego lo configuras normalmente y como el wordpress detecta que usas una subcarpeta cuando activas el multisite solo te permite usas carpeta para las sites.
Esto ultimo te lo comento porque dices que movistes solo el index.php.
Vamos que desde un inicio lo tenias mal.
Si es nuevo y no tienes contenido lo mas rapido seria eliminar la base de datos (solo las tablas) e instalar el WordPress correctamente, moviendo los archivos a su correspondiente carpeta en el caso que sea como lo quieres.
Ahora, si quieres que todas las sites tengan el mismo formato no podras ya que siempre la principal sera parte de la url.
Ejemplo:
– http://dominio/principal/
— http://dominio/principal/one
o
– http:dominio
— http:dominio/one
Una opcion es tener un WordPress por cada site, con lo que conlleva mas mantenimiento al ser x WordPres por x site.
– http://dominio/principal/
– http://dominio/one/
Yo por ejemplo para trabajar en local y no tener varios WordPress lo que hago es un enlace simbolico en la raiz por cada web y he modificado el wp-config.php para cambiar el nombre de la DB segun el server.
$database = preg_replace( '/([^\.]+\.)?([^\.]+)(\.[^\.]+)/', '$2', $_SERVER['SERVER_NAME'] );
define( 'DB_NAME', $database );
Pero uso el mismo nombre para el WordPress que para la DB, pero podrias adaptarlo, aunque te aviso que yo nunca lo he probado en produccion.
Iniciador del debate
mikem33
(@mikem33)
Hola @kallookoo. Muchas gracias por tu respuesta 🙂
Antes de activar el multisite y de haber movido WP a una carpeta funciona correctamente, es cuando activo el multisite que falla. En el primer post indico que lo de utilizar WordPress metido en su propia carpeta funciona siempre que el sitio principal sea en la raíz (example.com) y los subsitios tengan carpetas, de hecho tengo un sitio en producción de ese modo.
En este caso, no obstante, me gustaría tener todos los sitios al mismo nivel y por eso decidí crear una carpeta con el nombre del que quiero que sea el sitio principal (example.com/principal) y ahí muevo el index.php y el .htaccess (este index.php es el index.php que hay en los archivos de WordPress raíz, y al que se le cambia esta línea require( dirname( __FILE__ ) . '/wp-blog-header.php' )
por esta require( dirname( __FILE__ ) . '/wordpress/wp-blog-header.php' )
, siendo ‘wordpress’ el nombre de la carpeta de WordPress.
Lo de tener un WordPress por cada site sería la solución fácil pero habría que mantener cada uno de los sitios, tal como dices, y la idea es utilizar el mismo theme para todos los sitios por lo que si se hace un cambio de código en el theme se debería duplicar dicho cambio.
La solución que se me ocurre es que el sitio principal, estuviese en el dominio principal (example.com) y fuese un WordPress vacío, utilizado solamente para poder crear subsitios, pero preferiría tener una solución más limpia sin hacer esta triquiñuela.
Muchas gracias de nuevo.
Saludos.
-
Esta respuesta fue modificada hace 4 años por mikem33.
Hola @mikem33
Por lo que yo se, no podras hacerlo tal y como esta hecho el propio WordPress.
Como te comente antes la site principal siempre sera o el dominio o dominio/wordpress.
La solucion que tu comentas seria una alternativa bastante aceptable, creas el mustisite y añades x subdominios siendo el primero el principal y para evitar que se visualice en el front hacer un redirect del dominio al primer subdominio.