BBPress 2.6.6 to SMF 2.0.17 - Success!!

Started by GL700Wing, December 04, 2020, 02:40:09 AM

Previous topic - Next topic

GL700Wing

I've just successfully converted a BBPress 2.2.6 forum to SMF 2.0.17.

I started with the BBPress 0.8.3 converter but as it's for an older version of BBPress I needed to update it to work with version 2.6.6.

I don't know how many - or which - versions of BBPress the forum I migrated has been through since it was created in early 2008 but the greatest challenges I dealt with were the variety of ampersand and apostrophe characters that sometimes needed to be escaped or converted and also multi-byte characters (eg: "Â"; "’"; "“"; 'â€"' and 'â€') in the subject/body of some messages that needed to be converted (unfortunately I couldn't just use mb_check_encoding/mb_convert_encoding for every message as it messed up too many messages that didn't need the encoding converted).

I've attached a copy of the SQL script I used with 'convert.php' and it has the following features:
1.  Makes a copy of the BBPress 'users' table, replaces '&' characters in 'user_login' field with '&', and copies 'user_login' to 'display_name' for members that don't have a 'display_name' set;
2.  Copies the admin account the SMF forum being used for the migration to a table named 'members_admin' so that the SMF admin account can be reinstated following the migration (this removes the need to know the BBPress admin account name and/or password);
3.  Extracts the signature, avatar link, last login date and number of posts for each member from the BBPress 'usermeta' table;
4.  Sets 'id_cat' to 1 and 'member_groups' to '-1,0,2' for all boards;
5.  Converts image URL links to [img][/img] BBCodes, replaces opening [quote quote= BBCodes with [quote= BBCodes in all messages, added BBCode replacements for <b></b> and <i></i>, and only imports published topics/replies into 'smf_messages'; and
6.  Replaces multi-byte characters and smart quotes/characters with plain text equivalents.
7.  Extracts the number of replies for each topic from the BBPress 'postmeta' table.

I've also added some post-conversion tasks most of which are for stuff I haven't been able to work out how to do during the conversion process - these include:
1.  Reinstating the SMF admin account;
2.  Re-adding the '&' character that removed from the HTML ampersand and apostrophe entities in the value in the 'member_name' column in the 'smf_members' table;
3.  Removing backslashes that were added before single quotes/apostrophes and double quotes in member signatures, board descriptions, message subjects and message bodies;
4.  Add the board ID to all messages and the topic subject to all replies;
5.  Add the 'email_address' and 'poster_name' to all messages; and
6.  Create a 'poster_name' using the text 'Member ID' with 'id_member' when 'poster_name' is blank (This can happen when the member account has been deleted).
Life doesn't have to be perfect to be wonderful ...

Isabella Smith

I know this is an old thread, but thanks to your step-by-step guide I managed to do the same.

So thanks for sharing!

vbgamer45

@GL700Wing can I merge these changes with the main convertor?
Community Suite for SMF - Take your forum to the next level built for SMF, Gallery,Store,Classifieds,Downloads,more!

SMFHacks.com -  Paid Modifications for SMF

Mods:
EzPortal - Portal System for SMF
SMF Gallery Pro
SMF Store SMF Classifieds Ad Seller Pro

GL700Wing

Life doesn't have to be perfect to be wonderful ...

vbgamer45

Community Suite for SMF - Take your forum to the next level built for SMF, Gallery,Store,Classifieds,Downloads,more!

SMFHacks.com -  Paid Modifications for SMF

Mods:
EzPortal - Portal System for SMF
SMF Gallery Pro
SMF Store SMF Classifieds Ad Seller Pro

Rasyr

What would happen if you ran this twice (i.e. you run it, and then before you could make the SMF forums live, you get more posts in the forums, and have to run it again to import the new messages)?

Or would it be better to disable the bbpress forums once they have been imported?

Advertisement: