streamingmenntun
Respuestas de foro creadas
-
Foro: Instalación – Actualizaciones
En respuesta a: Problema para al conectar dos wordpressantes de leer tu respuesta solucione ese problema de la siguiente manera cargue un pluguin en la plataforma A la cual me permitía entrar sin problemas con el siguiente codigo que encontré:
<?php /* Plugin Name: Duplicate Caps Plugin URI: Description: Tiny plugin to duplicate capabilities in a setup where users (and user tables) are shared across more than one install Author: Mikk3lRo Version: 0.1 Author URI: */ $dummy = new duplicate_caps(); class duplicate_caps { function __construct() { add_action('updated_user_meta', array($this, 'update_prefixed_caps'), 10, 2); add_action('added_user_meta', array($this, 'update_prefixed_caps'), 10, 2); add_action('deleted_user_meta', array($this, 'update_prefixed_caps'), 10, 2); } function update_prefixed_caps($mid, $object_id) { /** * Note that $object_id contains the id of the user that was * just changed. * On a site with many users it would make sense to only * get and set information regarding the just-changed user * Currently this function corrects roles for all users * making sure pre-existing users are duplicated, and keeping * the table in sync. */ global $wpdb; //Quick and dirty - get all *capabilities rows for all users $sql = "SELECT * FROM {$wpdb->usermeta} WHERE <code>meta_key</code> LIKE '%capabilities'"; $results = $wpdb->get_results($sql) or die(mysql_error()); //Will hold all prefixes (always include our own) $prefixes = array($wpdb->prefix); //Will grab the existing role for each prefix $user_roles = array(); //Loop our results foreach ($results as $result) { //Make sure the meta_key looks right, and grab the prefix if (preg_match('#^(.*)capabilities$#', $result->meta_key, $matches)) { $prefix = $matches[1]; // Collect prefixes $prefixes[] = $prefix; //Note the entire row for later use $user_roles[$result->user_id][$prefix] = $result; } } //Make sure we only have one of each $prefixes = array_unique($prefixes); //Loop through the users we found foreach ($user_roles as $user_id => $existing_prefixes) { if (!isset($existing_prefixes[$wpdb->prefix])) { //User was probably just deleted - all rows are deleted by //wordpress though, so no cleanup for us :) } else { //We want all prefixes to obey us (we just created or changed //the user, so we want that to affect all sites) $desired_role = $existing_prefixes[$wpdb->prefix]->meta_value; //Loop through all prefixes foreach ($prefixes as $prefix) { //Data to be inserted / updated $cap_data = array( 'user_id' => $user_id, 'meta_key' => $prefix . 'capabilities', 'meta_value' => $desired_role ); //If the prefix doesn't exist for this user if (!in_array($prefix, array_keys($existing_prefixes))) { //Actually insert it (user was probably just created) $wpdb->insert($wpdb->usermeta, $cap_data, array('%d', '%s', '%s')); } else if ($desired_role !== $existing_prefixes[$prefix]->meta_value) { //Update it if not already correct (user was probably just edited) $cap_data['umeta_id'] = $existing_prefixes[$prefix]->umeta_id; $wpdb->replace($wpdb->usermeta, $cap_data, array('%d', '%s', '%s', '%d')); } } } } } }
luego cree un nuevo usuarios con rol de administrador en la plataforma a y con ese me permitió entrar a la plataforma b una vez que ingrese le cambie el rol a mi usuario como administrador el cual me lo mostraba en blanco lo que quiere decir que por alguna razón no sirvió duplicar las filas en user_meta, no fue la manera mas ortodoxa pero funciono… ahora bien me sale otro problema, cuando registro un nuevo usuario en la plataforma b e intento ingresar en la plataforma a me dice que la contraseña es incorrecta, es decir me registra el usuario pero tengo que pedir cambiar contraseña alguna idea del porque puede estar pasando esto? debo aclarar que una vez resuelto el problema de no poder ingresar como administrador cargue el mismo pluguin en la plataforma b
- Esta respuesta fue modificada hace 4 años, 3 meses por streamingmenntun.
Foro: Instalación – Actualizaciones
En respuesta a: Problema para al conectar dos wordpresscomento las lineas y efectivamente me deja ingresar sin problemas ambos usuarios administrativos son el mismo documentandome un poco mas lei que en la taba user_meta tenia que duplicar las filas (prefijo1)_capabilities y
(prefijo1)_user_level y cambiar el prefijo1 por el prefijo2 enlos duplicados pero me continua dando el problemaForo: Instalación – Actualizaciones
En respuesta a: Problema para al conectar dos wordpressEl sitio A mantiene el prefijo wp_ el Sitio B agregue el prefijo go_
los archivos de configuración son idénticos de hecho realiza un clon del sitio anterior y solo modifique el tema
las lineas agregadas al archivo de configuración al segundo sitio fueron:
$table_prefix = 'go_';
sobre la linea
/* That's all, stop editing! Happy blogging. */
agregue
define('CUSTOM_USER_TABLE', 'wp_users'); define('CUSTOM_USER_META_TABLE', 'wp_usermeta');
- Esta respuesta fue modificada hace 4 años, 3 meses por streamingmenntun.