post_parent ) && $image->post_parent != $id ) $url .= '#main'; return $url; } } add_filter( 'attachment_link', 'decode_enhanced_image_navigation', 10, 2 ); /** * Highlight search terms in search results. */ function decode_highlight_search_results($text){ if(is_search()){ $sr = get_search_query(); $keys = implode('|', explode(' ', get_search_query())); $text = preg_replace('/(' . $keys .')/iu', '\0', $text); } return $text; } add_filter('the_excerpt', 'decode_highlight_search_results'); add_filter('the_title', 'decode_highlight_search_results'); /** * Link to post in excerpt [...] links. */ if ( ! function_exists( 'link_ellipses' ) ) { function link_ellipses( $more ) { if(!is_search()){ return ' […]'; } } } add_filter('excerpt_more', 'link_ellipses'); /* A custom callback function that displays a meaningful title * depending on the page being rendered */ if ( ! function_exists( 'decode_wp_title' ) ) { function decode_wp_title($title, $sep, $sep_location) { // add white space around $sep $sep = ' ' . $sep . ' '; $site_description = get_bloginfo('description'); if (is_feed()) return $title; elseif ($site_description && is_front_page()) $custom = $sep . $site_description; elseif(is_category()) $custom = $sep . __('Category', 'decode'); elseif(is_tag()) $custom = $sep . __('Tag', 'decode'); elseif(is_author()) $custom = $sep . __('Author', 'decode'); elseif(is_year() || is_month() || is_day()) $custom = $sep . __('Archives', 'decode'); else $custom = ''; // get the page number (main page or an archive) if(get_query_var('paged')) $page_number = $sep . __('Page ', 'decode') . get_query_var('paged'); // get the page number (post with multipages) elseif(get_query_var('page')) $page_number = $sep . __('Page ', 'decode') . get_query_var('page'); else $page_number = ''; // Comment the 4 lines of code below and see how odd the title format becomes if($sep_location == 'right' && !(is_front_page())) { $custom = $custom . $sep; $title = substr($title, 0, -2); } // return full title return get_bloginfo('name') . $custom . $title . $page_number; } // end of decode_wp_title } /* add function 'decode_wp_title()' to the * wp_title filter, with priority 10 and 3 args */ add_filter('wp_title', 'decode_wp_title', 10, 3); /** * Sets the authordata global when viewing an author archive. * * This provides backwards compatibility for WP versions below 3.7 * that don't have this change: * http://core.trac.wordpress.org/changeset/25574. * * It removes the need to call the_post() and rewind_posts() in an author * template to print information about the author. * * @global WP_Query $wp_query WordPress Query object. * @return void */ if ( ! function_exists( 'decode_setup_author' ) ) { function decode_setup_author() { global $wp_query; if ( $wp_query->is_author() && isset( $wp_query->post ) ) { $GLOBALS['authordata'] = get_userdata( $wp_query->post->post_author ); } } } add_action( 'wp', 'decode_setup_author' );