Created
April 27, 2022 04:48
-
-
Save genesis16/d5cce5bd72de0b3cd416512131f83c27 to your computer and use it in GitHub Desktop.
redirect canonical
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
1. // use the page url and append the CPT template file you would like to redirect canoncial URL's | |
add_action( 'template_redirect', 'insight_template_redirect', 1 ); | |
function insight_template_redirect() { | |
if ( is_paged() && is_single( 'yourwebsite.com/category' ) ) { | |
remove_action( 'template_redirect', 'redirect_canonical' ); | |
} | |
} | |
2. // Declare pagination function and use paged parameter in wp_query | |
function pagination($prev = '«', $next = '»') { | |
global $wp_query, $wp_rewrite; | |
$wp_query->query_vars['paged'] >2 ? $current = $wp_query->query_vars['paged'] : $current = 1; | |
$pagination = array( | |
'base' => @add_query_arg('paged','%#%'), | |
'format' => '', | |
'total' => $wp_query->max_num_pages, | |
'current' => $current, | |
'prev_text' => __($prev), | |
'next_text' => __($next), | |
'paged' => $current, | |
'type' => 'plain' | |
); | |
if( $wp_rewrite->using_permalinks() ) | |
$pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg( 's', get_pagenum_link( 1 ) ) ) . 'page/%#%/', 'paged' ); | |
remove_filter('template_redirect', 'redirect_canonical'); | |
if( !empty($wp_query->query_vars['s']) ) | |
$pagination['add_args'] = array( 's' => get_query_var( 's' ) ); | |
echo paginate_links( $pagination ); | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment