Como combinar postagens e tipos de postagem personalizados em consultas do WordPress e feed RSS

WordPress ou Elementor mesclar ou combinar postagens e tipos de postagem personalizados na consulta

Um dos recursos mais surpreendentes do WordPress é a capacidade de construir Tipos personalizados Correios. Essa flexibilidade é fantástica... pois os tipos de postagem personalizados podem ser utilizados para uma empresa organizar facilmente outros tipos de postagens, como eventos, locais, perguntas frequentes, itens de portfólio. Você pode criar taxonomias personalizadas, campos de metadados adicionais e até modelos personalizados para exibi-los.

Em nosso site em Highbridge, temos um tipo de postagem personalizado configurado para projetos além do nosso blog onde estamos compartilhando novidades da empresa. Ao ter um tipo de postagem personalizado, podemos alinhar os projetos em nossas páginas de recursos... Serviços WordPress, os projetos em que trabalhamos relacionados ao WordPress serão exibidos automaticamente. Estou trabalhando duro tentando documentar todos os nossos projetos para que os visitantes do nosso site possam ver a variedade de trabalhos que fazemos para as empresas.

Mesclando postagens e tipos de postagem personalizados

Nossa página inicial já é bastante extensa, então eu não queria ter que construir uma seção para nossos posts E uma seção para nossos projetos mais recentes. Quero mesclar postagens e projetos na mesma saída usando nosso construtor de modelos, Elementor. O Elementor não possui uma interface para mesclar ou combinar postagens e tipos de postagem personalizados, mas é bastante simples fazer isso sozinho!

Na página functions.php do seu tema filho, aqui está um exemplo de como combinar os dois:

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

O filtro pre_get_posts permite atualizar a consulta e configurá-la para obter sua postagem e projeto tipo de postagem personalizada. É claro que, ao escrever seu código, você precisará atualizar o(s) tipo(s) de postagem personalizado(s) para a convenção de nomenclatura real do seu.

Mesclando postagens e tipos de postagem personalizados em seu feed

Eu também tenho o site publicando automaticamente nas mídias sociais por meio de seu feed… então eu também queria usar a mesma consulta para definir o feed RSS. Para fazer isso, basta adicionar uma instrução OR e incluir 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' );

Mesclando postagens e tipos de postagem personalizados no Elementor

Mais uma nota… Elementor tem um ótimo recurso onde você pode nomear e salvar uma consulta em seu site. Nesse caso, estou construindo uma consulta chamada news-projects e posso chamá-la da interface de usuário do Elementor na seção Posts Query.

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

Veja como fica na interface do usuário do Elementor:

consulta de postagens elementor

Divulgação: estou usando meu Elementor link de afiliado neste artigo.