Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

Use a filter for wp_title instead of hard-coding things in header.php #79

Merged
merged 2 commits into from

2 participants

@kovshenin
Owner

Let's try this again... Instead of hard-coding things like blog name, description and page number in the header.php template, use a simple call to wp_title() and make the rest in tweaks.php using the wp_title filter. This allows others to easily override the tag without having to parse the output from buffer. SEO plugins will love this.

For previous discussions see #33

@obenland obenland merged commit ba4af12 into Automattic:master
@marksantiago marksantiago referenced this pull request from a commit
Commit has since been removed from the repository and is no longer available.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
This page is out of date. Refresh to see the latest.
Showing with 31 additions and 24 deletions.
  1. +1 −1  functions.php
  2. +2 −22 header.php
  3. +28 −1 inc/{tweaks.php → extras.php}
View
2  functions.php
@@ -34,7 +34,7 @@ function _s_setup() {
/**
* Custom functions that act independently of the theme templates
*/
- //require( get_template_directory() . '/inc/tweaks.php' );
+ require( get_template_directory() . '/inc/extras.php' );
/**
* Custom Theme Options
View
24 header.php
@@ -12,27 +12,7 @@
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>" />
<meta name="viewport" content="width=device-width" />
-<title><?php
- /*
- * Print the <title> tag based on what is being viewed.
- */
- global $page, $paged;
-
- wp_title( '|', true, 'right' );
-
- // Add the blog name.
- bloginfo( 'name' );
-
- // Add the blog description for the home/front page.
- $site_description = get_bloginfo( 'description', 'display' );
- if ( $site_description && ( is_home() || is_front_page() ) )
- echo " | $site_description";
-
- // Add a page number if necessary:
- if ( $paged >= 2 || $page >= 2 )
- echo ' | ' . sprintf( __( 'Page %s', '_s' ), max( $paged, $page ) );
-
- ?></title>
+<title><?php wp_title( '|', true, 'right' ); ?></title>
<link rel="profile" href="http://gmpg.org/xfn/11" />
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" />
<!--[if lt IE 9]>
@@ -59,4 +39,4 @@
</nav><!-- .site-navigation .main-navigation -->
</header><!-- #masthead .site-header -->
- <div id="main" class="site-main">
+ <div id="main" class="site-main">
View
29 inc/tweaks.php → inc/extras.php
@@ -49,4 +49,31 @@ function _s_enhanced_image_navigation( $url, $id ) {
return $url;
}
-add_filter( 'attachment_link', '_s_enhanced_image_navigation', 10, 2 );
+add_filter( 'attachment_link', '_s_enhanced_image_navigation', 10, 2 );
+
+/**
+ * Filters wp_title to print a neat <title> tag based on what is being viewed.
+ *
+ * @since _s 1.1
+ */
+function _s_wp_title( $title, $sep ) {
+ global $page, $paged;
+
+ if ( is_feed() )
+ return $title;
+
+ // Add the blog name
+ $title .= get_bloginfo( 'name' );
+
+ // Add the blog description for the home/front page.
+ $site_description = get_bloginfo( 'description', 'display' );
+ if ( $site_description && ( is_home() || is_front_page() ) )
+ $title .= " $sep $site_description";
+
+ // Add a page number if necessary:
+ if ( $paged >= 2 || $page >= 2 )
+ $title .= " $sep " . sprintf( __( 'Page %s', '_s' ), max( $paged, $page ) );
+
+ return $title;
+}
+add_filter( 'wp_title', '_s_wp_title', 10, 2 );
Something went wrong with that request. Please try again.