¿Estás buscando una forma de eliminar categorías de las fuentes RSS usando el archivo functions.php de tu tema? Si bien probablemente exista un plugin para esto, hemos creado un fragmento de código rápido que puedes usar para excluir categorías de las fuentes RSS con functions.php en WordPress.
Instrucciones:
Todo lo que tienes que hacer es agregar este código al archivo functions.php de tu tema o a un plugin específico del sitio. Luego, agrega los IDs de las categorías que deseas excluir en la línea 3 (actualmente configurados en 20, 21 y 22). Asegúrate de usar un guion, "-", antes del ID de la categoría.
function exclude_cat_wps($query) {
if ($query->is_feed) {
$query->set('cat','-20,-21,-22');
}
return $query;
}
add_filter('pre_get_posts','exclude_cat_wps');
Nota: Si es la primera vez que agregas fragmentos de código en WordPress, consulta nuestra guía sobre cómo copiar / pegar fragmentos de código correctamente en WordPress, para que no rompas accidentalmente tu sitio.
Si te gustó este fragmento de código, considera echar un vistazo a nuestros otros artículos en el sitio como: Cómo crear un sitio de membresía de WordPress y Los 9 mejores plugins de gestión de anuncios de WordPress para aumentar los ingresos.
Me pregunto si puedes ayudar, aunque he seguido otras instrucciones antes de llegar aquí.
He copiado mi blog para que esté en 2 páginas diferentes en mi sitio web. En la página 182 quiero que se muestren categorías específicas del blog. En la página 195 quiero que se muestren el resto de las categorías.
Creé un tema hijo. Aquí copié (a través del administrador de archivos) page.php y renombré una "page-182.php" y otra "page-195.php".
En cada archivo de página inserté un código que debería incluir las categorías específicas para cada página y lo guardé.
Pero todas las categorías se muestran en ambas páginas todavía, así que nada ha cambiado.
¿Qué estoy haciendo mal?
Esta es page-195.php incluyendo el código:
<div id=\"primary\" >
$args = array(‘category__in’=>array( 90, 92, 91 ),);
// La consulta
$the_query = new WP_Query( $args );
// El Bucle
if ( $the_query->have_posts() ) {
echo ‘’;
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo ‘’ . get_the_title() . ‘’;
echo ‘’ . get_the_content() . ‘’;
}
echo ‘’;
} else {
// no se encontraron publicaciones
}
/* Restaurar datos originales de la publicación */
wp_reset_postdata();
—-esta parte es solo el código:
$args = array(‘category__in’=>array( 90, 92, 91 ),);
// La Consulta
$the_query = new WP_Query( $args );
// El Bucle
if ( $the_query->have_posts() ) {
echo ‘’;
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo ‘’ . get_the_title() . ‘’;
echo ‘’ . get_the_content() . ‘’;
}
echo ‘’;
} else {
// no se encontraron publicaciones
}
/* Restaurar datos originales de la publicación */
wp_reset_postdata();
Espero que puedas ver dónde me estoy equivocando. Soy nuevo y no entiendo el código. Solo busqué en Google y YouTube para llegar hasta aquí.
Gracias 🙂
Parece que el código PHP puede no estar correctamente envuelto con etiquetas PHP. También puedes consultar este fragmento: https://www.isitwp.com/list-recent-posts-from-a-single-category/
gracias
¿Esto tarda algún tiempo en actualizarse? Seguí estas instrucciones exactamente, pero las publicaciones de la categoría todavía aparecen en el feed RSS2.0.
Hola Zachary
No, esto debería funcionar de inmediato, ¿tienes algún otro código que pueda causar problemas?
Plugins relacionados con RSS,