What is a theme?
A theme is essentially a design for a website, it defines the page layout as well as items such as colours and fonts. Themes work by using templates which create each page on your site. When we talk about BuddyPress themes then this means that BuddyPress functionality has been added to the theme in additional to what is offered in a standard WordPress Theme.
Here are some links to general theme resources
WordPress theme handbook
WordPress CSS coding standards
WordPress theme check plugin ensures themes comply with WordPress standards..
Theme structure – files
Once installed, your theme will reside in the
wp-content/themes directory on your site.
There are only two required files for any WordPress Theme:
index.php – The main template file
style.css – The main style file.
Other files that may be found in themes:
PHP files, including template files
Text Files – such as
readme.txt and a changelog
Common WordPress Template Files
index.php – the main template file, required for all themes.
style.css – The main stylesheet, required for all themes.
rtl.css – Right to left stylesheet, for languages where right to left text is used.
comments.php – The comments template.
front-page.php – Used when Static Front Page is set.
home.php – the default home page template.
header.php – This usually contains your sites document type, meta information, links to stylesheets and scripts plus other information.
single.php – The template used for single posts.
page.php – The template used for single pages.
category.php – The template used when posts are selected using categories.
tag.php – The template used when posts are selected using tags.
404.php – The template used when WordPress is unable to find the page/post that has been requested.
Your options on choice of theme and how to proceed are many and varied, the following sections identify the main areas.
Use a WordPress theme, with Theme Compatibility
Because of Theme Compatibility BuddyPress is compatible with the majority of WordPress themes, but this is a basic level of compatibility, there themes will not have BuddyPress specific features and you may find this aspect limiting as your site develops.
Use an existing BuddyPress theme
There are a range of free and paid for themes available that specifically support BuddyPress, you may choose one of these as the quickest way of setting up and have specific BuddyPress features from day one; custom profile and members directory pages for example. However you will still be using the same features as everyone else using that theme, you may require your site to be further customised to support your specific member base.
Tailor an existing theme with custom CSS code
Once you choose an off the shelf theme then customising it with CSS can be a quick and easy way of tailoring it to your requirements. You might use an advanced CSS Editor such as SiteOrigin CSS. Whilst being relatively quick and straightforward, this might not provide you with the range of customisations that you want for your site.
Create custom template files in a child theme
A significant step towards creating your own theme is to add your own custom templates to an off the shelf theme in order to get the page design that you need.
Create your own theme
This is the ultimate in creating your own unique BuddyPress site, it takes a lot more time and effort but if you want to have total control over the look of your site then creating a custom theme is one way of achieving this. Themes are rarely created from scratch however, often a basic default theme such as Underscores is used as a starting template which undergoes significant modification.
Sources of themes
The main source of free WordPress and BuddyPress themes is the WordPress Theme Directory.
Paid for Themes
There are a variety of vendors of paid for BuddyPress themes, some of the main providers are listed here.