Default Category and Tag Archive Titles in Genesis 2.2.7

After version 2.2.7 Genesis utilizes the new core get_term_meta to grab the category headline and intro text. This snippet uses the term name for a default value of the headline term meta.

<?php
/**
* Default Titles for Term Archives
*
* @author Bill Erickson
* @see http://www.billerickson.net/default-category-and-tag-titles
*
* @param string $headline
* @param object $term
* @return string $headline
*/
function ea_default_term_title( $value, $term_id, $meta_key, $single ) {
if( ( is_category() || is_tag() || is_tax() ) && 'headline' == $meta_key && ! is_admin() ) {
// Grab the current value, be sure to remove and re-add the hook to avoid infinite loops
remove_action( 'get_term_metadata', 'ea_default_term_title', 10 );
$value = get_term_meta( $term_id, 'headline', true );
add_action( 'get_term_metadata', 'ea_default_term_title', 10, 4 );
// Use term name if empty
if( empty( $value ) ) {
$term = get_term_by( 'term_taxonomy_id', $term_id );
if( $term ) {
$value = $term->name;
}
}
}
return $value;
}
add_filter( 'get_term_metadata', 'ea_default_term_title', 10, 4 );

Source: https://gist.github.com/joshuadavidnelson/a0ad40ead9e724f87b0e8ee955dd3c60

Tags: , , ,