Importing from vanilla
Ok, I see there is an importing from phpbb but I’ve got a slightly different issue with vanilla. I like it but love bbpress much more now and would love to bring over my site to it. Is there anyone with any ideas on where to start on this and possibly some help over that. It would be greatly appreciated.
Same over here – I need a convertor to switch… really can’t do this by hand
I have checked for importers for any forum package out there and I am not sure if Vanilla will import to any software package. Does anyone know if it has rss feed so at least you could try exporting it that way?
ehm … i think with a lot of work it should be doable to grab the rss-feed, re-format it and put it into the bbpress database … but i can’t do that
I’m currently looking at Vanilla and bbPress, may I ask what you didn’t like about Vanilla, in comparison to bbPress?
Is there a vanilla to phpbb deal? That seems like the easiest way to go…
the bbPress folks ought to consider hiring a team member or somebody to just work on importers. Without them it makes getting people to make the move just that much harder.
The last phpBB to Vanilla converter doesn’t work perfectly with the latest Vanilla so needs some fiddling. Both Vanilla and bbPress could do with investing in a universal converter similar to what punBB has. It’s a lot of work but will be worthwhile.
Anyone ever come up with a solution from Vanilla to BBPress? I’m having daily requests to move from Vanilla and NO ONE has a converter.
I’d even be willing to kick in some cash if we want to get together, hire someone to write it, and then donate the code back to the bbpress project.
I’m using Vanilla on my forums and since I like to change things every now and then, I’m going to move to BBPress in the near future. Since I’m testing at the moment, I thought I’d hand over the SQL statements for grabbing the categories, topics and posts and formatting them as best as possible for bbpress.
SQL to get the categories:
SELECT CategoryID, Name, REPLACE( LCASE( Name ) , ‘ ‘, ‘-’ ) AS Slug, Description, Priority
SQL to get the topics:
SELECT DiscussionID, Name, REPLACE( Name, ‘ ‘, ‘-’ ) AS Slug, AuthUserID,
(SELECT LUM_User.Name FROM LUM_User WHERE UserID = AuthUserID) AS PosterName,
LastUserID, (SELECT LUM_User.Name FROM LUM_User WHERE UserID = LastUserID) AS LastPosterName,
DateCreated, DateLastActive, CategoryID, Closed, Active, (SELECT 0) AS LastPostID, Sticky, CountComments, (SELECT 0) AS TagCount
SQL to get the discussions:
SELECT CommentID, LUM_Discussion.CategoryID AS ForumID, LUM_Comment.DiscussionID, LUM_Comment.AuthUserID, Body, LUM_Comment.DateCreated, RemoteIp
JOIN LUM_Category ON LUM_Discussion.CategoryID = LUM_Category.CategoryID
JOIN LUM_Discussion ON LUM_Discussion.DiscussionID = LUM_Comment.DiscussionID
ORDER BY CommentID, ForumID
SQL to get the tags:
SELECT TagID, REPLACE( Tag, ‘ ‘, ‘-’ ) , Tag, (SELECT 0) FROM LUM_DiscussionTags
From there you will need to fix up the slugs in the bb_topics table and in the bb_forums so that the web browser doesn’t have a conniption when it tries to load a forum thread but you can do that with a series of select(replace) queries like this:
update bb_topics set topic_slug = replace(topic_slug,’?’,”);
update bb_topics set topic_slug = replace(topic_slug,’.’,”);
update bb_topics set topic_slug = replace(topic_slug,’/’,”);
update bb_topics set topic_slug = replace(topic_slug,’&’,’and’);
update bb_topics set topic_slug = replace(topic_slug,’"’,”);
update bb_topics set topic_slug = replace(topic_slug,’\’,”);
update bb_topics set topic_slug = replace(topic_slug,’”‘,”);
update bb_topics set topic_slug = replace(topic_slug,’!’,”);
update bb_topics set topic_slug = replace(topic_slug,’,’,”);
update bb_topics set topic_slug = replace(topic_slug,”’,”);
update bb_topics set topic_slug = replace(topic_slug,’#’,”);
There might be a better or quicker way of doing the last bit but since it works fine on mine I am not too concerned.
I had to kludge some results in the queries like; SELECT 0 or SELECT 1 to get the answers I wanted or to pad out the columns to fit properly into the bbpress SQL layout. In most cases its just count fields or an active or open flag which is nearly always 1 or 0 anyway.
Generally this is all you need to get started, from there you can just export this table data to a CSV or something and then import it into the requisite bbpress table. If you go into the admin interface of bbpress and get the system to recount everything it should be ok from there. I only recommend doing this if you’re familiar with the inner workings of MySQL, otherwise you could bollocks things up and then noone wins.
Please remember too that this is the basics, if you’ve integrated with wordpress you’ve still got some work ahead of you to coordinate your wordpress ID’s with your forum ones. It can be done as I managed to do it, it’s just painful.
I’ve refined it a bit further so that it grabs the last post ID of each of the topics so that the ‘freshness’ links work fine for old posts…
I replaced the SQL to get the topics:
(SELECT 0) as LastPostID
(SELECT MAX(CommentID) FROM LUM_Comment WHERE DiscussionID=LUM_Discussion.DiscussionID) AS LastPostID
I can’t edit my original post so if you use the above SQL, make sure you add this bit in.
Thank you Scooter! I’ll give this a try when I have a moment. Or, it look like, when I have a half a day.
I’m also looking forward to your import.
I’m thinking on moving a Vanilla forum to bbPress.
If it works as charm, I will try you SQL statements right away.
has anyone got any further with this yet? i’m moving from vanilla to bbpress today and i’d really like to bring all the vanilla threads with me.
update: the queries above worked fine with a bit of manipulation (i guess the table layouts on both systems have changed a bit since the above were written, so the number of fields didn’t match in some cases). i didn’t need to update the slugs or use the second bit of code for post freshness – it just worked.
I’m also looking to switch from Vanilla to bbpress. Using the above SQL statements, how does the data get copied from the vanilla tables into the appropriate bbpress tables?
paste the code into the SQL field in phpmyadmin
export the result to a CSV
import the CSV to your bbpress forum tables.
Does anybody have updated SQL statements to use? I keep getting a “wrong syntax” error.
Shameless plug for a theme… I tried Vanilla for a while, along with everything else out there. I went for bbPress because everything worked or was easily modifiable (and I’m no PHP expert!)
You must be logged in to reply to this topic.