I’m on WPMU 2.8.1 (not trunk) and BP 1.0.3 (not trunk) and the directories show up fine for me.
Here is the stack trace (while I’m debugging this thing) if anyone wants to see: (some private info stripped)
( ! ) Warning: require_once(/var/www/vhosts/example.com/htdocs/wp-content/themes/myspecialtheme/directories/groups/groups-loop.php) [function.require-once]: failed to open stream: No such file or directory in /var/www/vhosts/example.com/htdocs/wp-includes/theme.php on line 843
Call Stack
# Time Memory Function Location
- 0.0002 58868 {main}( ) ../index.php:0
- 0.0002 59300 require( ‘/var/www/vhosts/example.com/htdocs/wp-blog-header.php’ ) ../index.php:17
- 0.0003 60296 require_once( ‘/var/www/vhosts/example.com/htdocs/wp-load.php’ ) ../wp-blog-header.php:19
- 0.0004 60884 require_once( ‘/var/www/vhosts/example.com/htdocs/wp-config.php’ ) ../wp-load.php:30
- 0.0006 62376 require_once( ‘/var/www/vhosts/example.com/htdocs/wp-settings.php’ ) ../wp-config.php:122
- 0.0833 2258120 do_action( ) ../wp-settings.php:787
- 0.0960 2447636 call_user_func_array ( ) ../plugin.php:339
- 0.0960 2447636 bp_core_add_ajax_hook( ) ../plugin.php:0
- 0.0960 2447636 do_action( ) ../bp-core-ajax.php:4
- 0.0961 2447636 call_user_func_array ( ) ../plugin.php:339
- 0.0961 2447636 bp_core_ajax_directory_groups( ) ../plugin.php:0
- 0.0963 2448372 load_template( ) ../bp-groups-ajax.php:215
- ‘myspecialtheme’ is the theme being used on wpmu.
- I find it wierd that it’s trying to look for ‘/var/www/vhosts/example.com/htdocs/wp-content/themes/myspecialtheme/directories/groups/groups-loop.php’.
- ‘group-loop.php’ is actually in ‘bpmember’ not in themes.
I just have to find out why it’s trying to look there…
To Clarify futher, it’s the ajax search. The top-level search works fine.
Looks like when the jquery post() is run, wpmu/bp looks at the location and pulls the corresponding theme locations from the backend based on ‘ajaxurl’ (one of args to post).
When I alter the ajax url to ‘http://example.com/groups’ from htttp://example.com’ it works propertly.
Now I have to find out why ajaxurl is being written without ‘groups’.
ajaxurl gets populated via root_domain + _SERVER[‘SCRIPT_NAME’]
As soon as I saw that I knew what had happened.
As some of you know, we’re working on our nginx modules which necessitates some custom phpfpm alterations (which we hope to contribute pending our modules). During this, we had to temporarily turn off our fastcgi_params script_name reference and well the rest is history.
Moral of the story, make sure your php backend is stable before you mess around.
This thread is now resolved/closed.