URL-Permalink für benutzerdefinierten Beitragstyp löschen

Ich habe einen benutzerdefinierten Inhaltstyp von photo_group der eine Sammlung von Fotos darstellt.

Ich möchte in der Lage sein, zu mysite.com/photos zu gehen und diese Seite alle meine mysite.com/photos .

Wie kann ich dies tun, ohne eine “Seite” zu erstellen und die Vorlage zu setzen? Oder ist das der Ansatz, den ich nehmen muss?

Vielen Dank

Solutions Collecting From Web of "URL-Permalink für benutzerdefinierten Beitragstyp löschen"

Rom,

Die von Ihnen vorgeschlagene Methode wird definitiv funktionieren und ist wahrscheinlich die einfachste; Ich kann jedoch definitiv Fälle sehen, in denen dies nicht ideal ist. Um dies “programmgesteuert” zu erreichen, müssten Sie Folgendes tun:

1) Setze eine neue Abfrage var

2) Generiere eine neue Rewrite-Regel, um diese Abfragevar zu verstehen

3) Umleiten zu einer Vorlage, wenn diese Abfrage var übereinstimmt.

Hier ist ein Code, der dir weiterhilft.

1: Fügen Sie die Abfrage var

 function query_vars( $public_query_vars ) { $public_query_vars[] = 'romes_var'; return $public_query_vars; } add_filter( 'query_vars', 'romes_query_vars' ); 

2: Verknüpfen Sie eine Rewrite-Regel, um die Abfrage var zu behandeln

 function romes_generate_rewrite_rules( $wp_rewrite ) { $new_rules = array(); $new_rules['(photos)/?$'] = 'index.php?romes_var=$matches[1]'; $wp_rewrite->rules = $new_rules + $wp_rewrite->rules; } add_action( 'generate_rewrite_rules', 'romes_generate_rewrite_rules' ); 

3: Ermitteln Sie die Abfrage var und leiten Sie sie an eine Vorlage weiter

 function romes_template_redirect() { if ( 'photos' == get_query_var( 'romes_var' ) ) { load_template( get_stylesheet_directory_uri() . '/template-photos.php' ); exit(); } } add_action( 'template_redirect', 'romes_template_redirect' ); 

Dieser Code wurde nicht speziell getestet, sollte Ihnen aber den größten Teil des Weges bescheren. Stellen Sie sicher, dass Sie die Regeln für das Umschreiben (einfach auf die Seite mit den Permalinks) leeren, bevor Sie versuchen, Ihr Skript mit diesem Code auszuführen.

Sie brauchen nur eine benutzerdefinierte Taxonomie , um dies zu tun. Sie müssen keine Seite für mysite.com/photos , dies kann eine Taxonomieseite sein. Beispiel: Erstellen Sie eine benutzerdefinierte Taxonomie namens ” photos “. Anschließend können Sie taxonomy.php in eine taxonomy-photos.php als benutzerdefinierte taxonomische Seitenvorlagedatei kopieren.

Überprüfen Sie es auf WordPress Codex: Custom Taxonomies Codex

Einige Plugins können Ihnen helfen, diese benutzerdefinierten Taxonomien auf sehr einfache Weise zu erstellen. Finden Sie einfach den, den Sie mögen: http://wordpress.org/extend/plugins/search.php?q=Custom+Taxonomies

Viel Glück!