it-swarm.com.de

Hinzufügen der HTML-Erweiterung zu benutzerdefinierten Post-Typ-Taxonomien

Ich möchte die Erweiterung .html in den benutzerdefinierten Taxonomie-URLs für Beitragstypen haben. Meine Taxonomie für benutzerdefinierte Posts heißt "product_cat". Ich brauche etwas wie:

www.mydomain.com/product-category/product-category-name.html

Versuchte dies, Einfügen in functions.php, ohne Erfolg:

add_action('init', 'add_html_ext_to_custom_post_type_taxonomies');
function add_html_ext_to_custom_post_type_taxonomies() {
    add_rewrite_rule('^product_cat/([^/]+)\.html', 'index.php?product_cat=$matches[1]', 'top');
}

Weitere Versuche:

Außerdem habe ich das Custom Post Type Permalink Plugin verwendet und in Zeile 559 herumgespielt. Den Code von Zeile 559 auf Zeile 561 durch den nächsten ersetzt:

$termlink = str_replace( $wp_home, $wp_home, $termlink );
$str = rtrim( preg_replace("/%[a-z_]*%/","",get_option("permalink_structure")) ,'/');//remove with front
return str_replace($str, "", $termlink.'.html' );

Dadurch wird der .html in der URL der Taxonomieansichtsseite zurückgegeben, es wird jedoch ein 404 angezeigt.

Ich habe Ihren ersten Versuch mit einer Umschreiberegel getestet, die funktioniert

add_action('init', 'add_html_ext_to_custom_post_type_taxonomies');
function add_html_ext_to_custom_post_type_taxonomies() {
    add_rewrite_rule('^product_cat/(.+)\.html', 'index.php?product_cat=$matches[1]', 'top');
}

aber du hast _ nicht - hast du das bemerkt, als du dein Beispiel als www.mydomain.com/product-category/product-category-name.html angibst

Wenn es kein Fehler ist, könnte es sein, dass Sie eine andere Regel haben, die im Widerspruch dazu steht? und hast du auch die regeln gespült? Sie können dies mit dem Plugin Rewrite Rules Inspector überprüfen und auch zum Löschen der Regeln verwenden, falls Sie dies noch nicht getan haben.

1
Mark Davidson