Umleiten bestimmter Kategorien von Posts in Subdomain

Wir haben eine WordPress-Website, die Posts und Seiten mit verschiedenen Kategorien enthält. Jetzt haben wir eine bestimmte Kategorie Posts in Subdomain verschoben und wollen 301 Redirection, so dass jeder Post von dieser bestimmten Kategorie auf die Subdomain verweist. Alle Beiträge haben die Erweiterung .html in der Hauptdomain, daher haben wir auch die Permalink-Struktur der Unterdomäne in .html geändert. zum Beispiel: wir haben http://www.mydomain.com/category/category-name & wir haben die Subdomain für diese Kategorie http://category-name.mydomain.com erstellt
Wir können diese Kategorie problemlos in die Subdomain redirect, indem wir die .htaccess 301-Umleitung verwenden, aber nur die Startseite der Kategorie wird nicht alle Posts umgeleitet, wir möchten alle Posts dieser Kategorie auf Post-Sub-Domain-Posts redirect. Beispiel Post: www.mydomain.com/sample-posts.html dieser Kategorie muss mit Kategorie-name.mydomain.com/sample-posts.html umgeleitet werden.

Wie werden alle Beiträge dieser Kategorie auch mit dieser Kategorie in Subdomain umgeleitet? Sollten wir alle Beiträge aus der Hauptdomain löschen oder müssen wir sie behalten?

Solutions Collecting From Web of "Umleiten bestimmter Kategorien von Posts in Subdomain"

Sie können den Aktions-Hook template_redirect , um Folgendes zu erreichen:

 add_action('template_redirect', 'redirect_category_posts'); function redirect_category_posts() { global $post; if (is_single($post->ID) && in_category('category-name', $post)) { $new_url = "http://category-name.mydomain.com/{$post->post_name}.html"; wp_redirect($new_url, 301); exit; } } 

Bitte beachten Sie, dass sowohl die Posts in der Hauptdomain als auch in der post_name denselben Slug oder post_name damit dieser Code funktioniert.