Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
PHP
branch: master
Failed to load latest commit information.
css changed folder structure
js changed folder structure
library fixed bug in advanced recent posts widget
404.php changed folder structure
archive.php changed folder structure
author.php changed folder structure
category.php changed folder structure
comments.php changed folder structure
content-aside.php changed folder structure
content-gallery.php changed folder structure
content-image.php changed folder structure
content-page.php changed folder structure
content-single.php changed folder structure
content.php changed folder structure
footer.php changed folder structure
functions.php changed folder structure
header.php changed folder structure
index.php changed folder structure
loop-nav.php changed folder structure
menu-primary.php changed folder structure
page.php changed folder structure
readme.txt changed folder structure
search.php changed folder structure
searchform.php changed folder structure
sidebar-after-content.php changed folder structure
sidebar-before-content.php changed folder structure
sidebar-subsidiary.php changed folder structure
sidebar.php changed folder structure
single.php changed folder structure
style.css changed folder structure
tag.php changed folder structure
tpl_full-width-page.php changed folder structure

readme.txt

BareSkin Theme v. 0.8

## Adding new theme settings ## 

# Adding a box to the settings page:
 - you must use the "add_meta_boxes" action hook:
 
	add_action( 'add_meta_boxes', 'bareskin_meta_box_add_new_box' );
	
- either use the global $bareskin_settings_page or 'appearance_page_theme-settings'
- add_meta_box $context var can be 'normal', 'side' or 'advanced'

	function bareskin_meta_box_add_new_box() {		
		global $bareskin_settings_page;
		/* Get theme information. */
		$prefix = bareskin_get_prefix();
		$domain = bareskin_get_textdomain();
		
		add_meta_box( 'new-metabox-slug', __( 'New Meta Box', $domain ), 'bareskin_meta_box_new_box_display', $bareskin_settings_page, 'side', 'high' );	

	}
- the processing of the actual fields is done using the Settings API. No need to bother with nonce.
- you must use bareskin_settings_field_name('example-name') to generate a name attribute for the field, and  bareskin_get_setting('example-name') to retrive the value. 	
	function bareskin_meta_box_new_box_display(){
		$domain = bareskin_get_textdomain();
		?>
		<p>
			<span class="description"><?php _e( 'This is a new meta box .', $domain ); ?></span>
		</p>
		
		<p>
			<input type="text" id="<?php echo bareskin_settings_field_id( 'new_input_text' ); ?>" name="<?php echo bareskin_settings_field_name( 'new_input_text' ); ?>" value="<?php echo esc_attr( bareskin_get_setting( 'new_input_text' ) ); ?>" />
			<textarea id="<?php echo bareskin_settings_field_id( 'new_textarea' ); ?>" name="<?php echo bareskin_settings_field_name( 'new_textarea' ); ?>" cols="60" rows="5"><?php echo esc_textarea( bareskin_get_setting( 'new_textarea' ) ); ?></textarea>
		</p>
		<?php	
	}

# Optional: Sanitizing the settings or processing them in any unconventional way 

- use the '{$prefix}_add_to_validation' filter where prefix is the slug of your theme. You can retrieve it using bareskin_get_prefix();
 
	/* Sanitize the settings before adding them to the database. */
	add_filter( bareskin_get_prefix().'_add_to_validation', 'bareskin_new_meta_box_sanitize' );

- recieves $settings array and must return it
	function bareskin_new_meta_box_sanitize( $settings ){
	
		/* Make sure we kill evil scripts from users without the 'unfiltered_html' cap. */
		if ( isset( $settings['new_textarea'] ) && !current_user_can( 'unfiltered_html' ) )
			$settings['new_textarea'] = stripslashes( wp_filter_post_kses( addslashes( $settings['new_textarea'] ) ) );
		
		return $settings;
	}

# Optional: add default settings

- use '{$prefix}_default_theme_settings' filter


## Adding menus 

- in the add_theme_support( 'bareskin-menus' ) call fom functions.php you must pass a second parameter like this:
	/*two menus will be registered: 'primary' and 'secondary' */
	add_theme_support( 'bareskin-menus', array( 'primary', 'secondary' ) );

## Adding sidebars

- use the 'bareskin_register_sidebars' filter like this

	add_filter('bareskin_register_sidebars', 'add_some_new_sidebars' );

	function add_some_new_sidebars($sidebars){
		$domain = bareskin_get_textdomain();
		
		$sidebars['new-sidebar'] = array(
				'name' =>	_x( 'New Sidebare', 'sidebar', $domain ),
				'description' =>	__( 'Loaded on singular post (page, attachment, etc.) views before the comments area.', $domain ));
		return $sidebars;
	}
- pass to the second argument of add_theme_support('bareskin-sidebars')' the sidebar id like so

	add_theme_support( 'bareskin-sidebars', array( 'new-sidebar' ) );
Something went wrong with that request. Please try again.