Opened 14 years ago
Closed 14 years ago
#2732 closed defect (bug) (fixed)
BuddyPress forces reinstallation when upgrading to WP Network
Reported by: | boonebgorges | Owned by: | |
---|---|---|---|
Milestone: | 1.5 | Priority: | critical |
Severity: | Version: | 1.5 | |
Component: | Core | Keywords: | |
Cc: |
Description
I think it has something to do with the fact that on single WP, BP expects to find its options in wp_options, but on MS, it expects them in wp_sitemeta.
Attachments (2)
Change History (7)
#2
@
14 years ago
It's actually a bit more complicated than that (unfortunately).
See the attached patch. It adds a new kind of upgrade routine for those who have just installed multisite. In order to make this patch work, I had to apply the patch https://trac.buddypress.org/attachment/ticket/2518/save_pages_to_blog_meta.patch from #2518 and http://trac.buddypress.org/attachment/ticket/2717/dudewheresmycar.patch from #2717. So it's kind of a mega-patch.
Please test with a WP installation with BP that you then upgrade to MS. If it's functional, I'd like to commit it so that we can iterate.
#4
@
14 years ago
Unless I've misread, get_site_option on multisite will call unserialize but get_option doesn't. We're storing 'bp-pages' as an array. We're getting array_merge errors on line 835 of the patched bp-core-upgrade.php.
#5
@
14 years ago
- Resolution set to fixed
- Status changed from new to closed
(In [3463]) Adds Upgrade routine for WP MS activation. Fixes #2732. Moves site options loading functions to ensure that they're loaded at activation. Fixes #2717, props DJPaul. Modifies the way that bp-pages data is stored in and fetched from options tables on multisite. References #2518. The only thing this patch does not do is bake pie.
I think because currently bp_core_activate_site_options() is commented out. I thought I had put that back in -- or at least a patch on trac for review -- but I must have forgot to commit or I can't find it.
IIRC bp_core_activate_site_options() needs to be moved into bp-loader.php, and the call moved to the top of bp-loader.php.