add_theme_support [ WordPress Function ]
add_theme_support ( $feature )
| Parameters: |
|
| Defined at: |
|
Benzer Fonksiyonlar: get_theme_support, remove_theme_support, _remove_theme_support, add_post_type_support, current_theme_supports
Allows a theme to register its support of a certain feature
Must be called in the theme's functions.php file to work. If attached to a hook, it must be after_setup_theme. The init hook may be too late for some features.
Source
<?php
function add_theme_support( $feature ) {
global $_wp_theme_features;
if ( func_num_args() == 1 )
$args = true;
else
$args = array_slice( func_get_args(), 1 );
switch ( $feature ) {
case 'post-formats' :
if ( is_array( $args[0] ) )
$args[0] = array_intersect( $args[0], array_keys( get_post_format_slugs() ) );
break;
case 'custom-header-uploads' :
return add_theme_support( 'custom-header', array( 'uploads' => true ) );
break;
case 'custom-header' :
if ( ! is_array( $args ) )
$args = array( 0 => array() );
$defaults = array(
'default-image' => '',
'random-default' => false,
'width' => 0,
'height' => 0,
'flex-height' => false,
'flex-width' => false,
'default-text-color' => '',
'header-text' => true,
'uploads' => true,
'wp-head-callback' => '',
'admin-head-callback' => '',
'admin-preview-callback' => '',
);
$jit = isset( $args[0]['__jit'] );
unset( $args[0]['__jit'] );
// Merge in data from previous add_theme_support() calls.
// The first value registered wins. (A child theme is set up first.)
if ( isset( $_wp_theme_features['custom-header'] ) )
$args[0] = wp_parse_args( $_wp_theme_features['custom-header'][0], $args[0] );
// Load in the defaults at the end, as we need to insure first one wins.
// This will cause all constants to be defined, as each arg will then be set to the default.
if ( $jit )
$args[0] = wp_parse_args( $args[0], $defaults );
// If a constant was defined, use that value. Otherwise, define the constant to ensure
// the constant is always accurate (and is not defined later, overriding our value).
// As stated above, the first value wins.
// Once we get to wp_loaded (just-in-time), define any constants we haven't already.
// Constants are lame. Don't reference them. This is just for backwards compatibility.
if ( defined( 'NO_HEADER_TEXT' ) )
$args[0]['header-text'] = ! NO_HEADER_TEXT;
elseif ( isset( $args[0]['header-text'] ) )
define( 'NO_HEADER_TEXT', empty( $args[0]['header-text'] ) );
if ( defined( 'HEADER_IMAGE_WIDTH' ) )
$args[0]['width'] = (int) HEADER_IMAGE_WIDTH;
elseif ( isset( $args[0]['width'] ) )
define( 'HEADER_IMAGE_WIDTH', (int) $args[0]['width'] );
if ( defined( 'HEADER_IMAGE_HEIGHT' ) )
$args[0]['height'] = (int) HEADER_IMAGE_HEIGHT;
elseif ( isset( $args[0]['height'] ) )
define( 'HEADER_IMAGE_HEIGHT', (int) $args[0]['height'] );
if ( defined( 'HEADER_TEXTCOLOR' ) )
$args[0]['default-text-color'] = HEADER_TEXTCOLOR;
elseif ( isset( $args[0]['default-text-color'] ) )
define( 'HEADER_TEXTCOLOR', $args[0]['default-text-color'] );
if ( defined( 'HEADER_IMAGE' ) )
$args[0]['default-image'] = HEADER_IMAGE;
elseif ( isset( $args[0]['default-image'] ) )
define( 'HEADER_IMAGE', $args[0]['default-image'] );
if ( $jit && ! empty( $args[0]['default-image'] ) )
$args[0]['random-default'] = false;
// If headers are supported, and we still don't have a defined width or height,
// we have implicit flex sizes.
if ( $jit ) {
if ( empty( $args[0]['width'] ) && empty( $args[0]['flex-width'] ) )
$args[0]['flex-width'] = true;
if ( empty( $args[0]['height'] ) && empty( $args[0]['flex-height'] ) )
$args[0]['flex-height'] = true;
}
break;
case 'custom-background' :
if ( ! is_array( $args ) )
$args = array( 0 => array() );
$defaults = array(
'default-image' => '',
'default-color' => '',
'wp-head-callback' => '_custom_background_cb',
'admin-head-callback' => '',
'admin-preview-callback' => '',
);
$jit = isset( $args[0]['__jit'] );
unset( $args[0]['__jit'] );
// Merge in data from previous add_theme_support() calls. The first value registered wins.
if ( isset( $_wp_theme_features['custom-background'] ) )
$args[0] = wp_parse_args( $_wp_theme_features['custom-background'][0], $args[0] );
if ( $jit )
$args[0] = wp_parse_args( $args[0], $defaults );
if ( defined( 'BACKGROUND_COLOR' ) )
$args[0]['default-color'] = BACKGROUND_COLOR;
elseif ( isset( $args[0]['default-color'] ) || $jit )
define( 'BACKGROUND_COLOR', $args[0]['default-color'] );
if ( defined( 'BACKGROUND_IMAGE' ) )
$args[0]['default-image'] = BACKGROUND_IMAGE;
elseif ( isset( $args[0]['default-image'] ) || $jit )
define( 'BACKGROUND_IMAGE', $args[0]['default-image'] );
break;
}
$_wp_theme_features[ $feature ] = $args;
}
?>
Examples [ wp-snippets.com ]
Google Arama Sonuçlarý
- add_theme_support - WordPress Codex
Description. Allows a theme or plugin to register support of a certain theme feature. If called from a theme, it should be done in the theme's functions.php file to ...
codex.wordpress.org - Post Thumbnails « WordPress Codex
They do this by putting the following in their functions.php file: add_theme_support( 'post-thumbnails' );. Note: To enable Post Thumbnails only for specific post ...
codex.wordpress.org - WordPress 2.9 add_theme_support and has_post_image - WP ...
Nov 3, 2009 ... The new the_post_image functionality in WordPress version 2.9 has been enhanced. New is the wp-settings.php line // Load in support for ...
wpengineer.com - add_theme_support() - a Function to Change the Future of ...
May 5, 2010 ... add_theme_support() - a function to change the future of WordPress theme development. Useful for managing thumbnails and site navigation.
www.junowebdesign.com
Kullanýcý Tartýþmalarý [ wordpress.org ]
- Moshe on "Adding Different Backgrounds to Different Sections Using Add_Custom_Background"
- esmi on "Adding Different Backgrounds to Different Sections Using Add_Custom_Background"
- Moshe on "Adding Different Backgrounds to Different Sections Using Add_Custom_Background"
- The Buddha Garden on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"
- JarretC on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"
- The Buddha Garden on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"
- The Buddha Garden on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"
- JarretC on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"
- The Buddha Garden on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"
- JarretC on "Can't Get Thumbnails To Show (neither Admin nor Frontpage)"