查找内容:
指定编码:
GB2312
UTF-8
BIG5
EUC-KR
EUC-JP
SHIFT-JIS
WINDOWS-874
ISO-8859-1
<?php /** * Implementation of the Custom Header feature * http://codex.wordpress.org/Custom_Headers * * @package Catch Themes * @subpackage Adventurous * @since Adventurous 1.0 */ /** * Setup the WordPress core custom header feature. * * Use add_theme_support to register support for WordPress 3.4+ * as well as provide backward compatibility for previous versions. * Use feature detection of wp_get_theme() which was introduced * in WordPress 3.4. * * @todo Rework this function to remove WordPress 3.4 support when WordPress 3.6 is released. * * @uses adventurous_header_style() * @uses adventurous_admin_header_style() * @uses adventurous_header_image() * * @package Adventurous */ function adventurous_custom_header_setup() { // Default custom headers packaged with the theme. %s is a placeholder for the theme template directory URI. register_default_headers( array( 'highway' => array( 'url' => '%s/images/demo/header-1-1600x400.jpg', 'thumbnail_url' => '%s/images/demo/header-1-320x66.jpg', /* translators: header image description */ 'description' => __( 'Highway', 'adventurous' ) ), 'buddha' => array( 'url' => '%s/images/demo/header-2-1600x400.jpg', 'thumbnail_url' => '%s/images/demo/header-2-320x66.jpg', /* translators: header image description */ 'description' => __( 'Buddha', 'adventurous' ) ), ) ); $args = array( // Header image random rotation default 'random-default' => false, // Text color and image (empty to use none). 'default-text-color' => '000', // Set height and width, with a maximum value for the width. 'height' => 400, 'width' => 1600, // Support flexible height and width. 'flex-height' => false, 'flex-width' => false, // Random image rotation off by default. 'random-default' => false, // Callbacks for styling the header and the admin preview. 'wp-head-callback' => 'adventurous_header_style', 'admin-head-callback' => 'adventurous_admin_header_style', 'admin-preview-callback' => 'adventurous_admin_header_image', ); $args = apply_filters( 'adventurous_custom_header_args', $args ); /* * This theme supports custom header for logo * */ add_theme_support( 'custom-header', $args ); } add_action( 'after_setup_theme', 'adventurous_custom_header_setup' ); /** * Shiv for get_custom_header(). * * get_custom_header() was introduced to WordPress * in version 3.4. To provide backward compatibility * with previous versions, we will define our own version * of this function. * * @todo Remove this function when WordPress 3.6 is released. * @return stdClass All properties represent attributes of the curent header image. * * @package Catch Themes * @subpackage Adventurous * @since Adventurous 1.0 */ if ( ! function_exists( 'get_custom_header' ) ) { function get_custom_header() { return (object) array( 'url' => get_header_image(), 'thumbnail_url' => get_header_image(), 'width' => HEADER_IMAGE_WIDTH, 'height' => HEADER_IMAGE_HEIGHT, ); } } if ( ! function_exists( 'adventurous_header_style' ) ) : /** * Styles the header image and text displayed on the blog * * @see adventurous_custom_header_setup(). * * @since Adventurous 1.0 */ function adventurous_header_style() { // If no custom options for text are set, let's bail // get_header_textcolor() options: HEADER_TEXTCOLOR is default, hide text (returns 'blank') or any hex value if ( HEADER_TEXTCOLOR == get_header_textcolor() ) return; // If we get this far, we have custom styles. Let's do this. ?> <style type="text/css"> <?php // Has the text been hidden? if ( 'blank' != get_header_textcolor() ) { ?> #site-title a, #site-description { color: #<?php echo get_header_textcolor(); ?> !important; } <?php } ?> </style> <?php } endif; // adventurous_header_style if ( ! function_exists( 'adventurous_admin_header_style' ) ) : /** * Styles the header image displayed on the Appearance > Header admin panel. * * @see adventurous_custom_header_setup(). * * @since Adventurous 1.0 */ function adventurous_admin_header_style() { ?> <style type="text/css"> <?php if ( HEADER_TEXTCOLOR == get_header_textcolor() ) : ?> #site-logo, #hgroup { display: inline-block; float: left; } #hgroup.logo-enable.logo-left { padding-left: 15px; } #hgroup.logo-enable.logo-right { padding-right: 15px; } #site-title { font-size: 22px; font-weight: bold; line-height: 1.1; margin: 0; } #site-title a { color: #000; text-decoration: none; } #site-description { color: #333; font-size: 14px; font-style: italic; line-height: 1.2; padding: 0; } <?php endif; ?> <?php $image = get_header_image(); if ( $image ) : ?> #header-featured-image { border: none; clear: both; display: block; overflow: hidden; width: 70%; } #header-featured-image img { max-width: 95%; height: auto; } <?php endif; ?> <?php // Has the text been hidden? if ( 'blank' == get_header_textcolor() ) : ?> #hgroup { padding: 0; } #site-title, #site-description { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); } <?php // If the user has set a custom color for the text use that else : ?> #site-title a, #site-description { color: #<?php echo get_header_textcolor(); ?>; } <?php endif; ?> </style> <?php } endif; // adventurous_admin_header_style if ( ! function_exists( 'adventurous_header_image' ) ) : /** * Custom header image markup displayed on the Appearance > Header admin panel. * * @see adventurous_custom_header_setup(). * * @since Adventurous 1.0 */ function adventurous_header_image() { //Get Theme Options Data global $adventurous_options_settings; $options = $adventurous_options_settings; $text_color = get_header_textcolor(); echo '<div id="header-left">'; // Check Seconddary Menu if ( has_nav_menu( 'secondary' ) ) { echo '<div id="secondary-mobile-menu"><a href="#" class="mobile-nav closed"><span class="mobile-menu-bar"></span></a></div>'; } // Check Logo if ( empty( $options['remove_header_logo'] ) ) { $sitedetails = 'logo-enable logo-left'; // Check Logo URL $adventurous_header_logo = ' <div id="site-logo"> <a href="' . esc_url( home_url( '/' ) ) . '" title="' . esc_attr( get_bloginfo( 'name', 'display' ) ) . '">'; if ( !empty( $options[ 'featured_logo_header' ] ) ) { $adventurous_header_logo .= '<img src="' . esc_url( $options['featured_logo_header'] ) . '" alt="' . esc_attr( get_bloginfo( 'name', 'display' ) ) . '" />'; } else { // if empty featured_logo_header on theme options, display default logo $adventurous_header_logo .='<img src="' . esc_url( $defaults['featured_logo_header'] ) . '" alt="' . esc_attr( get_bloginfo( 'name', 'display' ) ) . '" />'; } $adventurous_header_logo .= ' </a> </div><!-- #site-logo -->'; } else { $sitedetails = 'logo-disable'; $adventurous_header_logo = ''; } if ( 'blank' == get_header_textcolor() ) { $sitedetails .= ' assistive-text'; } // Checking Header Details $adventurous_header_details = ' <div id="hgroup" class="' . $sitedetails . '"> <h1 id="site-title"> <a href="' . esc_url( home_url( '/' ) ) . '" title="' . esc_attr( get_bloginfo( 'name', 'display' ) ) . '" rel="home">' . esc_attr( get_bloginfo( 'name', 'display' ) ) . '</a> </h1> <h2 id="site-description"> ' . esc_attr( get_bloginfo( 'description', 'display' ) ) . '</h2> </div><!-- #hgroup -->'; echo $adventurous_header_logo; echo $adventurous_header_details; ?> </div><!-- #header-left"> --> <?php } endif; // adventurous_header_image add_action( 'adventurous_hgroup_wrap', 'adventurous_header_image', 10 ); /** * Shows Header Right Sidebar */ function adventurous_header_right() { /* A sidebar in the Header Right */ get_sidebar( 'header-right' ); } add_action( 'adventurous_hgroup_wrap', 'adventurous_header_right', 20 ); if ( ! function_exists( 'adventurous_admin_header_image' ) ) : /** * Custom header image markup displayed on the Appearance > Header admin panel. * * @since Adventurous 1.0 */ function adventurous_admin_header_image() { adventurous_header_image(); adventurous_featured_image(); } endif; // adventurous_admin_header_image if ( ! function_exists( 'adventurous_featured_image' ) ) : /** * Template for Custom Header Image * * To override this in a child theme * simply create your own adventurous_featured_image(), and that function will be used instead. * * @since Adventurous 1.0 */ function adventurous_featured_image() { // Getting Data from Theme Options Panel global $adventurous_options_settings, $_wp_default_headers; $options = $adventurous_options_settings; $header_image = get_header_image(); $enableheaderimage = $options[ 'enable_featured_header_image' ]; if ( !empty( $header_image ) ) { // Header Image Title/Alt if ( !empty( $options[ 'featured_header_image_alt' ] ) ) : $title = esc_attr($options[ 'featured_header_image_alt' ]); else: $title = ''; endif; // Header Image Link if ( !empty( $options[ 'featured_header_image_url' ] ) ) : //support for qtranslate custom link if ( function_exists( 'qtrans_convertURL' ) ) { $link = qtrans_convertURL($options[ 'featured_header_image_url' ]); } else { $link = esc_url($options[ 'featured_header_image_url' ]); } if ( !empty( $options[ 'featured_header_image_base' ] ) ) : $base = '_blank'; else: $base = '_self'; endif; $linkopen = '<a title="'.$title.'" href="'.$link.'" target="'.$base.'">'; $linkclose = '</a>'; else: $link = ''; $base = ''; $linkopen = ''; $linkclose = ''; endif; echo '<div id="header-featured-image">' . $linkopen . '<img id="main-feat-img" alt="' . $title . '" src="' . esc_url( $header_image ) . '" />' . $linkclose . '</div><!-- #header-featured-image -->'; } } // adventurous_featured_image endif; if ( ! function_exists( 'adventurous_featured_page_post_image' ) ) : /** * Template for Featured Header Image from Post and Page * * To override this in a child theme * simply create your own adventurous_featured_imaage_pagepost(), and that function will be used instead. * * @since Adventurous 1.0 */ function adventurous_featured_page_post_image() { global $post, $wp_query, $adventurous_options_settings; $options = $adventurous_options_settings; $featured_image = $options['page_featured_image']; if ( has_post_thumbnail() ) { echo '<div id="header-featured-image">'; if ( !empty( $options[ 'featured_header_image_url' ] ) ) { // Header Image Link Target if ( !empty( $options[ 'featured_header_image_base' ] ) ) : $base = '_blank'; else: $base = '_self'; endif; // Header Image Title/Alt if ( !empty( $options[ 'featured_header_image_alt' ] ) ) : $title = esc_attr( $options[ 'featured_header_image_alt' ] ); else: $title = ''; endif; $linkopen = '<a title="'.$title.'" href="'.$options[ 'featured_header_image_url' ] .'" target="'.$base.'">'; $linkclose = '</a>'; } else { $linkopen = ''; $linkclose = ''; } echo $linkopen; if ( $featured_image == 'featured' ) { echo get_the_post_thumbnail($post->ID, 'featured', array('id' => 'main-feat-img')); } elseif ( $featured_image == 'slider' ) { echo get_the_post_thumbnail($post->ID, 'slider', array('id' => 'main-feat-img')); } else { echo get_the_post_thumbnail($post->ID, 'full', array('id' => 'main-feat-img')); } echo $linkclose; echo '</div><!-- #header-featured-image -->'; } else { adventurous_featured_image(); } } // adventurous_featured_page_post_image endif; if ( ! function_exists( 'adventurous_featured_overall_image' ) ) : /** * Template for Featured Header Image from theme options * * To override this in a child theme * simply create your own adventurous_featured_pagepost_image(), and that function will be used instead. * * @since Adventurous 1.0 */ function adventurous_featured_overall_image() { global $post, $wp_query, $adventurous_options_settings; $options = $adventurous_options_settings; $enableheaderimage = $options[ 'enable_featured_header_image' ]; // Front page displays in Reading Settings $page_for_posts = get_option('page_for_posts'); // Get Page ID outside Loop $page_id = $wp_query->get_queried_object_id(); // Check Enable/Disable header image in Page/Post Meta box if ( is_page() || is_single() ) { //Individual Page/Post Image Setting $individual_featured_image = get_post_meta( $post->ID, 'adventurous-header-image', true ); if ( $individual_featured_image == 'disable' || ( $individual_featured_image == 'default' && $enableheaderimage == 'disable' ) ) { echo '<!-- Page/Post Disable Header Image -->'; return; } elseif ( $individual_featured_image == 'enable' && $enableheaderimage == 'disable' ) { adventurous_featured_page_post_image(); } } // Check Homepage if ( $enableheaderimage == 'homepage' ) { if ( is_front_page() || ( is_home() && $page_for_posts != $page_id ) ) { adventurous_featured_image(); } } // Check Excluding Homepage if ( $enableheaderimage == 'excludehome' ) { if ( is_front_page() || ( is_home() && $page_for_posts != $page_id ) ) { return false; } else { adventurous_featured_image(); } } // Check Entire Site elseif ( $enableheaderimage == 'allpage' ) { adventurous_featured_image(); } // Check Entire Site (Post/Page) elseif ( $enableheaderimage == 'postpage' ) { if ( is_page() || is_single() ) { adventurous_featured_page_post_image(); } else { adventurous_featured_image(); } } // Check Page/Post elseif ( $enableheaderimage == 'pagespostes' ) { if ( is_page() || is_single() ) { adventurous_featured_page_post_image(); } } else { echo '<!-- Disable Header Image -->'; } } // adventurous_featured_overall_image endif; add_action( 'adventurous_before_main', 'adventurous_featured_overall_image', 5 );
文件修改时间
以二进制形式保存文件(建议使用)