twentyeleven_widgets_init

Definition:
function twentyeleven_widgets_init() {}

Register our sidebars and widgetized areas. Also register the default Epherma widget.

Source code

function twentyeleven_widgets_init() {



	register_widget( 'Twenty_Eleven_Ephemera_Widget' );



	register_sidebar( array(

		'name' => __( 'Main Sidebar', 'twentyeleven' ),

		'id' => 'sidebar-1',

		'before_widget' => '<aside id="%1$s" class="widget %2$s">',

		'after_widget' => "</aside>",

		'before_title' => '<h3 class="widget-title">',

		'after_title' => '</h3>',

	) );



	register_sidebar( array(

		'name' => __( 'Showcase Sidebar', 'twentyeleven' ),

		'id' => 'sidebar-2',

		'description' => __( 'The sidebar for the optional Showcase Template', 'twentyeleven' ),

		'before_widget' => '<aside id="%1$s" class="widget %2$s">',

		'after_widget' => "</aside>",

		'before_title' => '<h3 class="widget-title">',

		'after_title' => '</h3>',

	) );



	register_sidebar( array(

		'name' => __( 'Footer Area One', 'twentyeleven' ),

		'id' => 'sidebar-3',

		'description' => __( 'An optional widget area for your site footer', 'twentyeleven' ),

		'before_widget' => '<aside id="%1$s" class="widget %2$s">',

		'after_widget' => "</aside>",

		'before_title' => '<h3 class="widget-title">',

		'after_title' => '</h3>',

	) );



	register_sidebar( array(

		'name' => __( 'Footer Area Two', 'twentyeleven' ),

		'id' => 'sidebar-4',

		'description' => __( 'An optional widget area for your site footer', 'twentyeleven' ),

		'before_widget' => '<aside id="%1$s" class="widget %2$s">',

		'after_widget' => "</aside>",

		'before_title' => '<h3 class="widget-title">',

		'after_title' => '</h3>',

	) );



	register_sidebar( array(

		'name' => __( 'Footer Area Three', 'twentyeleven' ),

		'id' => 'sidebar-5',

		'description' => __( 'An optional widget area for your site footer', 'twentyeleven' ),

		'before_widget' => '<aside id="%1$s" class="widget %2$s">',

		'after_widget' => "</aside>",

		'before_title' => '<h3 class="widget-title">',

		'after_title' => '</h3>',

	) );

}

14763

twentyeleven_url_grabber

Definition:
function twentyeleven_url_grabber() {}

Return the URL for the first link found in the post content.

Return values

returns:URL or false when no link is present.

Source code

function twentyeleven_url_grabber() {

	if ( ! preg_match( '/<a\s[^>]*?href=[\'"](.+?)[\'"]/is', get_the_content(), $matches ) )

		return false;



	return esc_url_raw( $matches[1] );

}

14761

twentyeleven_theme_options_validate

Definition:
function twentyeleven_theme_options_validate( $input ) {}

Sanitize and validate form input. Accepts an array, return a sanitized array.

Parameters

  • $input

Defined filters

  • twentyeleven_theme_options_validate
    apply_filters( 'twentyeleven_theme_options_validate', $output, $input, $defaults )

Source code

function twentyeleven_theme_options_validate( $input ) {

	$output = $defaults = twentyeleven_get_default_theme_options();



	// Color scheme must be in our array of color scheme options

	if ( isset( $input['color_scheme'] ) && array_key_exists( $input['color_scheme'], twentyeleven_color_schemes() ) )

		$output['color_scheme'] = $input['color_scheme'];



	// Our defaults for the link color may have changed, based on the color scheme.

	$output['link_color'] = $defaults['link_color'] = twentyeleven_get_default_link_color( $output['color_scheme'] );



	// Link color must be 3 or 6 hexadecimal characters

	if ( isset( $input['link_color'] ) && preg_match( '/^#?([a-f0-9]{3}){1,2}$/i', $input['link_color'] ) )

		$output['link_color'] = '#' . strtolower( ltrim( $input['link_color'], '#' ) );



	// Theme layout must be in our array of theme layout options

	if ( isset( $input['theme_layout'] ) && array_key_exists( $input['theme_layout'], twentyeleven_layouts() ) )

		$output['theme_layout'] = $input['theme_layout'];



	return apply_filters( 'twentyeleven_theme_options_validate', $output, $input, $defaults );

}

14759

twentyeleven_theme_options_init

Definition:
function twentyeleven_theme_options_init() {}

Register the form setting for our twentyeleven_options array.
This function is attached to the admin_init action hook.

Source code

function twentyeleven_theme_options_init() {



	// If we have no options in the database, let's add them now.

	if ( false === twentyeleven_get_theme_options() )

		add_option( 'twentyeleven_theme_options', twentyeleven_get_default_theme_options() );



	register_setting(

		'twentyeleven_options',       // Options group, see settings_fields() call in twentyeleven_theme_options_render_page()

		'twentyeleven_theme_options', // Database option, see twentyeleven_get_theme_options()

		'twentyeleven_theme_options_validate' // The sanitization callback, see twentyeleven_theme_options_validate()

	);



	// Register our settings field group

	add_settings_section(

		'general', // Unique identifier for the settings section

		'', // Section title (we don't want one)

		'__return_false', // Section callback (we don't want anything)

		'theme_options' // Menu slug, used to uniquely identify the page; see twentyeleven_theme_options_add_page()

	);



	// Register our individual settings fields

	add_settings_field(

		'color_scheme',  // Unique identifier for the field for this section

		__( 'Color Scheme', 'twentyeleven' ), // Setting field label

		'twentyeleven_settings_field_color_scheme', // Function that renders the settings field

		'theme_options', // Menu slug, used to uniquely identify the page; see twentyeleven_theme_options_add_page()

		'general' // Settings section. Same as the first argument in the add_settings_section() above

	);



	add_settings_field( 'link_color', __( 'Link Color',     'twentyeleven' ), 'twentyeleven_settings_field_link_color', 'theme_options', 'general' );

	add_settings_field( 'layout',     __( 'Default Layout', 'twentyeleven' ), 'twentyeleven_settings_field_layout',     'theme_options', 'general' );

}

14757

twentyeleven_theme_options_add_page

Definition:
function twentyeleven_theme_options_add_page() {}

Add our theme options page to the admin menu, including some help documentation.
This function is attached to the admin_menu action hook.

Source code

function twentyeleven_theme_options_add_page() {

	$theme_page = add_theme_page(

		__( 'Theme Options', 'twentyeleven' ),   // Name of page

		__( 'Theme Options', 'twentyeleven' ),   // Label in menu

		'edit_theme_options',                    // Capability required

		'theme_options',                         // Menu slug, used to uniquely identify the page

		'twentyeleven_theme_options_render_page' // Function that renders the options page

	);



	if ( ! $theme_page )

		return;



	add_action( "load-$theme_page", 'twentyeleven_theme_options_help' );

}

14755