So kombinieren Sie Beiträge und benutzerdefinierte Beitragstypen in WordPress-Abfragen und RSS-Feeds

WordPress oder Elementor Führen Sie Beiträge und benutzerdefinierte Beitragstypen in der Abfrage zusammen oder kombinieren Sie sie

Eine der erstaunlichsten Funktionen von WordPress ist die Fähigkeit zum Erstellen Benutzerdefinierte Beitrag Typen. Diese Flexibilität ist fantastisch … da benutzerdefinierte Beitragstypen für ein Unternehmen verwendet werden können, um andere Arten von Beiträgen wie Veranstaltungen, Orte, FAQs, Portfolio-Elemente einfach zu organisieren. Sie können benutzerdefinierte Taxonomien, zusätzliche Metadatenfelder und sogar benutzerdefinierte Vorlagen erstellen, um sie anzuzeigen.

Auf unserer Seite unter Highbridge, haben wir einen benutzerdefinierten Beitragstyp eingerichtet Projekte zusätzlich zu unserem Blog, in dem wir Unternehmensneuigkeiten teilen. Indem wir einen benutzerdefinierten Beitragstyp haben, können wir die Projekte auf unseren Leistungsseiten ausrichten … also, wenn Sie unsere sehen WordPress-Dienste, werden die Projekte, an denen wir gearbeitet haben und die sich auf WordPress beziehen, automatisch angezeigt. Ich arbeite hart daran, alle unsere Projekte zu dokumentieren, damit unsere Website-Besucher die Vielfalt unserer Arbeit für Unternehmen sehen können.

Zusammenführen von Beiträgen und benutzerdefinierten Beitragstypen

Unsere Homepage ist bereits recht umfangreich, daher wollte ich keinen Bereich für unsere Blogbeiträge UND einen Bereich für unsere neuesten Projekte erstellen. Ich möchte sowohl Beiträge als auch Projekte mit unserem Template Builder in derselben Ausgabe zusammenführen. Elementor. Elementor hat keine Schnittstelle zum Zusammenführen oder Kombinieren von Beiträgen und benutzerdefinierten Beitragstypen, aber es ist ganz einfach, dies selbst zu tun!

Auf der functions.php-Seite deines untergeordneten Themes findest du hier ein Beispiel dafür, wie du die beiden kombinieren kannst:

function add_query_news_projects( $query ) {
	if ( is_home() && $query->is_main_query() )
		$query->set( 'post_type', array( 'post', 'project' ) );
	return $query;
}
add_filter( 'pre_get_posts', 'add_query_news_projects' );

Mit dem Filter pre_get_posts können Sie die Abfrage aktualisieren und so einstellen, dass sowohl Ihr Beitrag als auch abgerufen werden Projekt benutzerdefinierter Beitragstyp. Wenn Sie Ihren Code schreiben, müssen Sie natürlich die benutzerdefinierten Beitragstypen auf Ihre tatsächliche Namenskonvention aktualisieren.

Zusammenführen von Beiträgen und benutzerdefinierten Beitragstypen in Ihrem Feed

Ich habe die Seite auch automatisch über ihren Feed in den sozialen Medien veröffentlicht… also wollte ich dieselbe Abfrage auch zum Festlegen des RSS-Feeds verwenden. Dazu musste ich nur eine ODER-Anweisung hinzufügen und einschließen is_feed.

function add_query_news_projects( $query ) {
	if ( is_home() && $query->is_main_query() || is_feed() )
		$query->set( 'post_type', array( 'post', 'project' ) );
	return $query;
}
add_filter( 'pre_get_posts', 'add_query_news_projects' );

Zusammenführen von Beiträgen und benutzerdefinierten Beitragstypen in Elementor

Noch eine Anmerkung… Elementor hat eine wirklich großartige Funktion, mit der Sie eine Abfrage auf Ihrer Website benennen und speichern können. In diesem Fall erstelle ich eine Abfrage mit dem Namen „news-projects“ und kann sie dann über die Benutzeroberfläche von Elementor im Abschnitt „Posts Query“ aufrufen.

function my_query_news_projects( $query ) {
	$query->set( 'post_type', array( 'post', 'project' ) );
}
add_action( 'elementor/query/news-projects', 'my_query_news_projects' );

So sieht es in der Benutzeroberfläche von Elementor aus:

Elementor-Posts-Abfrage

Offenlegung: Ich benutze meine Elementor Affiliate-Link in diesem Artikel.