✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Jetpack Infinite Scroll para resultados de búsqueda

17

Jetpack tiene la función de desplazamiento infinito activada de forma predeterminada para las vistas de archivos y blogs. Sin embargo, está desactivado para las vistas de resultados de búsqueda.

Visión general

Infinite Scroll incluye un filtro para indicar si es compatible o no, y podemos usar un condicional para alterar el valor devuelto. El filtro es infinite_scroll_archive_supportedy recibe un booleano que indica el estado admitido para la vista actual y la configuración de inicialización de desplazamiento infinito como parámetros.

Filtrado del soporte de vista actual

Escribiremos una condición similar a la que se encuentra en el filtro, pero agregaremos is_search para que se active en una vista de resultados de búsqueda. Puedes pegar lo siguiente en el archivo functions.php de tu tema o similar:

/**
 * Enables Jetpack's Infinite Scroll in search pages, disables it in product archives
 * @return bool
 */
function tr_theme_jetpack_infinite_scroll_supported() {
    return current_theme_supports( 'infinite-scroll') && (is_home() || is_archive() || is_search() );
}
add_filter( 'infinite_scroll_archive_supported', 'tr_theme_jetpack_infinite_scroll_supported' );

Deshabilitar Infinite Scroll en archivos de tipo de publicación personalizados

Tal vez tenga un cierto tipo de archivo de publicación personalizado, como los productos de WooCommerce, y desee deshabilitar Infinite Scroll de Jetpack para la tienda y los archivos de productos de WooCommerce. Esto es lo que usarías entonces:

/**
 * Enables Jetpack's Infinite Scroll in search pages, disables it in product archives
 * @return bool
 */
function tr_theme_jetpack_infinite_scroll_supported() {
    return current_theme_supports( 'infinite-scroll') && (is_home() || is_archive() || is_search()) &&! is_post_type_archive( 'product' );
}
add_filter( 'infinite_scroll_archive_supported', 'tr_theme_jetpack_infinite_scroll_supported' );

No estamos usando una función como is_woocommerceporque si alguna vez deshabilita el complemento WooCommerce, el sitio se quedará en blanco ya que la is_woocommercefunción ya no estará definida y arrojará un error fatal.

Fuente de grabación: startfunction.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More