Sincronización de bbPress con WordPress

Como comente ayer, la entrada de hoy se dedicara a explicar los pasos que tenemos que seguir para que cuando nosotros o cualquiera de los editores de nuestro blog publique una entrada, automáticamente esta se sincronice en bbPress dentro de un foro que le especificaremos como por ejemplo “Publicaciones del portal”. A si mismo todos los comentarios que se dejen en la entrada del blog se sincronizaran y a parecerán en el hilo del foro (entrada del foro). También podemos hacer que funcione de forma inversa, es decir, que todos los comentarios que se dejen en el foro se sincronicen en el blog. Todo esto es configurable.

Para conseguir esto necesitaremos dos plugins, uno para cada plataforma. Los descargaremos y subiremos cada uno a su correspondiente directorio:

Ambos plugins los ha creado la misma persona, un ruso, así que tenemos como idiomas de configuración el ingles por defecto o el ruso, si así tuviéramos configurado el blog.

Como el idioma se encuentra en ficheros separados respecto al código, me he encargado de hacer una traducción en español de cada plugin, lo he intentado hacer lo mejor posible, sin embargo soy un negado en los idiomas y podría haber algún error en la traducción como alguna frase sin traducir, el de WordPres esta traducido al 100% y el de bbPress al 95%. Si alguien encuentra algún error o quiere mejorar la traducción es libre de hacerlo, y si me da un toque mejor que mejor así actualizaría los ficheros para el resto de usuarios que se lo descargasen 😉

Los ficheros son los siguientes:

  • WordPress – WordPress-bbPress syncronization Español
  • bbPress – WordPress-bbPress syncronization Español

Antes de empezar a configurar los plugins, quiero advertir que el plugin de WordPress puede que tenga algún error, concretamente en el fichero wpbb-sync.php, dentro del código las líneas hacen referencia al plugin de bbPress con la ruta: y aunque tengamos el plugin allí, en WordPress se nos advierte de que no se encuentra y que la URL esta mal. Al parecer bbPress usa directorios duplicados, unos que empiezan con la coletilla bb- que se supone que son los que se usaban al principio, y otros con la coletilla my- que son los que se usan ahora, que me corrija alguien si me equivoco.

El caso es que el plugin de WordPress no localiza al de bbPress, indiferentemente de donde tengamos el plugin ya sea en bb-plugins o my-plugins. Para solucionarlo pondremos el directorio completo del plugin del foro en bb-plugins y después nos descargaremos el fichero wpbb-sync.php del plugin de WordPress para editarlo con un editor de texto plano.

Una vez tengamos el fichero lo abriremos con nuestro editor de texto plano preferido, como notepad++. Ahora pulsaremos ctrl.+f para realizar una búsqueda y remplazo de la palabra my-plugins por bb-plugins y después pulsaremos en remplazar todo, al hacerlo se nos avisara de que se ha hecho el cambio cuatro veces, después guardaremos y subiremos  el fichero de nuevo.

Ahora ya estamos listos para empezar:

En el blog:

Primero nos vamos al panel de administración del blog, concretamente a la administración de usuarios, pues debemos de crear un usuario nuevo que se usara para que el foro pueda sincronizar los post del foro (comentarios del foro) en las entradas del blog de aquellos usuarios que no dispongan de una cuenta en el blog (podemos tener usuarios registrados en el foro y que estos no tengan permisos de nada en el blog).

Ahora vamos al apartado plugins, lo activamos y nos aparecerá este mismo apartado.

La configuración no es muy compleja, de los apartados imprescindibles se nos pide la URL del foro, un número secreto que compartirán ambos plugins y que podemos generar desde aquí, y al final del todo nos aparece la opción de activar el plugin, esta opción sólo estará disponible si ambos plugins están preparados así que pulsaremos en guardar cambios y ya regresaremos mas tarde cuando tengamos el plugin del foro configurado.

En el foro:

Vamos al panel de administración, al apartado plugins y lo activamos, podremos entrar a su configuración desde este mismo apartado.

Los das primeras opciones son comunes a lo explicado antes, ponemos la URL del blog y el mismo número secreto. Después se nos pide el foro en el que se publicaran las entradas del blog, si no lo hemos creado antes lo haremos ahora. Un poco más abajo se nos pide el ID el usuario que creamos en el blog, para saber como sacar ese ID podemos mirar la base de datos o aun mas fácil, desde el enlace de ayuda que he puesto en la traducción 😉

Por ultimo, en la parte inferior nos aparece la opción de activar el plugin, que igual que en el blog no podremos marcar hasta que guardemos los cambios, así pues, guardamos y ya se dejara pulsar. Volvemos al blog, guardamos de nuevo y activamos también el plugin.

Por cierto, el resto de opciones que nos hemos dejado las tendremos que configurar según nuestras necesidades y como ya hay ayuda y esta en español no me voy a alargar aquí. Si alguien tiene dudas sólo tiene que preguntar.

Ya tendremos todo listo y preparado para funcionar : )

5 comentarios en “Sincronización de bbPress con WordPress”

  1. Hola!

    Gracias por tu post, lo he probado y no termina de funcionar, podrías especificar un pelín las rutas exactas que pones para poder hacer la sincronización?

    No se porque edito el php, lo he movido ya a un monton de sitios a ver porque era y nada…

    saludos!

    1. Hola ‘me’:

      El plugin de bbPress lo tengo en:
      h*ttp://giltesa.com/foro/bb-plugins/wordpress-bbpress-syncronization/bbwp-sync.php

      Y el de WordPress en:
      h*ttp://giltesa.com/wp-content/plugins/wordpress-bbpress-syncronization/wpbb-sync.php
      En este ultimo hay que tener en cuenta que en el código que tiene, concretamente en cuatro direcciones con la ruta my-plugins, hay que sustituirla por bb-plugins.

      Después dentro de la configuración del plugin de WordPress le tengo puesto la ruta de la raíz de bbPress, es decir: h*ttp://giltesa.com/foro/. Y en el caso del plugin de bbPress tengo: h*ttp://giltesa.com/, luego él ya completa las rutas correctamente.

      Sin los * de las URLs

      Saludoss

    2. Gracias por contestar tan pronto.

      La verdad sigo sin distinguirlos.

      Yo tengo estas rutas :
      C:\xampp\htdocs\wordpress\wp-content\plugins\wordpress-bbpress-syncronization\wpbb-sync.php

      Este es mi directorio general de instalación del pluggin.

      Me he creado la ruta personalizada : http:/localhost/wordpress/foro

      Mi gran problema es al poner en bbPress syncronization , esta url es la que pongo mal y la que no se dirigir.

      No se si me he explicado bien… básicamente es lo de la URL del bbpress sincronization que esque no hay manera.

      Gracias!!

    3. Hola, ¿Qué es lo que no distingues?

      Me parece que estas mezclando las rutas de los directorios de windows con las del servidor virtual xampp.

      El funcionamiento de la sincronización se basa en dos plugins distintos que se comunican entre si digamos. Es por ello que el plugin de wordpress necesita la dirección del directorio raíz de bbpress, y de mismo modo que bbpress necesita la dirección del directorio raíz de wordpress, quedando así la cosa:

      La raíz de tu «host» es:
      http://localhost/

      Dentro tienes varios directorios, cada uno de ellos con, por ejemplo, diferentes gestores de contenido o lo que sea, da igual.
      Uno de esos directorios es el de wordpress con la siguiente ruta que es su raíz:
      http://localhost/wordpress

      Normalmente si se quisiera instalar otro gestor de contenidos se instalarías en:
      http://localhost/otro-cms

      Sin embargo, como el foro es parte del blog se decide instalarlo en un subdirectorio de la raíz de wordpress, es decir:
      http://localhost/wordpress/foro

      Entonces la raíz del foro es:
      http://localhost/wordpress/foro

      Sabiendo esos datos, en principio, solo hay que configurar cada plugin como comento:

      Por una lado primero configuramos el plugin de wordpress, de los primeros campos que salen se nos pide que le introduzcamos la raíz de bbPress, es decir:

      http://localhost/wordpress/foro
      También se pide que pongamos una SecretKey, este es el mismo número para ambos plugins
      Con esas dos cosas ya configuradas, guardamos los cambios.

      Ahora en el plugin de bbpress lo configuramos:

      Se nos piden los mismos campos, en el primero de ellos la URL de la raíz del blog, es decir:
      http://localhost/wordpress
      Y de nuevo la SecretKey, la que pusimos en el blog. Le damos a guardar cambios y se debería de activar la opción de sincronizar, la marcamos y guardamos de nuevo, ahora en el blog veremos que también esta disponible, la marcamos también y guardamos los cambios.

      Y ya te debería de ir, no perfecto pues también hace falta este plugin para que el uso de las cookis sean perfectas.

      Saludos

    4. Gracias!

      Voy mejorando ya, ahora «solo» tengo error de SQL:
      Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\wordpress\foro\bb-settings.php on line 186

      Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\wordpress\foro\bb-includes\backpress\functions.wp-object-cache.php on line 108

      Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\wordpress\foro\bb-includes\backpress\pomo\mo.php on line 171

      Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\wordpress\foro\bb-includes\functions.bb-l10n.php on line 484

      Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\wordpress\foro\bb-includes\backpress\class.wp-taxonomy.php on line 581
      If you see that, plugin must connect well. WordPress test response (must be a:1:{s:4:»test»;i:1;}):

      Me pelearé un poquillo más.

      Muchas gracias!

Escriba aquí su comentario