Up until today I did not know the difference between bp-custom.php and functions.php within a BuddyPress installation. It turns out that bp-custom.php is basically a functions file that is theme-independent. What that means is that if you have a function that you want to run irrespective of whatever theme is active, you put it in bp-functions.php.

Pretty nifty!


  1. Boone Gorges on May 14, 2012 at 10:46 pm

    Also: bp-custom.php is loaded as soon as the plugin files are included (https://core.trac.wordpress.org/browser/tags/3.3.2/wp-settings.php#L194) while functions.php doesn’t get included until the theme gets set up (https://core.trac.wordpress.org/browser/tags/3.3.2/wp-settings.php#L281). This sometimes makes a difference when you want to change, eg, certain initialization constants for BP, in which case functions.php is too late. Whee!

    • toby on May 15, 2012 at 4:16 pm

      Right on, Boone! Thanks for the extra info!