Spezifisches Routing für CPT

Ich entwickle Website für Kunstgalerie. Ich habe Artist CPT (interner Name artsin_artist), der in meiner functions.php wie folgt definiert ist:

register_post_type('artsin_artist', array( 'labels' => $labels, 'public' => true, 'hierarchical' => false, 'supports' => array('title'), 'has_archive' => true, 'rewrite' => array('with_front' => true, 'slug' => 'artists'), 'publicly_queryable' => true, )); 

So habe ich gute Arbeit Archiv http://artsindika.ru/artists/ und Künstlerseite http://artsindika.ru/artists/arthur-ter-martirosov/ .

Jeder Künstler hat eine bestimmte Anzahl von Werken, Werke sind keine speziellen Post-Typ, aber es ist ein einfaches assoziatives Array (ich habe AdvancedCustomFields Repeater-Plugin für diese function verwendet).

Jetzt brauche ich eine Seite mit folgenden URL-Struktur-Künstlern /% artists_cpt_slug% /% work_index%.

Zum Beispiel für die zweite Arbeit von Arthur Ter-Martirosov muss ich folgende URL-Struktur haben: / artists / arthur-ter-martirosov / 2.

Ich habe versucht, viele Empfehlungen zum Arbeiten mit WordPress rewrites zu verwenden, aber ich habe immer eine Archivseite als Ergebnis des Routings.

Ich meine, dass ich work_index Query-Variable in meiner Vorlage brauche, um entsprechende Arbeit zu zeigen. Jetzt verwende ich folgenden Code für meine Umschreibungen:

 function add_artists_query_vars($aVars) { $aVars[] = "work_index"; return $aVars; } add_filter('query_vars', 'add_artists_query_vars'); function add_artists_rewrite_rule($aRules) { $aNewRules = array('artists/([^/]*)/([0-9]+)?$' => 'index.php?post_type=artsin_artist&post_name=$matches[1]&work_index=$matches[2]'); $aRules = $aNewRules + $aRules; return $aRules; } add_filter('rewrite_rules_array', 'add_artists_rewrite_rule'); 

Bitte sag mir, was ich vermisse und in welche Richtung ich weitergehen soll?

Solutions Collecting From Web of "Spezifisches Routing für CPT"