Url sollte wie folgt auf die Taxoarchiv 'ort' verweisen. Sprich bsp: http://domain.de/bayern/ort/muenchen/
taxonomien: Regionen => slug 'regionen', Orte => slug 'ort'
bayern ist hier ein termslug aus tax regionen
muenchen ist hier der termslug der taxonomie ort
Code
function add_rewrite_rules() {
global $wp_rewrite;
$new_rules = array(
'(.+)/ort/(.+)/?$' => 'index.php?regionen='.$wp_rewrite->preg_index(1).'&ort=' . $wp_rewrite->preg_index(2)
);
$wp_rewrite->rules = $new_rules + $wp_rewrite->rules;
}
add_action( 'generate_rewrite_rules', 'add_rewrite_rules' );
Mein Problem ist nun das ich mit obigen nur die 404 Seite bekomme.
Auch ein anpassen der taxonomie 'ort' wäre noch denkbar:
Code
function etmit_ortsmarken() {
$labels = array(
'name' => _x( 'Orte', 'Taxonomy General Name', 'etmit_lang' ),
'singular_name' => _x( 'Ort', 'Taxonomy Singular Name', 'etmit_lang' ),
'menu_name' => __( 'Orte', 'etmit_lang' ),
'all_items' => __( 'Alle Orte', 'etmit_lang' ),
'parent_item' => __( 'Übergeordnete', 'etmit_lang' ),
'parent_item_colon' => __( 'Übergeordnete:', 'etmit_lang' ),
'new_item_name' => __( 'Neuer Ort', 'etmit_lang' ),
'add_new_item' => __( 'Hinzufügen', 'etmit_lang' ),
'edit_item' => __( 'Bearbeiten', 'etmit_lang' ),
'update_item' => __( 'Aktualisieren', 'etmit_lang' ),
'separate_items_with_commas' => __( 'Nur ein Ort erlaubt', 'etmit_lang' ),
'search_items' => __( 'Suchen', 'etmit_lang' ),
'add_or_remove_items' => __( 'Hinzufügen oder entfernen', 'etmit_lang' ),
'choose_from_most_used' => __( 'Meist genutzte Orte', 'etmit_lang' ),
'not_found' => __( 'Nichts gefunden', 'etmit_lang' ),
);
$capabilities = array(
'manage_terms' => 'manage_categories',
'edit_terms' => 'manage_categories',
'delete_terms' => 'manage_categories',
'assign_terms' => 'edit_posts',
);
$args = array(
'labels' => $labels,
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_admin_column' => false,
'show_in_nav_menus' => true,
'show_tagcloud' => true,
'capabilities' => $capabilities,
'rewrite' => array('ort'),
'query_var' => true,
);
register_taxonomy( 'ort', array( 'post' ), $args );
Alles anzeigen
aber auch eine anpassung von 'rewrite' => array('ort') brachte keinen Erfolg.
Jemand eine Idee?
Gruß