Ako skombinovať príspevky a vlastné typy príspevkov v dopytoch WordPress a kanáli RSS

WordPress alebo Elementor Zlúčiť alebo skombinovať príspevky a vlastné typy príspevkov v dotaze

Jednou z najúžasnejších funkcií WordPressu je schopnosť vytvárať Custom Post Druhy. Táto flexibilita je fantastická... pretože vlastné typy príspevkov môžu byť použité pre podnikanie na jednoduché organizovanie iných typov príspevkov, ako sú udalosti, miesta, často kladené otázky, položky portfólia. Môžete si vytvoriť vlastné taxonómie, ďalšie polia metadát a dokonca aj vlastné šablóny na ich zobrazenie.

Na našej stránke na Highbridge, máme nastavený vlastný typ príspevku projekty okrem nášho blogu, kde zdieľame novinky o spoločnosti. Tým, že máme vlastný typ príspevku, dokážeme zosúladiť projekty na našich stránkach s možnosťami... takže ak si pozriete naše služby WordPress, automaticky sa zobrazia projekty, na ktorých sme pracovali a ktoré súvisia s WordPress. Usilovne sa snažím zdokumentovať všetky naše projekty, aby návštevníci našich stránok mohli vidieť množstvo práce, ktorú robíme pre spoločnosti.

Zlučovanie príspevkov a vlastných typov príspevkov

Naša domovská stránka je už dosť rozsiahla, takže sa mi nechcelo vytvárať sekciu pre naše blogové príspevky A sekciu pre naše najnovšie projekty. Chcem zlúčiť príspevky aj projekty do rovnakého výstupu pomocou nášho nástroja na tvorbu šablón, Elementor. Elementor nemá rozhranie na zlúčenie alebo kombinovanie príspevkov a vlastných typov príspevkov, ale je celkom jednoduché to urobiť sami!

Na stránke functions.php vašej podradenej témy je príklad, ako skombinovať tieto dve veci:

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' );

Filter pre_get_posts vám umožňuje aktualizovať dopyt a nastaviť ho tak, aby dostal váš príspevok aj projekt vlastný typ príspevku. Samozrejme, keď napíšete svoj kód, budete musieť aktualizovať vlastný typ príspevku (typov) podľa skutočnej konvencie pomenovania.

Zlúčenie príspevkov a vlastných typov príspevkov vo vašom informačnom kanáli

Mám tiež stránku, ktorá automaticky publikuje na sociálnych médiách prostredníctvom svojho informačného kanála ... takže som tiež chcel použiť rovnaký dotaz na nastavenie informačného kanála RSS. Aby som to urobil, musel som pridať vyhlásenie ALEBO a zahrnúť 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' );

Zlúčenie príspevkov a vlastných typov príspevkov v Elementore

Ešte jedna poznámka… Elementor má naozaj skvelú funkciu, kde môžete pomenovať a uložiť dopyt v rámci svojej stránky. V tomto prípade vytváram dotaz s názvom news-projects a potom ho môžem zavolať z používateľského rozhrania Elementor v sekcii Dotaz na príspevky.

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

V používateľskom rozhraní Elementor to vyzerá takto:

elementor uverejňuje dotaz

Zverejnenie: Používam svoje Elementor pridružený odkaz v tomto článku.