Last active
January 3, 2022 19:51
-
-
Save damiencarbery/8ff9b5e2f1f724b041c518c9287d080c to your computer and use it in GitHub Desktop.
Adjust how Genesis search results are displayed
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/* | |
Plugin Name: Genesis Search changes | |
Plugin URI: https://www.damiencarbery.com | |
Description: Experimenting with changing Genesis search result display. | |
Author: Damien Carbery | |
Version: 10.1 | |
Author URI: https://www.damiencarbery.com/ | |
*/ | |
// Disable showing post content in search result content. Later code will show excerpt. | |
add_action( 'genesis_loop', 'dcwd_search_result_setup' ); | |
function dcwd_search_result_setup() { | |
if ( is_search() ) { | |
remove_action( 'genesis_entry_content', 'genesis_do_post_content' ); | |
} | |
} | |
// Display post/page excerpt in search result content. | |
add_action( 'genesis_entry_content', 'dcwd_search_result_content' ); | |
function dcwd_search_result_content() { | |
if ( ! is_search() ) { return; } | |
the_excerpt(); | |
} | |
add_action( 'genesis_before_while', 'sk_ul_open' ); | |
/** | |
* Adds opening unordered list tag above the entries. | |
*/ | |
function sk_ul_open() { | |
echo '<ul>'; | |
} | |
add_filter( 'genesis_markup_entry_open', 'custom_change_open_tag' ); | |
/** | |
* Changes `article` element for .entry to `li` (opening tag). | |
* | |
* @param string $open HTML tag being processed by the API. | |
* @return string Modified HTML tag. | |
*/ | |
function custom_change_open_tag( $open ) { | |
$open = str_replace( '<article', '<li', $open ); | |
return $open; | |
} | |
add_filter( 'genesis_markup_entry_close', 'custom_change_close_tag' ); | |
/** | |
* Changes `article` element for .entry to `li` (closing tag). | |
* | |
* @return string Modified HTML tag. | |
*/ | |
function custom_change_close_tag( $close ) { | |
$close = str_replace( '</article>', '</li>', $close ); | |
return $close; | |
} | |
add_action( 'genesis_after_endwhile', 'sk_ul_close' ); | |
/** | |
* Adds closing unordered list tag below the entries. | |
*/ | |
function sk_ul_close() { | |
echo '</ul>'; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment