Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

Convertir plugin en plugin multisite

Estas en el tema de Convertir plugin en plugin multisite en el foro de WordPress en Foros del Web. Hola, resulta que tengo un plugin que quiero que haga lo siguiente: - Si se conecta desde Activar para toda la red ocultar el menu ...
  #1 (permalink)  
Antiguo 05/04/2013, 04:56
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Convertir plugin en plugin multisite

Hola, resulta que tengo un plugin que quiero que haga lo siguiente:
- Si se conecta desde Activar para toda la red ocultar el menu de ajustes que creo con add_options_page() ( para un sitio sin multisite ) y añadir ese menu en el network admin.
Diria que se crea ese menu con network_admin_menu
- Dar la opcion de activar ese menu y guardar las opciones en la db de la site que sea. Es decir independientemente de las opciones que inserto en la db para todos.
(Lo he probado pero me lee las opciones de la tabla wp_sitemeta o de options del blog 1 )

He mirado por google pero no he encontrado nada al respecto y en el tema de multisites no me he metido mucho, pero basicamente necesitaria alguna orientacion para decirle al plugin que hacer en cada caso, se que existe is_multisite, get_site_option, etc... pero no doy con la manera correcta de recuperar o guardar las opciones.
  #2 (permalink)  
Antiguo 05/04/2013, 07:24
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 7 meses
Puntos: 297
Respuesta: Convertir plugin en plugin multisite

Sinceramente, no he entendido nada.
__________________
Freelance Developer — www.rubenmartin.me PHP, SQL, Wordpress, Prestashop, Codeigniter, Laravel
RegaloConsolas — www.regaloconsolas.com Sorteo juegos, consolas y accesorios
  #3 (permalink)  
Antiguo 05/04/2013, 08:05
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Respuesta: Convertir plugin en plugin multisite

jaja, disculpar

Tengo un plugin y quiero añadirle unas opciones por si se usa en un sitio multisite y mostrar o no las opciones globales.
Si lo activo desde el network admin añadirle un menu solo en el escritorio de network admin y dar la opcion de mostrar o no las opciones generales del plugin en los sitios (añadir un submenu en ajustes) y poder guardar las opciones para cada sitio, sin importar que opciones tenga guardadas en la pagina de opciones del network admin.

Lo que no se es como usar get_option, add_option, delete_option si para sitios multisite se usa get_site_option, add_site_option, delete_site_option.

Podeis ver el plugin en el github pero sin soporte multisite

Espero haberme explicado mejor ahora.
  #4 (permalink)  
Antiguo 05/04/2013, 13:03
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 14 años, 9 meses
Puntos: 429
Respuesta: Convertir plugin en plugin multisite

No sé si te servirá esto pero por si las moscas puedes echarle un vistazo: http://shibashake.com/wordpress-them...ess-multi-site
__________________
Mi blog personal | Mi G+
  #5 (permalink)  
Antiguo 05/04/2013, 15:23
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 7 meses
Puntos: 297
Respuesta: Convertir plugin en plugin multisite

A lo mejor lo que digo es un poco tanto, pero no puedes usar un condicional como el siguiente:

Código PHP:
Ver original
  1. if ( is_multisite() )
  2.     get_site_option( [...] );
  3. else
  4.     get_option( [...] );
__________________
Freelance Developer — www.rubenmartin.me PHP, SQL, Wordpress, Prestashop, Codeigniter, Laravel
RegaloConsolas — www.regaloconsolas.com Sorteo juegos, consolas y accesorios
  #6 (permalink)  
Antiguo 06/04/2013, 02:00
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Respuesta: Convertir plugin en plugin multisite

Hola chic@s,
@zanguanga gracias por el enlace, lo mirale despues.
@hasdpk is_multisite el problema es que si una site guarda sus datos no usaria get_option sino get_site_option y es aqui uno de mis problemas.
Saludos
  #7 (permalink)  
Antiguo 06/04/2013, 03:16
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 7 meses
Puntos: 297
Respuesta: Convertir plugin en plugin multisite

Por eso cree la consulta con un if. Is_multisite() devuelve True o False dependiendo si Wordpress está activado para multisite.

Yo creo que es la mejor solución que puedes encontrar ahora.
__________________
Freelance Developer — www.rubenmartin.me PHP, SQL, Wordpress, Prestashop, Codeigniter, Laravel
RegaloConsolas — www.regaloconsolas.com Sorteo juegos, consolas y accesorios
  #8 (permalink)  
Antiguo 06/04/2013, 03:41
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Respuesta: Convertir plugin en plugin multisite

Si eso es correcto pero lo que me gustaria hacer es dar la posibilidad de usar get_option y get_site_option dependiendo de que el superadmin seleccione un input en su pagina de opciones, y asi el usuario de una site poder configurarlo independientemente de las opciones del super admin, lamento no saber explicarme mejor, un ejemplo:
El super admin activa el plugin para toda la red y configura el plugin y decide dar la opcion de que el usuario de x site lo configure por su cuenta con lo cual activaria el menu de opciones.
La duda que tengo es como saber que x site es y como hacer para que las opciones se guarden en su respectivo wp_options (su BD).
  #9 (permalink)  
Antiguo 06/04/2013, 04:40
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 7 meses
Puntos: 297
Respuesta: Convertir plugin en plugin multisite

Sino me equivoco el *_site_option sabe perfectamente que blog/id es cuando ataca a la base de datos, lo puede ver en la línea 771 del siguiente enlace: http://core.trac.wordpress.org/brows...ption.php#L759

Con esto te quiero decir que Wordpress multisite se encarga de distribuir las opciones por separado de cada blog y que el mismo se encarga de ello.
__________________
Freelance Developer — www.rubenmartin.me PHP, SQL, Wordpress, Prestashop, Codeigniter, Laravel
RegaloConsolas — www.regaloconsolas.com Sorteo juegos, consolas y accesorios
  #10 (permalink)  
Antiguo 06/04/2013, 05:01
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
Respuesta: Convertir plugin en plugin multisite

Hola,
he estado mirando plugins y usan switch_to_blog para guardar las opciones en las sites ya creadas o nuevas. Creo que sera la mejor opcion y creare un if para permitir mostrar el menu y modificar las opciones pero sin alterar las opciones que el super admin tiene.
Referente a la funcion yo entiendo que si usas *_site_option pero no esta activada la multisite actua igual que si se usa *_option y si esta activa guarda las options en *_sitemeta que se usa para opciones globales.

Etiquetas: blog, plugin, tema
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:40.