Import From Ning imports the contents of your Ning Network Archive into BuddyPress.
See the initial announcement here.
Download the most recent version
Instructions
- Install in your plugins folder and activate. I recommend using the plugin on a fresh WP/BP installation; if running on an installation with existing content, please make a database backup first.
- Download your Ning network export, using the Archiver tool as described here: http://help.ning.com/cgi-bin/ning.cfg/php/enduser/std_adp.php?p_faqid=3796
- Upload the content of your unzipped Ning export (a group of .json files, as well as several directories) to wp-content/ning-files. If this is the first time you’ve used this plugin, you’ll have to create the directory ning-files first.
- Visit the plugin panel at Dashboard > BuddyPress > Import From Ning and follow the instructions
Frequently Asked Questions
- What if I’m not running BuddyPress?
- Version 2.0 of Import From Ning does not support WordPress standalone. Use version 1.1: http://wordpress.org/extend/plugins/import-from-ning/download/
- What content will Import From Ning import?
- Import From Ning currently imports the following items from a Ning export: members, member profiles, member avatars, members comments (the “wall”), groups, discussions, and blogs. The plugin attempts to recognize inline images and copy them to the BuddyPress installation, so that you don’t lose the images you’ve put in your blog posts.
- What about my images, movies, and music?
- BuddyPress by itself does not currently support photo, movie, or music galleries. The best plugin available for images right now is BuddyPress Album+ , which is in the process of being adapted to support video and audio galleries as well. In the future, I hope to expand this plugin to import content for display with Album+, but in the meantime you can import your multimedia content manually.
- What do I do if I have a gargantuan network?
- The plugin is most reliable when working with relatively small sets of data, though I have tested it with a network import of over 1300 users. There are various safeguards built into Import From Ning, so that if a particular step fails to complete because your hosting environment runs out of memory, you can simply refresh the page to pick up from where you’ve left off.
- What’s with all these new groups?
- In BuddyPress, each forum must be associated with a group. In cases where your Ning discussion thread was not part of a group, Import From Ning creates a group corresponding to the discussion category and places the discussion topic there.
Be a pal
I spent many mornings building this plugin, so that WordPress and BuddyPress users – and especially my friends who are WP/BP consultants – could reap the benefits. If you use this plugin (especially for a paying client!) please consider a donation.
Import from Ning has been downloaded 1,191 times. Are you using this plugin? Consider a donation.
Version history
- 2.0 – July 23, 2010
- Added support for Ning network content
- 1.1 – April 18, 2010
- Switched from copy-and-paste to direct .csv upload
- Added BuddyPress profile field import functionality
- 1.0 – April 16, 2010
- Initial release
89 Comments
Will this plug-in add additional info to already imported members?
Diaan – No, but I’ll work on that.
I’m getting a memory error, unfortunately. Possibly due to the amount of members I have. (~16,000)
Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 20 bytes)
@Darfuria – It’s almost certainly a problem with the size of your file. For the moment (ie until I come up with a better solution), you might try breaking up the import file into smaller chunks. Open it in a text editor (NOT Excel) and copy some lines into a new file. Make sure that the new file contains the first line of the original file (I think it starts with ‘Name…’) and save it as a .csv file.
Ah yes. I split it into a smaller file and it did the trick. Any way of disabling the auto-email? I’m setting this up as a test and don’t want to e-mail anybody just yet.
Darfuria – Are you running WPMU? If so, then the following line of code should do it:
add_filter( 'wpmu_signup_user_notification', create_function('', '{return false;}') );You’d put it in import-from-ning.php, right before
add_action( "admin_print_styles-$plugin_page", 'bp_ning_import_style' );Just plain’ol WordPress at the moment – not MU.
Darfuria – Haven’t tested this, but it should work. Find the functions.php in your theme dir. (Create it if it doesn’t exist, making sure to include php delimiters <?php at the beginning and ?> at the end.) Then put the following function into it:
function wp_new_user_notification($user_id, $plaintext_pass = '') {return;
}
That’ll override the core function in pluggable.php. Obviously, it replaces the guts of the plugin with nothing, so no email will be sent. Run it with a test email address first to be sure. Then delete it from the functions.php file when you want to run it for real.
I’m looking for the importing data in the oposite direction, ie into my Ning social network.
Is it possible as well?
Eduardo
I have a question. If I use this and some of my members have already made new profiles on my new site will it create a conflict or overwrite anything? I was waiting to pull the trigger on this and while I was waiting some of my members moved over and have setup profiles that may be the same as their ning ones.
ediddy999 – No, the plugin won’t create a new profile field if there’s already one by the same name, and it won’t overwrite the information in a profile field if it’s already populated. It might be a good idea to try a test first, though, if you can.
As ning have announced moving to only fee $$ …and no more free networks Im sure this will be in big demand soon. They say from July.
As I offer 2 free networks the cost of continuing at Ning would be 40-100$/month!
No way yet of recouping any cost from advertising.
Seems cheaper to get a virtual server and run both from there.
Can you show me example of Ning site with over 200 members that have successfully migrate from Ning to Buddypress?
Thanks.
Andrew
andrew – I don’t know of any myself, but you might poke around the buddypress.org support forums to find someone who has done the transfer.
This looks like a brilliant solution! I’m wondering if the import will also bring over other data the members have uploaded to our community, like blog posts, videos, photo albums? Also importantly, will it import group and forum activity?
Can I use your plug-in to import a csv not from Ning? I have a list of students from a university that I want to upload to by WP 2.9.2 and BP (latest version).
All the plug-ins I have looked into are for BP on WPMU or WP where you cannot import Xprofile data.
Do you have a sample Ning export file for me to view (or at least the header/first row) so I can try and adjust my csv to work with your plug-in?
Thanks,
Kalman
Kim – Unfortunately, until Ning offers a content export option, there’s no way to make this tool import stuff like forums. Hopefully soon!
Kalman – Sure, this should be possible. All the plugin requires to run is that the first row in the CSV contain a column header called ‘Name’ and a column header called ‘Email’. All other column headers are sniffed out. As long as the first row of your CSV is like this, it should work. (Don’t have a shareable Ning CSV handy right now so I can’t send to you – but I’m guessing you’ll be able to make it work fairly easily)
Boone Gorges – there is a post here about what I need to do (latest long post on the list):
http://buddypress.org/community/groups/how-to-and-troubleshooting/forum/topic/importing-data-from-excel-csv-sheet
I think this Ning plugin is great and I would be happy to make a $100 donation (or a little more if necessary) if you could tweak it to meet the needs of what I outlined there and then maintain it for a while through the upcoming WP 3.+. Trouble is, I need it very soon…. if you can do it, please email me off-site (you got my email!).
This is for a non-profit in NYC that maybe you can also help with (paid) in the future too — I am not in NY, so I want to help them find a helper, of sorts, for the future who is also based there. I can explain more via email. I know you are a very busy guy. My donation to them is making a buddypress site for their membership.
QQQ
@Boone – I can confirm that creating a CSV, with Name and e-mail as the first two columns (in the first row) and then you other profile fields, will import correctly into BuddyPress.
My next question, which I do not think is related to your plugin, is how do I change the e-mail sent out to users after importing the data?
Any help would be appreciated.
Kalman
I have set up the ning members plugin and tested it. Works great for the general personal info to come over. Is there a way to bring over photos, videos, groups etc.?
ccarini – Not yet, but I believe that Ning is releasing a full-content exporter quite soon. At that point I’ll try to find the time to build a content importer.
Hi:
I’ve found that you can export much of your content as JSON files with accompanying folders. Are you going to be creating some type of importer for BuddyPress to work with these file types and folders?
Ning’s content export tool was released about 3 weeks ago. How can we get these JSON files into Buddypress?
http://blog.ning.com/2010/06/content-archive-tool-coming-soon.html
We are running out of time, and loosing our content would be worse that loosing members. Heck, we are willing to lose like half of our 1,000+ members to gain control over our destiny. ;)
Hi, how can I change the link in the e-mail message that will be sent to the users after importing the users data?
thanks in advance!
Hi Jan – I’m about to come out with a totally rewritten version of the plugin that allows full email customization. Stay tuned – I should have a release version in the next day or two.
If this works flawlessly, I promise to donate a month of ning dues ($20)
Have the new Ning pricing plans opened up any potential for further developing this?
vp, Darfuria, and others – I released a new version of the plugin today, compatible with Ning network exports: http://teleogistic.net/2010/07/import-from-ning-now-imports-ning-content-into-buddypress/. I hope it works for you!
Hi Boone!
I just saw your announcement for the new version of the Ning importer plugin, and I’d like to work with you to make sure it works seamlessly with BuddyPress Media.
We’re just about to start updating all of our new hooks and filters to the plugin, so if there’s anything you need, just post what you’d like added in the issue tracker entry.
Also, if there are any specific content importer functions you’d like us to write and add, we’ll certainly do our best to accommodate you.
Thanks!
^F^
Awesome, F! (Not sure which of the Fs I’m speaking to ;) ) I’m planning on looking at media import in a couple of weeks, and using BP Media as the basis. If I stumble across places where I could use some more hooks or functions, I’ll let you know!
i got this error:
Fatal error: Cannot break/continue 1 level in /…../community/wp-content/plugins/import-from-ning/bp-functions.php on line 196
how to fix it?
Well shit! I just sent out Emails telling several hundred about a website that is supposed to be a top secret test!
Please add a checkbox on the first page to allow people to choose whether or not to send these messages out. I was expecting to be prompted as the first page claims I will be walked through the process.
Now I have to tell the network creator I just scared the shit out of about 500 or so members. :(
Where is the /avatars/ folder located? I would love to give it write permissions… althought i am afraid I may be too late for the import process to add users avatars now that the import process is complete.
Ignore my above overreaction. I got scared because the “Recently Active Member Avatars” widget claimed there were a dozen or so recently active members! I guess the import process makes them “recently active”.
After reviewing the code i now see the Emails only go out by choice at the end of the import process.
Sorry for the overreaction, but you might understand why I was concerned.
Hey Boone:
Should I deactivate all other plug-ins (other than BuddyPress itself) before running the Ning Importer?
We’re getting an error. Allocated 30 MB, tried to allocate over 40.
We’re still getting an error. We put a php.ini file in wp-content and in the importer folder.
Any ideas why we are seeing the memory error?
One more thing…it’s on 1and1. We change the mem limit to 128 in the ini file.
This install of BuddyPress is actually in a folder inside another install of WordPress. We’re using the BuddyPress as a testbed. Could it be that the WP 3.0 version one directory outside of the BuddyPress directory is affecting the memory limit?
I figured it out. You have to make sure all your plugins are disabled and run only the importer. Of course, keep Buddypress enabled. Following the instructions. Getting warnings on every import of comments…seems the data is missing something the importer is calling for on each round. Times out and I refresh and it keeps chugging along. I’m just going to go through the entire process, even with the warnings, and see what happens.
Everything worked, up to this point:
Discussion groups
Import from Ning is now importing your Ning groups. If you’ve got a lot of groups, you might have to refresh the page in order to get them all. If so, you will see a message near the bottom of the screen.
Once you’ve finished importing groups, click Continue at the bottom of the page to move on to the next step.
Fatal error: Out of memory (allocated 23592960) (tried to allocate 15081729 bytes) in /homepages/31/d176735165/htdocs/c2/canary2/wp-content/plugins/import-from-ning/bp-functions.php on line 92
When I start the importer I get this error:
Fatal error: Call to undefined function bp_ning_import_profile_two_markup() in /htdocs/wp-content/plugins/import-from-ning/bp-functions.php on line 42
Any suggestions how to solve this?
regards, Willem
Houston, we have a problem – how to fix this error message?
Make sure that your Ning files are located in the wp-content/plugins/import-from-ning/json directory. You see that message either when the plugin can’t find wp-content/plugins/import-from-ning/json/members-local.json, or when the members-local.json file is corrupt and can’t be opened.
Great plugin, worked like a charm. I used it in conjunction with email user plugin to customize the password email.
My list was 250 accounts. I added my email 1/2 through the import and at the end. The middle came through but the last one didn’t.
This isn’t really a plugin question but is there a way to tell what emails where sent? and re-send the passwords that didn’t get sent? or should I just contact my hosting?
I would recommend a throttle in a new version for shared hosting folks – Thanks very much for all the hard work.
Brian:
Do you have specific experience with the problems with shared hosting? I’m having a terrible time trying to get “Discussions” in. My file size is about 14MB and I’m getting an error. Any ideas as to what to do? We split the JSON file, but that didn’t do anything for us either.
@Zeoli
I am not sure what caused the error. I think it was a relay restriction on the hosting side of things not an error with plugin. It is for a client and I don’t have experience with their host.
Tony – sounds like your discussions file is still too big. 14MB is pretty huge, unless you’re running a machine with gigs of ram. Try splitting it up even further and running it through again.
@BrianRice, @BooneGorges – Okay, we basically removed the original JSON file and only put three discussion entries in it, but the Discussion Groups media folder has a ton of related images. Once we did that, we got another error, which I don’t have copied down at the moment. I think once we parsed the Discussion Group JSON file and resaved it with only 3 entries in it, it went way down to 700KB, but then we got a members error. I think that was it, but I have to check with my developer. We’re going to move the entire thing to MediaTemple on their GS platform, which gives 100MB of RAM off the bat. 1and1 only gives 30MB, even though you can reset it to 256 and increase the max execution limit to 60 using php.ini. I feel like there’s gotta be some larger issue.
Strange that you would have gotten a member error. I’m pretty sure that the plugin is smart enough to remember that you’ve already added all those members, and it should be able to match up discussions with members.
As for any larger problem, I’m afraid the problem may just be very large files and relatively small PHP memory limits. When you take a 14MB file and load it into a PHP object or array, it gets considerably larger (since it’s then structured, so carries additional metadata). So an object that takes up, say, 20-25MB of resident memory on a system with only 30MB allotted to PHP simply won’t leave enough memory for WP and BP to run.
problems….
version 1 imported everyone but only emails and names.
i tried version 2.03? latest anyway, and it stopped part way through
Catchable fatal error: Object of class WP_Error could not be converted to string in /home1/tokyosoc/public_html/wp-content/plugins/import-from-ning/bp-functions.php on line 188
no profile data but emails, name, profile photos for about 70% of users. total users being about 550.
i cant keep running more imports – users not too happy.
another point worth considering is the admin email notification.
most shared hosts will not allow over 500 emails per hour and they are dropped without notification. the import also produces admin notifications – the same number of emails for every user – lots of emails!
there is no pause of option to import a certain number.
andy – Sorry you’re having problems. The “line 188″ error problem suggests that the import function failed for a particular user. It’s possible that the user in question didn’t have an email address or a username in the original data. Try running the import again to see if you get the same error.
Emails to users aren’t sent out until the very end of the process, when you manually click the “send email” button. (That’s different from the first version of the plugin, a change I made because of requests like yours.) So I’m not sure what you mean when you say “users not too happy”.
I know that there are problems with email throttling, but the extra amount of coding needed to set up a pseudo-cron for staggering emails was significant enough that I didn’t do it for this version. It’s possible that I’ll set it up in the next version of the plugin.
Ran version 2.03 again but stopped immediately with the same error.
I also had trouble with the importer picking up other profile field entries and placing them in the initial user list for import. on the 2nd page it of course rejected them as the format was incorrect. maybe the field name characters like () cause trouble … not sure.
I had the emailing problem because I reverted to version 1 which got all the users in, but without extra details. I only saw the v2 email option after just running it now on anouther group – successfully (250 users).
One thing worth mentioning maybe!
The importer changes all the profile fields to text boxes when they were originally checkboxes, radio buttons etc.
Leving it this way, if users input spelling mistakes etc the search results will not be reliable.
I havent seen the effect yet of editing the user fields back to radio buttons or checkboxes – to see how they are displayed or dealt with when previous data imported was converted to text box.
If its a problem then I have to delete all those fields and ask users to redo their profiles.
Simple text box or lager text fields will be ok.
andy – Glad that the import worked for your other group. That almost certainly means that there is a piece of malformed data in the Ning export. In the next version I will set up a filter to make sure that this kind of malformed data doesn’t stop the rest of the process from running. In the meantime, you could try locating the problem yourself by looking to see the last member successfully created, then finding the next member in ning-members-local.json, and seeing if you can remove it or fix the missing profile data that is causing a problem.
As for the text boxes vs radio buttons etc: From the Ning profile data, there is no way for me to tell what kind of select box the original was. In the future I would like to make it possible for the admin to specify, during the import process, what format each field should have. But that’ll take a significant amount of refactoring, so it probably won’t be for a while.
Okay…started running the plugin, got everything in up to discussions, then got a few discussions in, then this: Warning: mysql_get_server_info(): supplied argument is not a valid MySQL-Link resource in /nfs/c07/h01/mnt/102475/domains/netmix.co/html/canary/wp-includes/wp-db.php on line 1582
See this buddypress post about MySql error: http://buddypress.org/community/groups/how-to-and-troubleshooting/forum/topic/mysql_get_server_info-error/
I checked the MediaTemple Knowledge Base. Tried running the script via CGI, but that didn’t work. Put the htaccess file in the plugin directory and that didn’t work.
Here is the Knowledge Base article:
For complex security reasons, (mt) Media Temple’s various hosting solutions operate PHP in what is known as “safe mode”. This is necessary for the safe running of PHP enabled web sites in a shared server environment.
* On (dv) Dedicated Virtual Server systems Safe Mode is turned on by default but can be turned off on a server wide or on a per site basis, please see the Knowledge Base article ” How do I Turn off php safe_mode on an (dv) Dedicated Virtual server”
* On (gs) Grid-Service systems this is turned off by default so you should not have ‘Safe Mode’ issues.
* On (ss) Shared-Server systems this is a global setting but can be configured or turned off on an individual site basis through PHP “Power Mode” Please see our article PHP Power Mode.
Safe mode imposes several limitations that might be causing your scripts to not function as anticipated. Please review the “technical requirements” of your PHP program. If the requirements indicate that scripts must not be running on a safe mode server you should look into the work-around listed near the end of this document.
Some of the major limitations of safe mode are:
* File uploads: since the webserver runs as the ‘apache user’, all files that are uploaded by PHP are owned by apache. This may cause “ownership problems” for many users. In order to use this function, you must create a separate directory inside of your content directory to upload these files into. This directory MUST have the permissions of 777. Also, the manipulation of these files are very limited because of the restrictions below. However, you can delete uploaded files using the “unlink” function.
* File modifications: moving, copying and changing ownership/permissions of files can only be done when they are owned by the administrative user.
* System commands: PHP scripts cannot use the exec( ) and system ( ) functions, therefore shell commands are not allowed to be run from within a php script.
Please note that many “ready-made” PHP scripts, such as Gallery or ***NUKE, use the system () function to copy files. If your script does not work as anticipated it is likely that it uses an unsupported safe mode command and may not work with the (ss) Shared-Server service. Additional information about the safe mode security feature can be found at the PHP official website: http://www.php.net/manual/en/features.safe-mode.php
Customers requiring a hosting solution without the restrictions of PHP safe mode should consider (mt) Media Temple’s other family of hosting products such as the (as) Appliance-Server, or (ds) Dedicated-Server.
Workaround
One known workaround on the (ss) Shared-Server systems is to use an .htaccess file to force your php scripts to run in “CGI Mode” This is only a workaround and as such may not work in every case. If you need to bypass safe mode restrictions because the functionality you are seeking is not allowed with Safe Mode enabled, one available vehicle we offer is to write that component of your system as a CGI. This is allowed because CGI scripts are executed in a much safer context than php.
Another alternative, which consists of running php *as* a cgi while processing certain php scripts. This runs php with safe mode off, but as a separate process and as your user. Your php scripts will take a small performance hit when running in cgi mode compared to running in the ‘normal’ way, so we only suggest using this method on the scripts that need non-safe mode access.
1. Create a directory in which you’ll place your php scripts that you want to have run in CGI mode. For this example, we’ll use ‘phpcgi’
2. In that directory, create a .htaccess file (KB article: What is an .htaccess file) with the following contents:
Action php-script /interpreters/php-script
AddHandler php-script .php AddHandler php-script .php3
Any php scripts that you place in that directory will now be executed by cgi-mode php.
NOTES:
This method may not work correctly with alternate domains.
Once again if your site requires that safe mode be disabled and this recommended workaround does not solve the related issues, you should consider (mt) Media Temple’s more advanced family of hosting solutions such as (dv) Dedicated Virtual servers or (ds) Dedicated-Servers.
The workaround method listed in this document may not work correctly with all scripts or with alternate domains. In that case the most viable options include:
* Rewriting the script as CGI which doesn’t have safe mode restrictions OR
* Upgrading to (mt) Media Temple’s more advanced family of hosting solutions such as (dv) Dedicated Virtual servers or (ds) Dedicated-Servers where safe mode can be disabled
I’m assuming this is probably because of the 14.4 MB JSON file. So, we’re going to try and split it again and see what happens.
Okay…good news. Splitting the JSON file down to 2 MB worked. Now, we’re going to have to spit it down even further. I’m under the impression you have to keep the same file naming convention, which means you have to remove content, save a bit down, overwrite the file and just run it again. There’s gotta be a better way to do this, like somehow parsing the JSON file and only taking a little at a time. Anyway to set the importer so that if it sees a big file, it can manage that file efficiently, instead of crapping out and having to do everything manually?
BOONE! You’re killing me with overwriting the JSON file on an updgrade!!!!
That’s twice all my content has been deleted!
Yes…I know…I should have a backup somewhere else on the server. How was I to know.
(huge SIGH)
Okay…i can see that you’ve changed the path to content. Instead of putting the content in the plugin JSON folder…it’s now in wp-content/ning-content. Is that correct?
The plugin is telling me I have no files in the directory but they are there. The permissions are 777.
Has anyone else conquered this issue? Any advice?
Boone has moved the path to the files, because every new release was overwriting the JSON files directory. They should be moved outside of the plugins folder–I believe he set it to “uploads/ning-files” but I’m not logged into or have access to my FTP to view exactly. Check this thread or one of the other threads for the appropriate path. It may be in the Read Me file.
It turns out that the Ning file was missing a few characters. These characters were part of the markup for the ning-members-local.json and the plugin couldn’t parse the file. It then said that the file wasn’t there. Once the error was found (thanks Boone) it ate the file happily.
I am now having another issue, though.
Missing comments. These comments are missing from discussion posts that were imported as blogs. I am thinking I may need to do another pass?
Duplicate id’s between Ning JSON blogposts and forumtopics.
{"id":"2003008:Topic:1067","contributorName":"8wbjqz2kevz8","title":"blah1"{"id":"2003008:BlogPost:17720","contributorName":"2rutf0t82p6v8","title":"blah2"So, I fancy loading blog posts and discussions as blog posts separately would fix this. That is to say, anyone else who was doing this would still need to do this into a fresh DB so that bp-importer wouldn't move your comments around between the discussions and blog posts with the same id.
I decided to focus on the blogs to start with.
My goal was to check for errors, and to make sure that all the comments were transferred.
After the first run of Import-to-Ning 1 comment, the most recent comment, for each blog post was transferred.
I ran it again, and more comments were added. Most of the correct comments now appear, but there are additional comments that should not be there.
I have checked the JSON file and confirmed that these comments are no listed in the JSON file.
I can find no relationship between the BlogPost IDs, or the Comment IDs that would lead me to believe they were “simply” missplaced by a poor association.
The user IDs for the posters look fine, too.
Boone, do you have any ideas about this? What I could do next?
Again, I emptied the discussion JSON files, and put up all the rest of the files. Empty WP DB, fresh site. I went through the plugin, and the above is what I got.
If it’s only loading one comment per post per run, then it’s a bug. A brief look at the code isn’t making it obvious what’s happening – it looks like it should do a foreach over every blog comment.
As for comments missing for other reasons, I’m not sure. When you say “I have checked the JSON file and confirmed that these comments are no listed in the JSON file.”, do you mean that they ARE listed or ARE NOT listed?
Hi Boone,
I had this problem importing discussion items as blog posts. I found that I had to run the tool for as many times as the max # of comments for a post. Max comments on any posts was 45, so I ran the tool 45 timed and picked up 45 comments. It picked up the right comments, and only miss-placed a few of them, which I was happy with after 2 days of fussing with it.
Interesting – that must be a symptom of some different formatting in discussions than in blog posts. It could be, for instance, that blog comments are expected to be non-linear, while discussion posts are linear with respect to time.
Glad you were at least able to get the majority of the content over. Let me know how the export/import to Drupal goes for you.
Hey Boone:
Just an FYI, so you are aware. The Ning export pulls ALL users regardless of status, and puts them into your BuddyPress user database. That means flagged users or users who have been asked to be removed. They still exist in the Ning database. There is no documentation that says any flagged or removed Ning user would be pulled into the new system. It’s made my client quite upset, but there’s nothing anyone can do, because it’s Ning’s data. Anyone reading this post, make sure you go through your user database and pull anyone in their that requested privacy or was flagged. Also, make sure to “no-follow” your site, so that Google doesn’t cache your live profile pages in your test environment.
P.S. – Just to clarify, I meant to say it’s not your issue, Boone. You’re not responsible for what Ning puts out, and can only respond to requests based on our feedback. Hope you didn’t take that the wrong way. Wasn’t meant to point at you, meant to say Ning just dumps it all out there and we have to pick up the nasty little pieces.
It seems to me that the replies in Ning are allowed to be made to any comment or the post itself. Regardless, once inside WP everything appears flat, and so it is once they end up in Drupal. Running the tool multiple times was easiest with the back button. I should add that I edited the discussions file by inserting the blog publishing info into the post information, then renamed the file to “blogs” for the import. If I didn’t do that, and used the hacked version of bp-import I was getting unbelievable amounts of lost and missplaced comments.
You can see an example of the final Drupal import on this page:
http://commons.peerforge.com/discussion/p2p-social-currency-money-20
I think there was a hiccup with something about the usernames, too, for commenters, because the names are a little off from the account names, and not lit with links as they should be. The data is in, though, and the accounts are functional.
Thanks for the comment, Tony. I wasn’t aware that Ning had a concept of “suspended” users, much less that they put it into their export files :)
In the future, adding these lines
if ( $member->state != "active" )continue;
immediately after
foreach ( $members as $member_key => $member {around line 268 should make the importer skip any non-active members. There may be a more fine-grained solution (creating non-active WP members corresponding to non-active Ning members) but that’ll have to wait for the next version.
I have this error:
Warning: mysql_get_server_info(): supplied argument is not a valid MySQL-Link resource in /home/minhascitac/public_html/embuscadabibliotecaperdida/wp-includes/wp-db.php on line 1582
How to resolve?
Thanks.
Leonardo – It doesn’t sound like this is an error with my plugin. Is WordPress/BuddyPress working for you otherwise? Can you save new content?
This error appears when I import the forums. It starts to upload but always this error message appears. With that I am not able to migrate all messages. I do not know how to fix this problem that seems to be of WordPress and MySQL.
That’s a very peculiar error, Leonardo. I opened the WordPress file in question, and it looks like WordPress is unable to open a database connection at that moment. I have no idea why that would be the case. Try posting to the forums from the front end of BuddyPress and see if you get the same error.
Boone et al,
I wrote a detailed post on how to use the Ning Imported to migrate the posts to Drupal. I had some good success with it. I hope others in need will find it useful.
http://commons.peerforge.com/discussion/migrate-ning-drupal-import-ning-content-drupal
You can see the imported content at http://commons.peerforge.com/node/8/content/discussions
Thanks for the help with this, Boone. There are a couple bugs, but I can endure them as 98% of the comments ended up in the right place.
Hi ,
I tyested the pug lin and it worked really well, i successfully imported blogs, comments, users, music , mictures etc … but i have a question
Is it possible to import several different Ning sites on the same WordPress 3 account ?
I fear that when i uplaod the files from my second ning account it will overwrite the archives from the one already imported .
Thanks and congratualtions u did an amazing job with that plug in
Hi Sammy,
So glad it worked well for you!
If you go through the import process again with a different set of files, nothing will be overwritten. When the plugin adds new users and new content, it simply tacks it onto the “end” of the database, so to speak. Everything should be correctly associated with the proper user. Keep in mind, though, that if you import into the same WordPress installation, all of the discussion topics and user profiles will be mixed together: they will no longer be separate communities.
Boone — fabulous plugin. I’d never had need to use it before, but, well, now’s the time.
However, I seem to have run into a hitch. I have around, oh, 300-500 members to import for a friend’s website, but the members json file is stopping after only so many, and not doing the full import. My inclination is to think it’s out of memory because when I try to start over and do it again, it loads the exact same members.
Any clues? I’m hoping the NING export file isn’t corrupt, which would be a shame, because I have no idea how to fix that. Looking closely at the details of the json file, however, I can’t see any obvious problems. (Looking at where it’s stopping.) Any ideas?
Thanks!
Arx Poetica – What happens when it “stops”? Do you see the footer of the WordPress Dashboard, or does the entire page stop loading at that point? As I suggest in the documentation, for large amounts of data you might need to hit the Refresh button when the plugin stops.
An awesome tutorial, Alex. I never would have thought to use WordPress as a bridge like this, but I’m so glad that it works!
Yes, I see the footer, and I did read the documentation a few times. Tried refreshing, but it just doubles up the content. The strange thing is that it’s importing everything else just dandy. Groups, discussion, etc.
Unfortunately, after carefully reviewing my data, it appears that it’s actually the data itself. It appears that the archiver from Ning isn’t exporting all the content. I don’t get it, and I can’t be sure until really digging in there, but that’s the appearance.
I was able to download the .csv export from Ning, and that had all the members, but it’s missing the other data, so I’m just trying to figure out if it would be worth trying to reformat that .csv into some importable json.
Any further tips along this front would be appreciated. Any suggestions for how to import a .csv? I saw that it could be done with version 1.1, but I’m not certain how to do that now without converting it into a json string?
Thanks again.
The Ning exporter can deliver corrupt content in the discussions-local, which is the file that the importer calls. The data in this file comes “relative” and not absolute. The sister file is the non-local file, which may be okay. You can rename the sister file as the local file, but then you’ll have to do a search and replace in mysql to fix all your links to either relative or the absolute path of your URL.
I have had this issue myself…it’s the worst, because you have no idea what’s going on.
There can be a lot of reasons for corrupt files.
I had to get a new set from Ning because the first set was full of errors and missing data. I recommend trying that first.
The importer is not really designed for importing the CSV file. It will retrieve your member information from the JSON files. The CSV file has no real value beyond that information.
Just to concur with Alex and Tony: The JSON files that come from the Ning export can be buggy. The crappy part about it is that sometimes it’s a single character in a multiple-megabyte file, which makes it very, very hard to trace. Tony’s suggestion that you try the non-”local” version is a good one; even though you’ll get a lot of absolute links, it could be better than nothing.
The .csv importer in earlier versions of this plugin will import your members, but none of your data. I don’t really recommend using it.
Thanks all for the input. I think I’m going to try and re-parse the JSON myself.
The new user email isn’t replacing the merge fields with the username and password.
In bp-functions.php line 1486 needs to be changed from:
wp_mail( $to, $subject, $email_text );
to:
wp_mail( $to, $subject, $message );
hi Boone, I’ve spent 2 days trying to get this right…. I’ve archived the ning files, uploaded them all to a wp-content/ning-files folder. Have visited the plugin panel at Dashboard > BuddyPress > … but can’t find “Import From Ning” in order to follow the instructions. I’m using the BuddyPress version that I downloaded at the top of your page here, with WP 2.9.2
Any help would be greatly appreciated!
Anita
Anita – You don’t see an “Import from Ning” link underneath Dashboard > BuddyPress on the left hand side? It should look like this: http://teleogistic.net/wp-content/uploads/2010/08/buddypress.jpg
If not, are you sure that you’ve installed and activated the Import from Ning plugin properly? Keep in mind that you have to install BuddyPress and *also* Import from Ning, and that they both must be activated at Dashboard > Plugins.
Ha! You’re a genius, thanks for that. Now i’ve just gotta sort out photos and a few odds and ends and I’m away! Thanks so much. Expect a donation soon! xx
So glad it worked, Anita!
10 Trackbacks/Pingbacks
[...] ‘telos’ Skip to content HomeAbout BooneDonateCodeWordPress/WordPress MUShared BlogrollImport from NingBuddyPressBP Include Non-Member CommentsCustom Profile Filters for BuddypressBP TinyMCEInvite [...]
[...] – http://buddypress.org/blog/ မူရင္းေနရာ – http://teleogistic.net/code/wordpresswordpress-mu/import-from-ning/ Tags: IT, News « ဘာသာမတူသူမ်ားၾကား ဘာသာေရး [...]
[...] una solución que aprovecha el archivo CSV que se puede generar mediante la lista de miembros. Ning to BuddyPress importer nos importará el nombre para mostrar, el usuario, el correo electrónico… Además, la [...]
[...] Tras el anuncio de este cambio de modelo de negocio, hay varias alternativas que han preparado su servicio para permitir migrar de tecnología sin demasiadas complicaciones; y [...]
[...] ところで、今回の発表に合わせてBuddyPressがNing上のデーターをBuddyPressにインポートするツールをリリースした。もうNingなんて嫌だと思うユーザーはBuddyPressを候補に入れてみてはどうか。 [...]
[...] Buddypress installation. I'm going to explore the "import from Ning" options, which include a limited (but free) user profile importer, and a more powerful (but commercial – $79 US) importer from the WPMUDEV team led (I think) by [...]
[...] all over the place Skip to content HomeAbout BooneDonateCodeWordPress/WordPress MUShared BlogrollImport from Ning: Import Ning users to WordPress and BuddyPressBuddyPressBP Include Non-Member CommentsCustom Profile Filters for BuddypressBP TinyMCEInvite [...]
[...] una solución que aprovecha el archivo CSV que se puede generar mediante la lista de miembros. Ning to BuddyPress importer nos importará el nombre para mostrar, el usuario, el correo electrónico… Además, la [...]
[...] Developer at CUNY Academic Commons, has developed a sophisticated WordPress to BuddyPress importer, available for download from his [...]
[...] Teleogistic / Import from Ning: Import Ning users to WordPress and BuddyPress Uma ferramenta para ajudar a migrar uma rede ning para BuddyPress (tags: ning buddypress wordpress) [...]
+ 44 Tweets
@boonebgorges that’s why we (theBP community) should point all #Ning users to your #Buddypress migration plugin: http://bit.ly/cZincc
Ning-to-WordPress/BuddyPress http://bit.ly/cZincc
Dat had ik ook als alternatief in gedachten RT @chantalcoolsma: Ning-to-WordPress/BuddyPress http://bit.ly/cZincc
RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
RT @apeatling: RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
RT @apeatling: RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
RT @donncha @apeatling @buddypressdev: #Ning to #BuddyPress importer updated to support user and profile data import: http://bit.ly/b6MTuZ
RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
@mehulved this allows to import the users – http://is.gd/bz8jA – @priyankawriting
RT @apeatling: RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
#Ning Admins can now export to #BuddyPress + #WordPress: http://bit.ly/b6MTuZ
RT @CMSExpo: #Ning Admins can now export to #BuddyPress + #WordPress: http://bit.ly/b6MTuZ
RT @apeatling: RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
RT @CMSExpo: #Ning Admins can now export to #BuddyPress + #WordPress: http://bit.ly/b6MTuZ
RT @buddypressdev: #Ning to #BuddyPress importer now updated to support user and profile data import: http://bit.ly/b6MTuZ
D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amro
D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amta
RT @lyonelkaufmann: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amta
RT @lyonelkaufmann: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amta
RT @lyonelkaufmann: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amta
RT @lyonelkaufmann: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amta
RT @histoire: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amro Installé!!
RT @lyonelkaufmann: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amta
RT @histoire: D’actualité après le passage au payant de Ning: Import Ning users to WordPress and BuddyPress http://ow.ly/1Amro
van NING naar WP/Buddypress import plugin http://bit.ly/cZincc
Import from Ning: Import Ning users to WordPress & BuddyPress http://ow.ly/1As1B GREAT news for Ning users.
RT @chantalcoolsma: Ning-to-WordPress/BuddyPress http://bit.ly/cZincc
@kalmanmonika: @habosvilla: és most már budypressbe is lehet egyazegybe átvinni http://is.gd/bAqxF
http://tinyurl.com/y6ud6mh
Teleogistic / Import from Ning: Import Ning users to WordPress and BuddyPress
@michelemmartin there are two Ning->BuddyPress importers. http://bit.ly/cZincc and http://bit.ly/bCf0×5
@KrisColvin there are two Ning->BuddyPress importers. http://bit.ly/cZincc and http://bit.ly/bCf0×5
Teleogistic / Import from Ning: Import Ning users to WordPress and BuddyPress http://bit.ly/aAeSj8
RT @lernys: Teleogistic / Import from Ning: Import Ning users to WordPress and BuddyPress http://bit.ly/aAeSj8
Importar usuarios de Ning a WordPress y BuddyPress http://teleogistic.net/code/wordpresswordpress-mu/import-from-ning/ (vía @lernys)
Import from Ning: Import Ning users to WordPress and BuddyPress http://teleogistic.net/code/wordpresswordpress-mu/import-from-ning/
Import from Ning: Import Ning users to WordPress and BuddyPress – http://ow.ly/1Drk5 #edtech
RT @tonnet: Import from Ning: Import Ning users to WordPress and BuddyPress – http://ow.ly/1Drk5 #edtech
RT @tonnet: Import from Ning: Import Ning users to WordPress and BuddyPress – http://ow.ly/1Drk5 #edtech
RT @tonnet: Import from Ning: Import Ning users to WordPress and BuddyPress – http://ow.ly/1Drk5 #edtech
RT @tonnet: Import from Ning: Import Ning users to WordPress and BuddyPress – http://ow.ly/1Drk5 #edtech
#aroi เมื่อ Nng เก็บตังค์ ก็ย้ายมา WordPress+BuddyPress ดีกว่า! ด้วยปลั๊กอิน Import นี่แล http://goo.gl/fb/WR7jM
@nuntanuch hey!! Cool plugin to import user profile from Ning.com to buddypress =) http://bit.ly/bQtNgZ
@JomarHilario why not just migrate your ning site to a wordpress/buddypress site? http://goo.gl/YbdY
@grandopus @chrisbrogan At least one free Ning-To-BuddyPress converter is right here: http://bit.ly/cZincc
Post a Comment