Welcome to the BioShip Theme Framework Documentation...

Installation

The Basic Install for BioShip is simple and straightforward as with a standard WordPress Theme, just download the BioShip Zip file and upload it via the Theme page in your WordPress admin area (or unzip locally and upload to your theme folder.)

Alternatively you can do a Preview Install using the instructions below. This allows you to setup the theme before activating it - a kind of theme sandbox if you will - something traditionally hard to do in WordPress without creating a development copy of the entire site! (although, the in-built WordPress Customizer API is slowly getting there, and may be supported in future...)

Sidenote: To compensate for different themes having different menu and sidebar data, BioShip attempts to backup/restore your menus and sidebars when it is activated or deactivated. This helps preserve your menu/sidebar setup associated with each theme. While WordPress has improved this process recently, this extra step keeping all the matching sidebar data for activation/deactivation themes. (Another good way to backup your Widget Layouts is with the Widget Saver plugin.)

Basic Install

(recommended for fresh or development sites)

1. Download the BioShip ZIP (right-click and "Save Linked Content As") to your computer.
2. Login to your WordPress admin area if you are not already.
3. Visit your WordPress admin Themes page and upload via the Add New -> Upload page.
4. Activate the theme once it is uploaded.
5. You can now access the Theme Options page via the Appearance menu or via the top Admin Bar.

Preview Install

(recommended for live sites with an existing theme)

1. Login to your WordPress admin area if you are not already.
2. Install the Theme Test Drive Plugin from your WordPress admin Plugins page via Add New and activate.
3. Visit your Theme Test Drive settings page under the Appearance admin menu.
4. Copy the URL of the BioShip ZIP (right-click and "Copy Link Address") and paste into the Easy Install section and Install.
5. Now, you can either:
a. Activate the Theme Test Drive for the BioShip theme with Level 10 (administrator) privileges. Remember the theme test drive for the theme will be active for all administrators until you disable it via this page! You can now access the Theme Options page via the Appearance menu or via the top Admin Bar.
or b. Use a querystring for a temporary preview of the theme on any page, by adding ?theme=bioship to the page address URL in your browser window. You probably want to change the Theme Options first, so you can access the Theme Options page manually in this temporary preview mode by going to:
/wp-admin/themes.php?page=options-framework&theme=bioship
(Generally speaking, if you are the sole site admin of the site then option 5a is fine, otherwise you might want to go with step 5b so that other site admins don't see the new theme preview while you're developing it!)

Theme Updates

(via WordPress Updgrader)
Theme updates are available via your Themes page, just as they would be for any standard theme in the WordPress.Org repository. Clicking on Update Available on the BioShip Theme will bring up the Theme Details. From there you can click on view version x.x.x Details before updating to show you the latest changes, and then you can simply click on update now to update to the latest version. BioShip uses WShadow Theme Updater to make this possible. Thanks WShadow!

Manual Theme Update

(for super-safe updating)

1. Download the latest BioShip ZIP (right-click and "Save Linked Content As") to your computer.
2. Unzip the file locally, then upload it by FTP to:
/wp-content/themes/bioship-2/
3. Rename the existing /bioship/ subdirectory to /bioship-old/
4. Rename the /bioship-2/ subdirectory to /bioship/
5. Check the new version is working and if so delete /bioship-old/
This fast "switcheroo" install will update to the new framework core with no downtime, and if you have any problems at all you can always switch back to the previous version.

Theme Options


Here's the extensive options you can expect to find with BioShip via the Theme Options page in the Appearance menu (or via the top Admin Bar):

Though most options are fairly self-explanatory, each of the options has some helper text to make it clearer also. The various option tabs are divided into three main layers which are accessible by clicking the relevant filter tabs:
Skeleton - Main layout etc, you will want to set this first but rarely change.
Muscle - All the extended functionality to better integrate with WordPress.
Skin - All the basic options you need for the design of your new site. 🙂

A full list of Theme Options extracted directly from the theme's option.php can be found HERE


PerPost Metabox


You will also find a Theme Options metabox on the post/page writing screen which allows you to override default display and other settings on a per-post or per-page basis, giving you fine-grained control over many of the page elements (without having to resort to other more complex workarounds to achieve the same effect, such as one-column templates, hiding elements with styles and endless page-targeted CSS rules that clutter your stylesheets.

Here's an expanded list of the options you will find there:

Theme Tools

Theme Options can be backed up, restored, exported or imported via the Theme Tools metabox on the Info Tab of the Theme Options (or Theme Info) page. Expanding the metabox will give you the interface. The backup and restore is a single "slot" for backing up your theme options. You can export your Theme Options in XML or JSON format, and import them in the same format via a textarea or file upload form. (Note: partial imports are fine, the import will only override settings found in the imported data.)

Child Theming

Setting up a Child Theme using the BioShip Theme Framework as your Parent Theme is very easy and highly recommended for best practice development. The main reason being as with any Child Theme you can keep the Parent Theme Framework updated (allowing for improvements and fixes to the Framework to easily be installed) without losing your own file customizations and functions. As most websites require *some* kind of customization of this kind, being able to add and modify your child theme functions.php is the most basic of features that a Parent Theme should support.

There are of course many other potential benefits to having a Child Theme, such as being able to override Templates, Javascript and CSS file, as well as modifying layout hooks for easy reordering, replacing or adding of page elements, and custom value filters for even further possibilities. For more information, you can also check out Child Themes on the WordPress Codex.

To make it even easier, BioShip now has One-click Creation for Child Themes, so you can get customizing as soon as possible. Plus, BioShip auto-transfers your Parent Theme options to Child Theme ones when you first activate your BioShip Child Theme, so there should be no need to set the same options again if you are moving from using BioShip as a parent theme to a child one.

One-Click Child Theme Install


Visit your Theme Options page under the WordPress admin Appearance menu. Enter a new Child Theme display name in the box under the layer tabs and click Create Child Theme. Activate on the next page and you are now running your new child theme!

Manual Child Theme Install


Unzip your download of BioShip locally, and on your WordPress admin Theme page, upload the file bioship-child.zip from the /bioship/ folder of the extracted theme framework.
Alternatively, once extracted, upload the contents of the subdirectory /bioship/child-source/ via FTP to a subdirectory of your choice in the /wp-content/themes/ directory. (eg. /wp-content/themes/sweet-child-of-mine/)

Before Activating: Optionally rename the Child Theme directory and edit the Name Field of the Child Theme at the top of the style.css file in the directory you created. (Important Note: if you change this name later you will need to copy the saved Theme Options to the new one in the options table.) This will change the name of the active theme in your admin area. Once as desired, simply activate the new Child Theme from your Themes page and you're good to go!

Preview Child Theme Install


1. Follow either option above but do not activate yet. Instead, make sure you have Theme Theme Drive plugin installed and activated, and either:
2a. Activate the Theme Test Drive for your Child Theme with Level 10 (administrator) privileges. Remember the theme test drive for the theme will be active until you disable it via this page! You can now access the Theme Options page under the Appearance menu or via the top Admin Bar.
or 2b. Use a querystring for a temporary preview of the Child Theme on any page, by adding ?theme=child-theme-slug to the page address URL in your browser window (where child-theme is your Child Theme's slug - a lowercase version of Child Theme name with spaces replaced by hyphens.) You probably want to change the Theme Options first, so you can access the Theme Options page manually in this temporary preview mode by going to:
/wp-admin/themes.php?page=options-framework&theme=child-theme-slug

In this way you can create a new Child Theme skin for your site and activate it once you are satisfied with the new design result. Again, generally speaking, if you are the sole site admin of the site then option 2a is fine, otherwise you might want to go with 2b so that other site admins don't see the new theme preview while you're developing it.

Framework Files

The BioShip Theme Framework uses an extended file hierarchy so you can easily override any Core Theme Files, Javascript and CSS Stylesheets by copying the existing files to your Child Theme and modifying them. You can also override any Page Templates, Content Templates, Sidebar Templates etc. or create new ones for Custom Post Types or Post Formats.

File Hierarchy

The file hierarchy will search in order:
1. the Child Theme subdirectory (eg. /images or /content)
2. the main Child Theme directory ("Stylesheet" directory)
3. the Parent Theme subdirectory (eg. /images or /content)
4. then main Parent Theme directory ("Template" directory")
It will then use the first matching file it finds. While for most designs this is kind of advanced customization will be unnecessary - as the existing files are written to handle a wide variety of cases very well - having the easy option to override anything can remove many unnecessary headaches to your custom development needs

Note: To override existing theme functions rather than files, use your Child Theme's functions.php file, as WordPress intentionally loads this file before the Parent Theme's functions.php - as all these functions are pluggable (wrapped in conditional function_exists checks.) So are the functions in muscle.php and options.php if you want to override any of those. If you need more clarity, you can check out Child Themes on the WordPress Codex.

A possible exception to this is re-ordering layout and adding page elements, as generally speaking the action added to layout hooks need to exist before they can be removed or re-ordered. Makes sense, right? For doing this see your Child Theme's layout.php or the Advanced tab for more information.

Core Theme Files (/wp-content/themes/bioship)
functions.php (Theme Setup and Skull Functions)
skeleton.php (Skeleton Templating Functions)
muscle.php (Extended Muscle Functions)
skin.php (Dynamic CSS Skin Output)
options.php (Theme Options and Fonts)
hooks.php (Layout Hook Guide)
Javascripts (.../javascripts/)
/wp-content/themes/bioship/javascripts/scriptname.js
copy to: /wp-content/themes/my-child-skin/javascripts/scriptname.js
(or if you prefer: /wp-content/themes/my-child-skin/js/scriptname.js)
(Note: custom.js will be auto-loaded if found.)
CSS Stylesheets (.../css/)
/wp-content/themes/bioship/css/stylesheet.css
copy to: /wp-content/themes/my-child-skin/css/stylesheetname.css (Note: theme option to auto-load custom.css if found.)
Other Directories
Options Framework (.../options/)
Hybrid Core (.../hybrid/)
Foundation (.../foundation/)
3rd Party Includes (.../includes/)
3rd Party Templates (.../templates/)

Templates


BioShip extends upon the WordPress Template Hierarchy to make it even more flexible. (To prevent possible conflicts, it uses the Hybrid template hierarchy whether Hybrid Core is activated or not.) It provides a better way of handling Custom Post Types and Post Formats, and finding or overriding templates in general. The actual template hierarchy functions can be found in /bioship/hybrid/functions/template.php

See your Child Theme's templates.php for a detailed list of the Template Hierarchy and the existing template files, the latest version is reproduced below for reference:




Pluggable Functions

Remember, all the functions in BioShip functions.php, muscle.php and options.php are "pluggable", so they can be overridden in your Child Theme's functions.php file. See the Child Theme tab for more information.

Layout Hooks

If you want to change the page layout or add page elements, you can hook into the page actions to add or re-order page elements, by unhooking and re-hooking them. A simple example would be moving the main navigation bar above the header.

For examples, see your Child Theme's functions.php file. There is also a Layout Hook Reference available in your Child Theme's hooks.php, the latest version of which is reproduced below for reference:


Value Filters

If you want to customize the output for different conditions, you can adjust various value filters within BioShip with conditional logic. Generally speaking these filters would be used by developers to handle specific pages or posts or post types in a different way.

For examples, see your Child Theme's filters.php file, the latest version is reproduced below for reference. None of the available example filters are active by default.




Extensions and Integrations

For extensions and integration notes, please see the separate Extensions page. You will also find information and links there for the various cross-browser CSS and Javascript helpers available.

Leave a Reply

Your email address will not be published. Required fields are marked *


*


Please copy the string qdqfam to the field below: