What are Code Snippets?
Very often with a BuddyPress site there is a need to make minor changes to the default behaviour of the site not supported by the available settings. Often these changes can be implemented using plugins but in a lot of cases what is required are small sections of code that you will insert into your sites files called Code Snippets.
This section of the site is intended to introduce you to the idea of using code snippets and I’ve included a number of example code snippets in these pages to show you the kinds of changes you can make with them, I’m not going to create an extensive library of code snippets here, those are available elsewhere.
Code Snippets vary from a single line of text to many lines and their location in terms of the file that they need to be inserted into can vary but for most applications code snippets in the BuddyPress world are placed in one of two files:
This latter file, bp-custom.php does not exist by default, you have to create it.
Placing your site modifications in the themes functions.php ties your code snippets to that theme and those modifications would be lost if you were to change your theme. Using wp-custom.php avoids this potential issue for BuddyPress code modifications.
One of the problems with using code snippets on your site is the added complexity they add in terms of managing the site and often simply remembering exactly why you added that code. Also code snippets add complexity when troubleshooting as sometimes they themselves can cause issues depending on the complexity of your site.
If you do add code snippets to your files it is important that you include in the snippet a reasonable description of what the code is for so that when you are editting the file in future you can easily remind yourself why you installed that particular code snippet.
In order to install code snippets on your site you will need to have a file editor and also you need the ability to transfer files to and from your site. For file editing there are a variety of free options available, for simple snippets even NotePad or Notepad+ will do. For file transfer you may use software such as FileZilla.
For functions.php changes, first of all you will need to copy your themes functions.php file to your local storage. You will then edit the local copy and add the code snuppet below the section marked “Your code goes here”, you will then save the file and copy it into your themes directory then test. Make sure you keep a backup of the original file so that if the snippet goes wrong you can quickly restore your site. There is no need to wrap your code in PHP tags.
For wp-custom.php you will need to create this file with your editor and add your code to it. Make sure you remember to wrap your code in <?php and ?> tags. Next you will copy the wp-custom.php file to your plugins directory and test. If it fails you may need to delete this file from your site and try again.
Managing Code Snippets
There is a plugin that is of great benefit for sites with the need to manage a few code snippets, this is the Code Snippets WordPress plugin. This plugin allows you to insert your code snippets into a site via a neat user interface and add titles and descriptions to your code snippets, giving you much more potential management information and making sure you do not forget what a snippet is for. Using this plugin avoids the need to have a seperate editor and file transfer software to your site.
Where to get Code Snippets?
There are quite a few places to get code snippets for BuddyPress, here is a list of some of the most populat sources:
The BuddyPress documentation pages provide a lot of information about modifying BuddyPress and often include example code snippets.
The BuddyPress support forums are a major source of code snippets, simply search the forum and you will find a huge number of snippets.
A number of code snippets can be obtained here.
Of course, when it comes to code snippets, Google is your friend…