mirror of
https://github.com/WordPress/WordPress.git
synced 2025-01-09 09:57:38 +01:00
Twenty Twelve: update theme options file to use PHP5 constructor and visibility keywords, and also minor DocBlock cleanup. Props Mamaduka and obenland, closes #21297.
git-svn-id: http://core.svn.wordpress.org/trunk@21280 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
9582854122
commit
d74e83ec52
@ -11,15 +11,28 @@ class Twenty_Twelve_Options {
|
|||||||
/**
|
/**
|
||||||
* The option value in the database will be based on get_stylesheet()
|
* The option value in the database will be based on get_stylesheet()
|
||||||
* so child themes don't share the parent theme's option value.
|
* so child themes don't share the parent theme's option value.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @var string
|
||||||
*/
|
*/
|
||||||
var $option_key = 'twentytwelve_theme_options';
|
public $option_key = 'twentytwelve_theme_options';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize our options.
|
* Holds our options.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @var array
|
||||||
*/
|
*/
|
||||||
var $options = array();
|
public $options = array();
|
||||||
|
|
||||||
function Twenty_Twelve_Options() {
|
/**
|
||||||
|
* Constructor
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return Twenty_Twelve_Options
|
||||||
|
*/
|
||||||
|
public function __construct() {
|
||||||
// Set option key based on get_stylesheet()
|
// Set option key based on get_stylesheet()
|
||||||
if ( 'twentytwelve' != get_stylesheet() )
|
if ( 'twentytwelve' != get_stylesheet() )
|
||||||
$this->option_key = get_stylesheet() . '_theme_options';
|
$this->option_key = get_stylesheet() . '_theme_options';
|
||||||
@ -37,8 +50,12 @@ class Twenty_Twelve_Options {
|
|||||||
* This call to register_setting() registers a validation callback, validate(),
|
* This call to register_setting() registers a validation callback, validate(),
|
||||||
* which is used when the option is saved, to ensure that our option values are properly
|
* which is used when the option is saved, to ensure that our option values are properly
|
||||||
* formatted, and safe.
|
* formatted, and safe.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
function options_init() {
|
public function options_init() {
|
||||||
// Load our options for use in any method.
|
// Load our options for use in any method.
|
||||||
$this->options = $this->get_theme_options();
|
$this->options = $this->get_theme_options();
|
||||||
|
|
||||||
@ -71,8 +88,12 @@ class Twenty_Twelve_Options {
|
|||||||
* Add our theme options page to the admin menu.
|
* Add our theme options page to the admin menu.
|
||||||
*
|
*
|
||||||
* This function is attached to the admin_menu action hook.
|
* This function is attached to the admin_menu action hook.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
function add_page() {
|
public function add_page() {
|
||||||
$theme_page = add_theme_page(
|
$theme_page = add_theme_page(
|
||||||
__( 'Theme Options', 'twentytwelve' ), // Name of page
|
__( 'Theme Options', 'twentytwelve' ), // Name of page
|
||||||
__( 'Theme Options', 'twentytwelve' ), // Label in menu
|
__( 'Theme Options', 'twentytwelve' ), // Label in menu
|
||||||
@ -84,8 +105,12 @@ class Twenty_Twelve_Options {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the default options.
|
* Returns the default options.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
*/
|
*/
|
||||||
function get_default_theme_options() {
|
public function get_default_theme_options() {
|
||||||
$default_theme_options = array(
|
$default_theme_options = array(
|
||||||
'enable_fonts' => false,
|
'enable_fonts' => false,
|
||||||
);
|
);
|
||||||
@ -95,15 +120,23 @@ class Twenty_Twelve_Options {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the options array.
|
* Returns the options array.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
*/
|
*/
|
||||||
function get_theme_options() {
|
public function get_theme_options() {
|
||||||
return get_option( $this->option_key, $this->get_default_theme_options() );
|
return get_option( $this->option_key, $this->get_default_theme_options() );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders the enable fonts checkbox setting field.
|
* Renders the enable fonts checkbox setting field.
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
function settings_field_enable_fonts() {
|
public function settings_field_enable_fonts() {
|
||||||
$options = $this->options;
|
$options = $this->options;
|
||||||
?>
|
?>
|
||||||
<label for="enable-fonts">
|
<label for="enable-fonts">
|
||||||
@ -117,8 +150,11 @@ class Twenty_Twelve_Options {
|
|||||||
* Returns the options array.
|
* Returns the options array.
|
||||||
*
|
*
|
||||||
* @uses get_current_theme() for back compat, fallback for < 3.4
|
* @uses get_current_theme() for back compat, fallback for < 3.4
|
||||||
|
* @access public
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
function render_page() {
|
public function render_page() {
|
||||||
?>
|
?>
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<?php screen_icon(); ?>
|
<?php screen_icon(); ?>
|
||||||
@ -141,8 +177,12 @@ class Twenty_Twelve_Options {
|
|||||||
* Sanitize and validate form input. Accepts an array, return a sanitized array.
|
* Sanitize and validate form input. Accepts an array, return a sanitized array.
|
||||||
*
|
*
|
||||||
* @see options_init()
|
* @see options_init()
|
||||||
|
* @access public
|
||||||
|
* @param array $input
|
||||||
|
*
|
||||||
|
* @return array The validated data.
|
||||||
*/
|
*/
|
||||||
function validate( $input ) {
|
public function validate( $input ) {
|
||||||
$output = $defaults = $this->get_default_theme_options();
|
$output = $defaults = $this->get_default_theme_options();
|
||||||
|
|
||||||
// The enable fonts checkbox should boolean true or false
|
// The enable fonts checkbox should boolean true or false
|
||||||
@ -154,14 +194,15 @@ class Twenty_Twelve_Options {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Implement Twenty Twelve theme options into Theme Customizer
|
* Implement Twenty Twelve theme options into Theme Customizer.
|
||||||
*
|
|
||||||
* @param $wp_customize Theme Customizer object
|
|
||||||
* @return void
|
|
||||||
*
|
*
|
||||||
* @since Twenty Twelve 1.0
|
* @since Twenty Twelve 1.0
|
||||||
|
* @access public
|
||||||
|
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
*/
|
*/
|
||||||
function customize_register( $wp_customize ) {
|
public function customize_register( $wp_customize ) {
|
||||||
// Enable Web Fonts
|
// Enable Web Fonts
|
||||||
$wp_customize->add_section( $this->option_key . '_enable_fonts', array(
|
$wp_customize->add_section( $this->option_key . '_enable_fonts', array(
|
||||||
'title' => __( 'Fonts', 'twentytwelve' ),
|
'title' => __( 'Fonts', 'twentytwelve' ),
|
||||||
|
Loading…
Reference in New Issue
Block a user