axew3.com

WordPress phpBB integration
WP_w3all integration help install docs

NOTICE:

new the install steps help is here

https://www.axew3.com/w3/wordpress-phpbb-integration-install/

THIS PAGE IS OBSOLETE

follow this instead:

THIS IS OBSOLETE

WP w3all phpBB, the WordPress  phpBB integration plugin, provides users cookie based login/registration integration between WordPress CMS and phpBB Forum  installations on the same domain or subdomain.
It is easy, light, secure, and powerful.

You could skip directly to either the Common How To section or to the Install and Configure WP_w3all plugin section, both below on this install help page. However, it is strongly recommended that you read all the information, and the After Install Help section at the bottom of this page, in order to get idea on several ways you can choose to integrate phpBB and WordPress and how generally it work.

WP_w3all enables seamless user interaction between WordPress and phpBB as a single cohesive unit, despite the WP and phpBB CMS files and databases being completely separated. WP_w3all is secure and runs efficiently. It only adds a few rows into the WordPress Options database table, and nothing at all into the phpBB forum databases. Therefore, you can remove WP_W3all at any time, and it will be completely cleaned up.

What you MUST know:

read ALL the following instructions carefully before proceeding with the installation

WP_w3all is constantly tested using latest WordPress and phpBB default releases. The Minimum phpBB version required is 3.1 or better (Note: If you wish to provide integration without necessarily  linking the users, it will (may) work with any old phpBB version). Remember: this is a WP plugin. It does not add anything into phpBB other than user accounts when an user  registers via the WP side, nor will the plugin modify any of its code. The same goes for WordPress (except the addition of a few rows into WP Options database table, that are completely removed when you uninstall the plugin).

It is required that the default profile fields in phpBB exists (or on update profile fields, changes not affect, except for Email address and Password): read this post if you added custom profile fields for users in phpBB, or you removed some default phpBB profile field, and you may want also the user URL updated, that is the unique notable and available field into a WordPress default install. For Buddypress profile fields (advanced) follow the same link above.

WP MU-MS (Network installations) read !important note about how to activate this feature and how WP_w3all need to be configured on each subsite: WP_w3all for WordPress MS MU (Network installations)


If you wish to install the plugin to display phpBB content into WordPress using Widgets or Shortcodes, without linking users between WordPress and phpBB also cross domain, then following steps here are not required (but see the Common How to more below) and you need to follow this instead:
WordPress phpBB integration without linking users


The phpBB install admin (uid 2) is logged in, on WP, as WP install admin (uid 1), and viceversa, also if they have been created with different usernames. If installation is done by an admin that isn’t the default install admin in WP, it is MANDATORY that an user with same username and email address, exists also in phpBB. So, if user superuser with email superuser@me.you is the admin installing the plugin in WP, and it isn’t the default WP uid 1 install admin, then an user superuser with email superuser@me.you, need to exists also into phpBB.
NOTE:
if you’re installing the plugin using uid 1 (default WP install admin), then the phpBB install admin uid 2 need to exist into phpBB, for the same reason. Read more below the first important note about this into After Install Help section

Users can login/out/register on both sides (if you allow this on respective admin settings) phpBB or WordPress, using respective login/registration forms. If there are existent old WordPress users when integration start, they need to be transferred into phpBB using the WP_w3all users transfer option. Old phpBB users are added into WordPress automatically, when as logged in they visits WP first time, or when they login WP first time (also if there is available the phpBB to WP users transfer option, that by the way isn’t a mandatory step to execute when integration start). Old phpBB users, need to use their password to login. Old transferred WP users can login using their WP password in WP, but these old transferred WP users may have to reset their password to correctly login using the phpBB login side. Read more about existent old WP users transferred and their password behavior when integration start into After Install Questions Help more below.
NOTE: if you want to force user addition also into WordPress when user register in phpBB check this: add user at same time into WordPress when register/login in phpBB side

You need to setup phpBB forum permissions options to NOT ALLOW users to change their usernames on their profile or re-use email for different accounts because these are possible features in phpBB but not in WordPress.

The most important things you need to be sure to successfully install this plugin are 3:
1) the cookie setting in phpBB. If after installation you experience a problem on login in WordPress, it is maybe caused by wrong cookie setting in phpBB. The phpBB cookie setting on ACP, need to be setup to be available over all the domain, and you may have to clean cookie on your browser (follow read).
2) the fact that in phpBB need to exists an user with same username and same email address, like the one that is installing the plugin in WordPress (possibly already logged in phpBB when installing the plugin, but this not affect nothing except the fact that if a valid phpBB cookie isn’t found when plugin become active, the installer user will be logged out: use the phpBB pass of this user to re-login in WP at this time, if it is different by the WordPress password). If you’re installing with the WP admin installer UID 1, then also the installer admin UID 2 in phpBB need to exist. If not, select option to not link the installer WP UID 1 with the admin UID2 in phpBB, before to activate the plugin adding path to a phpBB config.php file. You can use any WP admin to install the plugin, maybe create a new one in this case, and check that an user with same username and same email exist also in phpBB.
3) the Path setting that need to point to a valid (custom or phpBB root) config.php phpBB file. When the path to a correct phpBB config.php file has been setup, the plugin become effectively active.
Check well, and execute in order these points and you’ll be up and running in minutes without any problem. Just follow Install and Configure steps here below, will be easy  and short …
If any problem and to correctly uninstall the plugin in any case, remember to refer to the Common How To section where How to: no panic instructions.

It is also time to inform all lovely and cool people about how bad is my English … i’m sorry!

Install and Configure wp_w3all plugin

phpBB side

change username and email permissions

If haven’t been set already, you need to configure phpBB permissions for ALL users to NOT ALLOW changes to their usernames, and NOT ALLOW email address re-use. Check that this is it for all your phpBB users (unique email for unique account)

So on ACP under
BOARD CONFIGURATION -> User registration settings

Allow username changes: set to NO
Allow email address re-use: set to NO

Save settings.

limit username chars

like above,

on ACP under
BOARD CONFIGURATION -> User registration settings -> Limit username chars:

DO NOT choose the Any character, or ASCII option. Instead choose from the others available: Any letter, Number and Spacers, or Alphanumeric options.

(What about old phpBB usernames that contains characters not allowed in WordPress?)

Save settings.

Set the phpBB cookies to be available across the entire domain:

Go under ‘phpBB ACP admin -> Server Configuration -> Cookie Settings’
Set the Cookie domain value as (for example):
.yourdomain.com

NOTE: if localhost, may leave the value as is, localhost. If on subdomain, like mysub.mysite.com, set it as above using only domain name so .mysite.com
(older browsers still implementing the deprecated » RFC 2109 may require a leading . (dot) to match all subdomains, so .mysite.com)

Cookie path set as single fraction slash: /

If changed, save settings, logout, clean the cookies on your browser, and log back into phpBB.

NOTE: if cookie setting changed to be available over all domain because it was not, then you may want all phpBB users to re-login using new board’s cookie settings: to force all phpBB users to re-login in case they saved their session cookie with a ‘remember me login’, it can be done by accessing phpBB ACP main page, check for option
Purge all sessions
Purge all sessions. This will log out all users by truncating the session table.
Click the Run now button.
Be sure that the cookie setting is correct before to execute these steps.

NOTE: if your installations are on subdomains (ex: myforum.mysite.com), and you choose to not use/include the custom phpBB config.php file (so you go to activate the plugin by setting the path to point/include the root phpBB config.php file) you may read this help post about correct file inclusions on subdomains:
disable open_basedir in your php.ini
If installations are on subdomains it is better you choose to include a custom phpBB. See WP admin -> wp_w3all config page about Path setting or follow the help link to setup the custom phpBB config.php file.
NOTE: This is also recommended (that you include/use a custom phpBB config.php file) because some plugin will interfere with db connection, so if some error with some plugin and his db connection, this is the way to resolve any incompatibility.

in phpBB ACP under option Security settings:
Option: Allow “Remember Me” logins
set to: YES

Option Validate browser set to: YES

WordPress side

Install WP w3all WordPress phpBB integration plugin, so on WP admin open -> Settings -> WP w3all

Before to setup the path setting to a phpBB config.php file, that will effectively activate the plugin, be sure that the admin username  you are logged in WordPress, exist also into phpBB*. If not exist, create manually the same user with same username and same email address in phpBB, or you will not be able to re-login with this user into WordPress after path setting setup (note: using install admin on WP (id1), that is recognized as install admin in phpBB (id2), even if they have been created with different usernames, this not affect). You can create the same user in phpBB at any time if you’ve lost this step. You can also ever disable/remove the plugin with easy. Read After Installation Help on bottom. You can also choose option to not link the admin uid 1 of WordPress.

Path setting

(*Read the above warning about same user in phpBB need to exist)
Set the absolute full path to the phpBB config.php file (do not add final slash). Read on wp_w3all admin config page hints about this step, the example and help is here:
absolute path how to help
Path Example using the manual WP_w3all phpBB config.php:
/web/home/htdocs/w3/wp-content/plugins/wp-w3all-config
Path Example using phpBB config.php of the phpBB root folder:
/web/home/htdocs/w3/phpbb

URL SETTING

If phpBB is installed at https://www.axew3.com/w3/phpbb

the URL setting will be: https://www.axew3.com/w3/phpbb

NOTE: If your WordPress is served under https, then force also phpBB to be https, and vice versa, or http, if WP is http. See this post in case it is needed an help on how to resolve this: https/http for WP and phpBB integration

If there are existent WordPress users, activate wp_w3all transfer,
and add all old existent WordPress users into phpBB.
This is a mandatory step
Activate, configure and save Login and Topics Last Posts Widgets if needed

Done

WP_w3all users integration between WordPress and phpBB is ready to run

To embed phpBB into a WordPress page with iframe height responsive, follow read. Iframe or NOT

read also all the After Install Questions Help and the Common How To section more below on this same page

Template embed phpbb into WordPress

If you wish to follow adding the phpBB responsive embedded iframe into a WordPress page:

open Settings WP_w3all, under WP_w3all -> phpBB embedded on WordPress Template option
READ with care all inline hints and instructions, and avoid know problem: WP page named like the phpBB install folder and that reside into same WP root. After created the template forum page (this step is mandatory even if you add manually the template page into the WP template folder) on wp_w3all and the iframe links option activated, and the blank WP page  created, finalize following this procedure:



Common How To:

How to: no panic instructions

How to secure your phpBB WordPress integration

How to WordPress Multisite: WP_w3all for WordPress MS MU (Network installations)

How to SHORTcode – phpBB PM notification in WordPress

How to SHORTcode – to parse/display phpBB posts into WordPress

How to SHORTcode – last phpBB topics/posts into WordPress

How to SHORTcode – last phpBB topics/posts into WordPress by Forums IDS

How to SHORTcode –  last topics grid in WordPress with topic’s attachment (img or file)

How to SHORTcode – phpBB RSS last posts and/or any other FEED into WordPress

How to SHORTcode – w3all custom iframe

How to style widgets and shortcode output if they need to be adjusted to look like my theme

How to force users addition in WordPress when they register OR login only in phpBB side

How to set cookie in phpBB to be available on domain and subdomains

How to WordPress phpBB integration without linking users

How to WordPress and Buddypress phpBB full profile fields integration

How to WordPress and phpBB mChat integration

What about phpBB usernames that contains characters not allowed in WordPress?

For several more answers check Sticky Posts on phpBB WordPress forum (and possible add or improve one) and on WP_w3all – phpBB and WordPress – common help forum

After Install Questions Help

the plugin code, recognize the User ID 1 in WordPress as user ID 2 in phpBB, despite may created with different usernames. They are install admins.

BEWARE that in WordPress, if for example you created an username admin that is NOT the installer user WP user ID1, and in phpBB the installer user with ID2 is named admin, than it can lead to unpredictable results! It will not lead to security problems, but to messes on profile updates actions.

So remember that if the username ID1 (installer) in wordpress, DO NOT have the same username of the UID2 (installer) in phpBB, you need to be sure that the username in phpBB DO NOT EXIST and will not be used! If it already exists and you do not want to remove, then be sure it is under your control (to be sure about security 100%) and may activate the option that UNLINK userID1 in WP and phpBB userID2. If this username do not exist in phpBB, may add this username to the list of  Reserved Usernames in phpBB acp, so users can not use this username when they register in phpBB (if you let users register in phpBB also).

WHAT ABOUT phpBB BANNED USERS?
Banned users in phpBB can’t login or register in WordPress.
The banned phpBB user (by username, IP or email) will result effectively banned also in WordPress.

UPDATING PHPBB to a more recent version: it’s required that you disable registrations and the WP_w3all plugin in WordPress.
Correct procedure:
disable wp_w3all plugin on WP admin, and disable registration in WordPress, remove the phpBB overall_header.html javascript code if applied, set recompile stale templates to yes (or may disable javascript on browser, that’s the more fast way).
Re-enable options after phpBB has been updated.

THE VERY FIRST TIME after wp_w3all has been installed (the phpBB absolute path to phpBB config.php has been correctly set on wp_w3all config settings page), the installing WP admin could be logged out due to the fact that still there is not a valid phpBB cookie. At this time the password to login in WP for this user will be the password of phpBB.

NOTE: you may have to clean cookies on your browser if you experience problems on login. Use the default WP login page to login and test all is working ok if experiencing any problem on login WP side.

Important note about Profile and profile fields: any profile fields (URL, EMAIL and PASSWORD) modification/update, if done in WordPress by admin or user, is done at same time also on phpBB. Instead, any profile modification about url, email and password done on phpBB side by admin or user, is updated on WordPress when the same edited username will visit WordPress side. In this way, user experience do not change, admin experience instead can be confused, if you are not noticed about this behavior (that is maybe obvious, because this is just a WordPress plugin, that so run only on WP side).

NOTE: if you want to force user addition also into WordPress when user register OR login in phpBB check this:
Add user at same time into WordPress when register/login in phpBB side

So, if the above trick isn’t applied, and you let register users in phpBB side, an admin could see that in WP admin Users Lists, still not exist an user, that instead exist in phpBB. This simply mean that the user registered into phpBB, but this user still have not visit the WP side, so has not still been added into WP. If updates or registrations are done in phpBB side, the update or addition of the user, will be done in WP when the same user, as logged in, will visit WP side (or when will login on WP side) for the reason: remember that this is a WP plugin! It is possible to use these features for different scenarios, adapting any aspect with easy. Remember also, that if default phpBB profiles fields have been modified, then may only email and password will be updated when user updates done in WordPress. !note The “at same time user addition in WordPress when user register in phpBB”, happen without tricks if on iframe mode due to Javascript code.

If you DELETED or ADDED custom user’s profile fields into phpBB, read this: WordPress and Buddypress phpBB full profile fields integration

As said more above, it is required that default profile fields in phpBB exists (or on update profile fields, changes not affect, except for email address field and password). Remember: profile changes, updates at same time if update is done on WP side, when user will visit WP side, if profile update is done in phpBB side.

A deleted user in WordPress, will be deactivated (not deleted) in phpBB at same time.
How to DELETE USERS on both CMS: wp_w3all do not add a delete option for users, but you can remove users on both phpBB and WP with easy in this way: delete users in WordPress, so wp_w3all will set as deactivated in phpBB all these deleted WP users accounts: go in phpBB ACP, choose -> Users and Groups TAB: prune/delete (in one click) all phpBB deactivated users accounts (use with care powerful phpBB options about this!) at once.
More about DELETION of users: you could use this behavior as an antispam method: a deleted  user in WP with WP_w3all plugin active, is deactivated into phpBB, until admin do not change his state. And until the user isn’t removed or reactivated in phpBB, the associated username/email, will not more be able to login/register in WP.

About users permissions, and how they are added on WP. On phpBB, users groups legend say: “Pre-defined groups are special groups, they cannot be deleted or directly modified. However you can still add users and alter basic settings”. Based on this, the WP w3all plugin will add users on WordPress, following this rules:

  • Administrators on phpBB = Administrators on WP
  • Global moderators on phpBB = Editors on WP
  • All others phpBB groups = Subscribers on WP
  • NOT active users in phpBB = not added in WordPress

If there are existent users on WP when you start the integration, it is mandatory to transfer WP users into phpBB with the transfer process (old existent phpBB users are added on fly when they login in WP side or when they visits as logged in phpBB the WP side).

PASSWORDS NOTE: an OLD EXISTENT WP transferred user, is transferred in phpBB with his WP password. If the old WP password contain special chars inside, then maybe this user (may not) will have to reset his password in order to be able to login using the login in phpBB (or need to reset the pass one time on WP or phpBB, than the pass will be updated and recognized by both WP and phpBB login). Once the integration is running, passwords for users in WordPress are stored using the phpBB hash. Once the plugin will be uninstalled, WordPress will not be able to recognize these passwords, so WordPress users will need to reset the password to correctly login in WordPress.

WP MU-MS (Network installations) please read carefully this:
WP_w3all for WordPress MS MU (Multisite, Multiuser network installations)

About permalinks: if you are using plain permalinks into your WP, for the specific forum page, you’ll set manually the Permalink when you create or edit the page for the embedded forum. The WP page Permalink that will contain the forum iframe, need to contain the name of the page you have choose into wp_w3all config page as forum template page name.

There are some useful Sticky Posts on WordPress phpBB forum you may can check (or contribute to) for furthers common helps.

How i can DISABLE THIS PLUGIN to test, or disable it to remove safely without problems? Normally you’ll remove/disable this plugin completely as any other plugin! You can also remove the path setting on WP_w3all config page or set it wrong for testing purpose: when red info about path setting display, the plugin not affect in any way WordPress. If any HELP i’m in trouble! No panic. If using manual config path to custom config.php file folder, it is also possible to open the config.php file and reset the line

@define('PHPBB_INSTALLED', true);

to

// @define('PHPBB_INSTALLED', true);

If you’re using the default root phpBB config.php file included, you can do the same into the phpBB config.php file (but in the while the board will result as not installed!), SO better way,

open wp_w3all.php file, more or less on top of the file you’ll find this code:

// Force Deactivation WP_w3all plugin // to clean uninstall if something goes wrong
// $w3deactivate_wp_w3all_plugin = 'true';

remove // chars in front of second line:

$w3deactivate_wp_w3all_plugin = 'true';

In this state, the plugin is disabled and not affect in any way WordPress.

This essential wp_w3all working online installation example at axew3.com, is updated and run with: latest available WordPress and phpBB releases.
Run fine tested on WordPress 5.0 or > AND phpBB 3.2 or >

Said that, here we go!

WP w3all phpBB – WordPress phpBB integration plugin