예제 #1
0
    function blank_theme_site_branding()
    {
        $site_title = $site_logo = '';
        if (function_exists('the_custom_logo')) {
            $site_logo = get_custom_logo();
        }
        $site_title = get_bloginfo('name');
        $hide_tagline = get_theme_mod('blank_theme_hide_tagline');
        $title_class = $site_logo ? ' screen-reader-text' : false;
        $desc_class = $hide_tagline ? ' screen-reader-text' : false;
        $site_logo_args = array('a' => array('href' => array(), 'class' => array(), 'rel' => array(), 'itemprop' => array()), 'img' => array('width' => array(), 'height' => array(), 'src' => array(), 'class' => array(), 'alt' => array(), 'itemprop' => array()));
        echo wp_kses($site_logo, $site_logo_args);
        if (is_front_page() && is_home()) {
            ?>
			<h1 class="site-title<?php 
            echo esc_attr($title_class);
            ?>
"><a href="<?php 
            echo esc_url(home_url('/'));
            ?>
" rel="home"><?php 
            echo esc_html($site_title);
            ?>
</a></h1>
		<?php 
        } else {
            ?>
			<h2 class="site-title<?php 
            echo esc_attr($title_class);
            ?>
"><a href="<?php 
            echo esc_url(home_url('/'));
            ?>
" rel="home"><?php 
            echo esc_html($site_title);
            ?>
</a></h2>
		<?php 
        }
        ?>

		<p class="site-description<?php 
        echo esc_attr($desc_class);
        ?>
"><?php 
        bloginfo('description');
        ?>
</p>

		<?php 
    }
 /**
  * Callback for rendering the custom logo, used in the custom_logo partial.
  *
  * This method exists because the partial object and context data are passed
  * into a partial's render_callback so we cannot use get_custom_logo() as
  * the render_callback directly since it expects a blog ID as the first
  * argument. When WP no longer supports PHP 5.3, this method can be removed
  * in favor of an anonymous function.
  *
  * @see WP_Customize_Manager::register_controls()
  *
  * @since 4.5.0
  * @access private
  *
  * @return string Custom logo.
  */
 public function _render_custom_logo_partial()
 {
     return get_custom_logo();
 }
예제 #3
0
/**
 * Ameno Custom Logo
 */
function ameno_get_custom_logo()
{
    if (function_exists('get_custom_logo')) {
        return get_custom_logo();
    }
}
예제 #4
0
/**
 * Displays a custom logo, linked to home.
 *
 * @since 4.5.0
 *
 * @param int $blog_id Optional. ID of the blog in question. Default is the ID of the current blog.
 */
function the_custom_logo($blog_id = 0)
{
    echo get_custom_logo($blog_id);
}
예제 #5
0
파일: header.php 프로젝트: cohhe/beryl
?>
">
	<?php 
wp_head();
?>
</head>
<?php 
global $beryl_layout_type, $withcomments, $wp_version;
$withcomments = 1;
$form_class = '';
$class = '';
$search_string = '';
if (version_compare($wp_version, '4.5', '>=')) {
    $beryl_logo = '';
    if (get_custom_logo()) {
        $beryl_logo = get_custom_logo();
    }
    if (is_customize_preview()) {
        if (strstr($beryl_logo, '<img class') !== false) {
            $beryl_logo = '';
        }
    }
} else {
    $beryl_logo_f = get_custom_header();
    $beryl_logo_f = $beryl_logo->url;
    $beryl_logo = '';
    if ($beryl_logo_f) {
        $beryl_logo = '<img src="' . esc_url($beryl_logo_f) . '" alt="' . __('Site logo', 'beryl') . '">';
    }
}
if (get_search_query() == '') {
예제 #6
0
/**
 * Sangeet Custom Logo ( Used function_exists() wrapper to maintain backwards compatibility with older versions of WordPress. )
 */
function sangeet_get_custom_logo()
{
    if (function_exists('get_custom_logo')) {
        return get_custom_logo();
    }
}
예제 #7
0
 function origami_header_image()
 {
     if (function_exists('has_custom_logo') && has_custom_logo()) {
         $logo = get_custom_logo();
         if (!empty($logo)) {
             echo $logo;
             return true;
         }
     }
     if (function_exists('has_header_image') && has_header_image()) {
         $header = get_custom_header();
         echo '<img src="' . esc_url($header->url) . '"';
         if (!empty($header->height)) {
             echo ' height="' . $header->height . '"';
         }
         if (!empty($header->width)) {
             echo ' width="' . $header->width . '"';
         }
         echo ' alt="' . esc_attr(get_bloginfo('name')) . '" />';
         return true;
     }
     return false;
 }
예제 #8
0
파일: header.php 프로젝트: cohhe/honos
        define('HONOS_LAYOUT', 'sidebar-right');
        break;
    case 'full':
        define('HONOS_LAYOUT', 'sidebar-no');
        break;
    case 'left':
        define('HONOS_LAYOUT', 'sidebar-left');
        break;
}
if (HONOS_LAYOUT != 'sidebar-no' && is_active_sidebar('sidebar-5') || HONOS_LAYOUT != 'sidebar-no' && is_active_sidebar('sidebar-6')) {
    $honos_site_width = 'col-sm-9 col-md-9 col-lg-9';
}
if (version_compare($wp_version, '4.5', '>=')) {
    $logo = '';
    if (has_custom_logo()) {
        $logo = get_custom_logo();
    }
    if (strpos($logo, 'src=') === false) {
        $logo = '';
    }
} else {
    $logo_f = get_custom_header();
    $logo_f = $logo->url;
    $logo = '';
    if ($logo_f) {
        $logo = '<img src="' . esc_url($logo_f) . '" alt="' . esc_attr__('Site logo', 'honos') . '">';
    }
}
if (get_search_query() == '') {
    $search_string = esc_html__('Search', 'honos');
} else {
예제 #9
0
}
?>
			&nbsp;
		</div>
	</div>

</div>
<p><br /><br />&nbsp;</p>
</div> <!-- end page wrapper --> 
<div id="footer">
    <div class="logo">
          <a href="<?php 
echo $this->custom_logo_url;
?>
"><img src="<?php 
echo get_custom_logo();
?>
"  alt="<?php 
echo $this->custom_logo_alt_text;
?>
" style="border:none;" /></a>
    </div>
	<?php 
require AT_INCLUDE_PATH . 'html/languages.inc.php';
?>
	<?php 
require AT_INCLUDE_PATH . 'html/copyright.inc.php';
?>
    <script type="text/javascript">
    //<!--
        <?php 
예제 #10
0
 /**
  * Displays the site identity section.
  *
  * This may include the logo, site title and/or site tagline.
  *
  * @param 	boolean $echo
  * @return 	string
  * @since 	1.0.0
  */
 function reach_site_identity($echo = true)
 {
     $output = '';
     $home_url = home_url();
     $site_title = get_bloginfo('name');
     $hide_title = (bool) get_theme_mod('hide_site_title');
     $hide_tagline = (bool) get_theme_mod('hide_site_tagline');
     if (function_exists('has_custom_logo') && has_custom_logo()) {
         $output .= get_custom_logo();
     }
     $tag = is_front_page() ? 'h1' : 'div';
     $output .= apply_filters('reach_site_title', sprintf('<%s class="site-title %s"><a href="%s" title="%s">%s</a></%s>', $tag, $hide_title ? 'hidden' : '', $home_url, __('Go to homepage', 'reach'), $site_title, $tag));
     $output .= apply_filters('reach_site_tagline', sprintf('<div class="site-tagline %s">%s</div>', $hide_tagline ? 'hidden' : '', get_bloginfo('description')));
     if (!$echo) {
         return $output;
     }
     echo $output;
 }
 /**
  * Test WP_Customize_Manager::import_theme_starter_content().
  *
  * @covers WP_Customize_Manager::import_theme_starter_content()
  * @covers WP_Customize_Manager::_save_starter_content_changeset()
  */
 function test_import_theme_starter_content()
 {
     wp_set_current_user(self::$admin_user_id);
     register_nav_menu('top', 'Top');
     add_theme_support('custom-logo');
     add_theme_support('custom-header');
     add_theme_support('custom-background');
     $canola_file = DIR_TESTDATA . '/images/canola.jpg';
     $existing_canola_attachment_id = self::factory()->attachment->create_object($canola_file, 0, array('post_mime_type' => 'image/jpeg', 'post_type' => 'attachment', 'post_name' => 'canola'));
     $existing_published_home_page_id = $this->factory()->post->create(array('post_name' => 'home', 'post_type' => 'page', 'post_status' => 'publish'));
     $existing_auto_draft_about_page_id = $this->factory()->post->create(array('post_name' => 'about', 'post_type' => 'page', 'post_status' => 'auto-draft'));
     global $wp_customize;
     $wp_customize = new WP_Customize_Manager();
     $starter_content_config = array('widgets' => array('sidebar-1' => array('text_business_info', 'meta_custom' => array('meta', array('title' => 'Pre-hydrated meta widget.')))), 'nav_menus' => array('top' => array('name' => 'Menu Name', 'items' => array('link_home', 'page_about', 'page_blog', 'link_email', 'link_facebook', 'link_custom' => array('title' => 'Custom', 'url' => 'https://custom.example.com/')))), 'posts' => array('home', 'about' => array('template' => 'sample-page-template.php'), 'blog', 'custom' => array('post_type' => 'post', 'post_title' => 'Custom', 'thumbnail' => '{{waffles}}')), 'attachments' => array('waffles' => array('post_title' => 'Waffles', 'post_content' => 'Waffles Attachment Description', 'post_excerpt' => 'Waffles Attachment Caption', 'file' => DIR_TESTDATA . '/images/waffles.jpg'), 'canola' => array('post_title' => 'Canola', 'post_content' => 'Canola Attachment Description', 'post_excerpt' => 'Canola Attachment Caption', 'file' => DIR_TESTDATA . '/images/canola.jpg')), 'options' => array('blogname' => 'Starter Content Title', 'blogdescription' => 'Starter Content Tagline', 'show_on_front' => 'page', 'page_on_front' => '{{home}}', 'page_for_posts' => '{{blog}}'), 'theme_mods' => array('custom_logo' => '{{canola}}', 'header_image' => '{{waffles}}', 'background_image' => '{{waffles}}'));
     update_option('posts_per_page', 1);
     // To check #39022.
     add_theme_support('starter-content', $starter_content_config);
     $this->assertEmpty($wp_customize->unsanitized_post_values());
     $wp_customize->import_theme_starter_content();
     $changeset_values = $wp_customize->unsanitized_post_values();
     $expected_setting_ids = array('blogname', 'blogdescription', 'custom_logo', 'header_image_data', 'background_image', 'widget_text[2]', 'widget_meta[3]', 'sidebars_widgets[sidebar-1]', 'nav_menus_created_posts', 'nav_menu[-1]', 'nav_menu_item[-1]', 'nav_menu_item[-2]', 'nav_menu_item[-3]', 'nav_menu_item[-4]', 'nav_menu_item[-5]', 'nav_menu_item[-6]', 'nav_menu_locations[top]', 'show_on_front', 'page_on_front', 'page_for_posts');
     $this->assertEqualSets($expected_setting_ids, array_keys($changeset_values));
     foreach (array('widget_text[2]', 'widget_meta[3]') as $setting_id) {
         $this->assertInternalType('array', $changeset_values[$setting_id]);
         $instance_data = $wp_customize->widgets->sanitize_widget_instance($changeset_values[$setting_id]);
         $this->assertInternalType('array', $instance_data);
         $this->assertArrayHasKey('title', $instance_data);
     }
     $this->assertEquals(array('text-2', 'meta-3'), $changeset_values['sidebars_widgets[sidebar-1]']);
     $posts_by_name = array();
     $this->assertCount(6, $changeset_values['nav_menus_created_posts']);
     $this->assertContains($existing_published_home_page_id, $changeset_values['nav_menus_created_posts'], 'Expected reuse of non-auto-draft posts.');
     $this->assertContains($existing_canola_attachment_id, $changeset_values['nav_menus_created_posts'], 'Expected reuse of non-auto-draft attachment.');
     $this->assertNotContains($existing_auto_draft_about_page_id, $changeset_values['nav_menus_created_posts'], 'Expected non-reuse of auto-draft posts.');
     foreach ($changeset_values['nav_menus_created_posts'] as $post_id) {
         $post = get_post($post_id);
         if ($post->ID === $existing_published_home_page_id) {
             $this->assertEquals('publish', $post->post_status);
         } elseif ($post->ID === $existing_canola_attachment_id) {
             $this->assertEquals('inherit', $post->post_status);
         } else {
             $this->assertEquals('auto-draft', $post->post_status);
             $this->assertEmpty($post->post_name);
         }
         $post_name = $post->post_name;
         if (empty($post_name)) {
             $post_name = get_post_meta($post->ID, '_customize_draft_post_name', true);
         }
         $posts_by_name[$post_name] = $post->ID;
     }
     $this->assertEquals(array('waffles', 'canola', 'home', 'about', 'blog', 'custom'), array_keys($posts_by_name));
     $this->assertEquals('Custom', get_post($posts_by_name['custom'])->post_title);
     $this->assertEquals('sample-page-template.php', get_page_template_slug($posts_by_name['about']));
     $this->assertEquals('', get_page_template_slug($posts_by_name['blog']));
     $this->assertEquals($posts_by_name['waffles'], get_post_thumbnail_id($posts_by_name['custom']));
     $this->assertEquals('', get_post_thumbnail_id($posts_by_name['blog']));
     $attachment_metadata = wp_get_attachment_metadata($posts_by_name['waffles']);
     $this->assertEquals('Waffles', get_post($posts_by_name['waffles'])->post_title);
     $this->assertEquals('waffles', get_post_meta($posts_by_name['waffles'], '_customize_draft_post_name', true));
     $this->assertArrayHasKey('file', $attachment_metadata);
     $this->assertContains('waffles', $attachment_metadata['file']);
     $this->assertEquals('page', $changeset_values['show_on_front']);
     $this->assertEquals($posts_by_name['home'], $changeset_values['page_on_front']);
     $this->assertEquals($posts_by_name['blog'], $changeset_values['page_for_posts']);
     $this->assertEquals(-1, $changeset_values['nav_menu_locations[top]']);
     $this->assertEquals(0, $changeset_values['nav_menu_item[-1]']['object_id']);
     $this->assertEquals('custom', $changeset_values['nav_menu_item[-1]']['type']);
     $this->assertEquals(home_url(), $changeset_values['nav_menu_item[-1]']['url']);
     $this->assertEmpty($wp_customize->changeset_data());
     $this->assertNull($wp_customize->changeset_post_id());
     $this->assertEquals(1000, has_action('customize_register', array($wp_customize, '_save_starter_content_changeset')));
     do_action('customize_register', $wp_customize);
     // This will trigger the changeset save.
     $this->assertInternalType('int', $wp_customize->changeset_post_id());
     $this->assertNotEmpty($wp_customize->changeset_data());
     foreach ($wp_customize->changeset_data() as $setting_id => $setting_params) {
         $this->assertArrayHasKey('starter_content', $setting_params);
         $this->assertTrue($setting_params['starter_content']);
     }
     // Ensure that re-importing doesn't cause auto-drafts to balloon.
     $wp_customize->import_theme_starter_content();
     $changeset_data = $wp_customize->changeset_data();
     $this->assertEqualSets(array_values($posts_by_name), $changeset_data['nav_menus_created_posts']['value']);
     // Auto-drafts should not get re-created and amended with each import.
     // Test that saving non-starter content on top of the changeset clears the starter_content flag.
     $wp_customize->save_changeset_post(array('data' => array('blogname' => array('value' => 'Starter Content Modified'))));
     $changeset_data = $wp_customize->changeset_data();
     $this->assertArrayNotHasKey('starter_content', $changeset_data['blogname']);
     $this->assertArrayHasKey('starter_content', $changeset_data['blogdescription']);
     // Test that adding blogname starter content is ignored now that it is modified, but updating a non-modified starter content blog description passes.
     $previous_blogname = $changeset_data['blogname']['value'];
     $previous_blogdescription = $changeset_data['blogdescription']['value'];
     $wp_customize->import_theme_starter_content(array('options' => array('blogname' => 'Newer Starter Content Title', 'blogdescription' => 'Newer Starter Content Description')));
     $changeset_data = $wp_customize->changeset_data();
     $this->assertEquals($previous_blogname, $changeset_data['blogname']['value']);
     $this->assertArrayNotHasKey('starter_content', $changeset_data['blogname']);
     $this->assertNotEquals($previous_blogdescription, $changeset_data['blogdescription']['value']);
     $this->assertArrayHasKey('starter_content', $changeset_data['blogdescription']);
     // Publish.
     $this->assertEmpty(get_custom_logo());
     $this->assertEmpty(get_header_image());
     $this->assertEmpty(get_background_image());
     $this->assertEmpty(get_theme_mod('custom_logo'));
     $this->assertEmpty(get_theme_mod('header_image'));
     $this->assertEmpty(get_theme_mod('background_image'));
     $this->assertEquals('auto-draft', get_post($posts_by_name['about'])->post_status);
     $this->assertEquals('auto-draft', get_post($posts_by_name['waffles'])->post_status);
     $this->assertNotEquals($changeset_data['blogname']['value'], get_option('blogname'));
     $r = $wp_customize->save_changeset_post(array('status' => 'publish'));
     $this->assertInternalType('array', $r);
     $this->assertEquals('publish', get_post($posts_by_name['about'])->post_status);
     $this->assertEquals('inherit', get_post($posts_by_name['waffles'])->post_status);
     $this->assertEquals($changeset_data['blogname']['value'], get_option('blogname'));
     $this->assertNotEmpty(get_theme_mod('custom_logo'));
     $this->assertNotEmpty(get_theme_mod('header_image'));
     $this->assertNotEmpty(get_theme_mod('background_image'));
     $this->assertNotEmpty(get_custom_logo());
     $this->assertNotEmpty(get_header_image());
     $this->assertNotEmpty(get_background_image());
     $this->assertContains('canola', get_custom_logo());
     $this->assertContains('waffles', get_header_image());
     $this->assertContains('waffles', get_background_image());
     $this->assertEquals('waffles', get_post($posts_by_name['waffles'])->post_name);
     $this->assertEmpty(get_post_meta($posts_by_name['waffles'], '_customize_draft_post_name', true));
 }
예제 #12
0
 /**
  * @group custom_logo
  * @group multisite
  */
 function test_get_custom_logo_returns_logo_when_called_for_other_site_with_custom_logo_set()
 {
     if (!is_multisite()) {
         $this->markTestSkipped('This test requires multisite.');
     }
     $blog_id = $this->factory->blog->create();
     switch_to_blog($blog_id);
     $this->_set_custom_logo();
     $home_url = get_home_url($blog_id, '/');
     $image = wp_get_attachment_image($this->custom_logo_id, 'full', false, array('class' => 'custom-logo', 'itemprop' => 'logo'));
     restore_current_blog();
     $expected_custom_logo = '<a href="' . $home_url . '" class="custom-logo-link" rel="home" itemprop="url">' . $image . '</a>';
     $this->assertEquals($expected_custom_logo, get_custom_logo($blog_id));
 }
예제 #13
0
?>
		<div id="header" class='header<?php 
echo $class;
?>
'>
			<header role="banner">
				<?php 
echo apply_filters('milky_way_top_of_header', '');
?>
				<?php 
$logo_img = '';
$has_logo = '';
$logo = has_custom_logo();
if ($logo) {
    // if alt is bank, use theme alt.
    $logo_img = "<div class='logo'>" . get_custom_logo() . "</div>";
    $has_logo = 'has-logo';
    $class .= ' ' . $has_logo;
}
?>
				<div class="text-header<?php 
echo $class;
?>
">
					<div class='contents'>
						<div class="outer">
							<div class='inner-contents'>
							<?php 
echo $logo_img;
?>
							<?php 
 /**
  * @ticket 38253
  */
 function test_get_custom_logo_preserves_switched_state()
 {
     if (!is_multisite()) {
         $this->markTestSkipped('This test requires multisite.');
     }
     $blog_id = $this->factory->blog->create();
     switch_to_blog($blog_id);
     $expected = $GLOBALS['_wp_switched_stack'];
     get_custom_logo($blog_id);
     $result = $GLOBALS['_wp_switched_stack'];
     restore_current_blog();
     $this->assertSame($expected, $result);
 }
    /**
     * Display the site title or logo
     *
     * @since  2.1.0
     * @return void
     */
    function storefront_site_title_or_logo()
    {
        if (function_exists('the_custom_logo') && has_custom_logo()) {
            $logo = get_custom_logo();
            echo $logo = is_home() ? '<h1 class="logo">' . $logo . '</h1>' : $logo;
        } elseif (function_exists('jetpack_has_site_logo') && jetpack_has_site_logo()) {
            jetpack_the_site_logo();
        } else {
            $tag = is_home() ? 'h1' : 'div';
            echo '<' . esc_attr($tag) . ' class="beta site-title"><a href="' . esc_url(home_url('/')) . '" rel="home">' . esc_attr(get_bloginfo('name')) . '</a></' . esc_attr($tag) . '>';
            if ('' != get_bloginfo('description')) {
                ?>
				<p class="site-description"><?php 
                echo bloginfo('description');
                ?>
</p>
				<?php 
            }
        }
    }