it-swarm.com.de

Das Erstellen von Seitenblöcken hat Vorrang vor anderen Taxonomien wie benutzerdefinierten Posts, Posts oder Kategorien

Ich benutze WordPress als CMS.

Ich muss Seite anstelle von Kategorie anzeigen, wenn sie die gleiche Schnecke haben.

  • Ich habe die Kategorie "vertikale Bearbeitungszentren" mit der Bezeichnung "vertikale Bearbeitungszentren".

Diese Kategorie rangiert auf der zweiten Seite in Google und ich möchte mehr optimieren. Also erstelle ich eine Seite ..

Wie Sie sehen, haben die Seite und die Kategorie den gleichen Slug.

Wenn ich www.xx.com/vertical-machining-centers schreibe, öffnet sich die Kategorieseite und ich überprüfe mit dem Monkeyman-Rewrite-Analyzer, dass die Kategorie Slug einen höheren Rang hat.

Ich muss WordPress erstellen, um die Seite anstelle der Kategorie anzuzeigen, wenn sie denselben Slug haben.

Gibt es ein Plugin oder eine Möglichkeit, dies zu tun, ohne Code zu schreiben?.

Vielen Dank....

6
sahin

Sie müssen ausführliche Seitenregeln aktivieren, um sicherzustellen, dass alle Seiten explizit definiert sind (anstatt eine generische Regel zu verwenden). Darüber hinaus müssen Sie diese Seitenregeln jedoch über die Taxonomieregeln verschieben. Dies ist eine relativ neue Änderung , ich glaube es war zwischen 3.0 und 3.1.

Wie das geht, erkläre ich in dieser Antwort auf eine sehr verwandte Frage . Zusammen ist es dieser Code:

add_action( 'init', 'wpse16902_init' );
function wpse16902_init() {
    $GLOBALS['wp_rewrite']->use_verbose_page_rules = true;
}

add_filter( 'page_rewrite_rules', 'wpse16902_collect_page_rewrite_rules' );
function wpse16902_collect_page_rewrite_rules( $page_rewrite_rules )
{
    $GLOBALS['wpse16902_page_rewrite_rules'] = $page_rewrite_rules;
    return array();
}

add_filter( 'rewrite_rules_array', 'wspe16902_prepend_page_rewrite_rules' );
function wspe16902_prepend_page_rewrite_rules( $rewrite_rules )
{
    return $GLOBALS['wpse16902_page_rewrite_rules'] + $rewrite_rules;
}
12
Jan Fabry

ich hätte das gleiche Problem wie du.

Mein Fix war dieser, aber für meinen Fall verwende ich Visual Composer bei der Seitenerstellung. Das ist wichtig, weil meine Methode nur den Inhalt der Seite portiert.

Anstatt die Priorität zu ändern, habe ich die Kategorieschablone für diese Kategorie geändert!

Erstellen Sie also die Seite, die Sie als Kategorie festlegen möchten, und notieren Sie sich die ID (z. B. 86292).

Wenn Ihre Kategorie eine Anzeigen-ID hat (wie in Beispiel 35), können Sie eine benutzerdefinierte Kategorie-Vorlage erstellen, indem Sie die Datei archive.php kopieren und in category-35.php umbenennen.

Innerhalb .. lösche jeden Blogloop und setze dies als Inhalt:

    $p = get_post(86292); 
    echo do_shortcode($p->post_content);

Jetzt wirkt sich jede Änderung, die Sie am Beitrag vorgenommen haben (der als Entwurf verbleiben kann), auf die Kategorie aus: D

Ein oder zwei Noten ...

Alle benutzerdefinierten Informationen (wie SEO, benutzerdefinierte CSS usw.) werden NICHT PORTIERT! Nur der Inhalt des Editors.

Wenn Sie ein benutzerdefiniertes CSS festlegen möchten, müssen Sie das Tag in der Kategorie-x.php verwenden.

1
Matteo Morreale