This is a child theme of the BuddyPress bp-default theme. http://codex.buddypress.org/theme-development/building-a-buddypress-child-theme/
We override:
header.php footer.php single.php style.css
And additionally provide function hooks in:
functions.php shortcodes.php
...and that's it! Wordpress' output is modified via callbacks in functions.php. We structure the page in header/footer but aim to use the parent theme's templates in all other cases. Wordpress always provides a more robust override mechanism.
Magazine
To create a magazine frontpage for your blog, create a page and choose 'Magazine' as its Template (on the right hand side).
Magazine mode will display:
- The latest blogpost with the category "Featured" at the top.
- The latest four blogposts which aren't that one beneath it.
The algorithm which displays a picture looks for "magazine.image" in the blogpost. Just add a HTML comment to your blog post:
<!-- magazine.image = http://flickr.com/my/magazine/image.jpg -->
There is a simple algorithm to choose which category is displayed on the ribbon. This file decides which category will be chosen first:
https://github.com/okfn/wordpress-theme-okfn/blob/master/category-priority.php
To use YARPP to display Related Posts as magazine entries on the post view page, open up the YARPP widget settings.
- Disable "Automatically display related posts"
- Select "Display using a custom template file" (yarpp-template-magazine.php)
Home
The Home template adds Magazine style blogposts to the bottom of the page. Only posts in a category named "Featured" will be displayed. Images are handled in the same manor as described above.
Presentation
Display content in a series of slides. Example here: http://staging.okfn.org/slides/
The theme can be customised in a variety of ways via the Theme Options. These settings can be found in WordPress admin under Appearance >OKFN Master Theme Options.
Carousel
To add a carousel to your page can be as simple as:
[carousel] [slide img="http://slide1.jpg" class="active"] [slide img="http://slide2.jpg"] [/carousel]
Please note that one of the slides must have class="active"
applied to it, this will be the first slide that is displayed.
Some predefined classes can be applied to the carousel to alter the styling:
text-right photo-stack
Other supported attributes are heading
and caption
. For example, to add a caption to a slide you would enter it as follows::
[carousel] [slide img="http://slide1.jpg" class="active"] [slide img="http://slide2.jpg" caption="My caption for slide two"] [/carousel]
Static Banner
If you only want a single banner image, use the below:
[banner bg="http://domain.com/bg-image.jpg"] Banner text here. [/banner]
Pseudo Sidebar
If you are using the 'One column, no sidebar' template to hide the default sidebar, you can mimic the default layout like so::
[pseudocontent] My main content [/pseudocontent] [pseudosidebar] My sidebar content [/pseudosidebar]
Image Caption
Wrap an image and its caption in a border
[caption width="450" caption="My caption"] <img src="http://image.jpg" alt="" width="450" /> [/caption]
Hide Page Title
Use to hide the page title
[notitle]
Full Width
Force content div to be 100% wide
[fullwidth]
BS Columns
Divide single column. Span is a number of the 12 Bootstrap columns
[row] [column span="6"] Left Column Content [/column] [column span="6"] Right Column Content [/column] [/row]
Clear
Clear floats
[clear]
Accordions
Use class="in"
to have the accordion open by default
[accordion heading="Heading One" class="in"] content [/accordion] [accordion heading="Heading Two"] content [/accordion]
RSS Ticker
Show scrolling previews from an RSS feed:
[rss feed="http://planet.okfn.org/feed" type="ticker"]
Image List
List of images with text beside
[il] [ili image="http://assets.okfn.org/web/images/blog-placeholder.png" title="Title One" description="Description One"] [ili image="http://assets.okfn.org/web/images/blog-placeholder.png" title="Title Two" description="Description Two"] [ili image="http://assets.okfn.org/web/images/blog-placeholder.png" title="Title Three" description="Description Three"] [/il]