_s: simplifying functions.php by making some of the stuff happening there modular with functions being called in templates showing up in template-tags.php, little extras that won't produce a visible error if they're missing in tweaks, and wpcom stuff in wpcom

This commit is contained in:
Ian Stewart 2012-01-11 03:43:23 +00:00
parent db89577313
commit 01ce62d24f
5 changed files with 251 additions and 243 deletions

52
inc/tweaks.php Normal file
View file

@ -0,0 +1,52 @@
<?php
/**
* Custom functions that act independently of the theme templates
*
* Eventually, some of the functionality here could be replaced by core features
*
* @package _s
* @since _s 1.0
*/
/**
* Get our wp_nav_menu() fallback, wp_page_menu(), to show a home link.
*
* @since _s 1.0
*/
function _s_page_menu_args( $args ) {
$args['show_home'] = true;
return $args;
}
add_filter( 'wp_page_menu_args', '_s_page_menu_args' );
/**
* Adds custom classes to the array of body classes.
*
* @since _s 1.0
*/
function _s_body_classes( $classes ) {
// Adds a class of single-author to blogs with only 1 published author
if ( is_multi_author() ) {
$classes[] = 'group-blog';
}
return $classes;
}
add_filter( 'body_class', '_s_body_classes' );
/**
* Filter in a link to a content ID attribute for the next/previous image links on image attachment pages
*
* @since _s 1.0
*/
function _s_enhanced_image_navigation( $url, $id ) {
if ( ! is_attachment() && ! wp_attachment_is_image( $id ) )
return $url;
$image = get_post( $id );
if ( ! empty( $image->post_parent ) && $image->post_parent != $id )
$url .= '#main';
return $url;
}
add_filter( 'attachment_link', '_s_enhanced_image_navigation', 10, 2 );