Wie kann ich einen Schrägstrich für Kategorien-URLs hinzufügen und nur diese Version einer Kategorie liefern (dh URLs, die nicht mit Schrägstrich enden, leiten zu URLs weiter, die mit Schrägstrich enden)?.
Ich kann die Kategoriebasis mithilfe des Plugins "WP No Category Base" entfernen, muss jedoch einen Schrägstrich in die Kategorie-URL einfügen.
Beispiele:
www.example.com/es <- this is a category (needs a forward-slash '/')
www.example.com/es/hola.html <- this is a post so, it's ok, no changes needed.
Das Plugin Permalink Trailing Slash Fixer löst das Problem hier nicht.
Filtern Sie category_link
so, dass WordPress URLs für Kategorien erstellt durchgestrichene URLs und redirect_canonical
so, dass es diese URLs akzeptiert :
add_filter( 'category_link', 'wpse_71666_trailingslash_cat_url' );
add_filter( 'redirect_canonical', 'wpse_71666_trailingslash_cat_url', 20, 2 );
function wpse_71666_trailingslash_cat_url( $url, $request = '' )
{
if ( 'category_link' === current_filter() )
return rtrim( $url, '/' ) . '/';
if ( "$url/" === $request and is_category() )
return $request;
return $url;
}