preview->is_preview_mode() ) {
$classes[] = 'elementor-preview';
}
}
if ( get_post_type() === 'elementor_library' ) {
$classes[] = 'elementor-template';
}
if ( is_page() && kernel_metabox( 'header_background' ) ) {
$classes[] = 'header-has-custom-bg';
}
// Header fixed.
if ( kernel_get_mod( 'header_fixed', false ) ) {
$classes[] = 'header-fixed';
}
// Get layout position.
$classes[] = kernel_layout_position();
$layout_position = kernel_layout_position();
if ( ! is_page() && 'no-sidebar' !== $layout_position && ! is_active_sidebar( 'sidebar-blog' ) ) {
$classes[] = 'blog-empty-widget';
}
if ( is_page() && 'no-sidebar' !== $layout_position && ! is_active_sidebar( 'sidebar-page' ) ) {
$classes[] = 'page-empty-widget';
}
// Get layout style.
$layout_style = kernel_get_mod( 'site_layout_style', 'full-width' );
$classes[] = 'site-layout-' . $layout_style;
// Get header style.
$header_style = kernel_get_mod( 'header_site_style', 'style-1' );
if ( is_page() && kernel_metabox( 'header_style' ) ) {
$header_style = kernel_metabox( 'header_style' );
}
if ( is_page() && kernel_elementor( 'header_style' ) ) {
$header_style = kernel_elementor( 'header_style' );
}
$classes[] = 'header-' . $header_style;
if ( is_page() ) {
$classes[] = 'is-page';
}
if ( is_page_template( 'templates/page-onepage.php' ) ) {
$classes[] = 'one-page';
}
if ( ( is_page() && kernel_metabox( 'hide_padding_content' ) )
|| ( is_singular( 'project' ) && kernel_metabox( 'hide_padding_content' ) ) ) {
$classes[] = 'no-padding-content';
}
// Add classes for Woo pages.
if ( kernel_is_woocommerce_page() ) {
$classes[] = 'woocommerce-page';
}
if ( kernel_is_woocommerce_shop() ) {
$classes[] = 'main-shop-page';
}
if ( kernel_is_woocommerce_shop() || kernel_is_woocommerce_archive_product() ) {
$shop_cols = kernel_get_mod( 'shop_columns', '3' );
$classes[] = 'shop-col-' . $shop_cols;
}
// Add class for search page.
if ( is_search() ) {
$classes[] = 'search-page';
}
// Boxed Layout dropshadow.
if ( 'boxed' === $layout_style && kernel_get_mod( 'site_layout_boxed_shadow' ) ) {
$classes[] = 'box-shadow';
}
if ( kernel_get_mod( 'header_search_icon' ) ) {
$classes[] = 'header-simple-search';
}
if ( is_singular( 'post' ) ) {
$classes[] = 'is-single-post';
}
if ( is_singular( 'project' ) ) {
$classes[] = 'page-single-project';
}
if ( kernel_get_mod( 'kernel_blog_single_related', false ) ) {
$classes[] = 'has-related-post';
}
if ( kernel_get_mod( 'project_related', false ) ) {
$classes[] = 'has-related-project';
}
if ( ! is_active_sidebar( 'sidebar-footer-1' ) &&
! is_active_sidebar( 'sidebar-footer-2' ) &&
! is_active_sidebar( 'sidebar-footer-3' ) &&
! is_active_sidebar( 'sidebar-footer-4' ) &&
! is_active_sidebar( 'sidebar-footer-5' ) ) {
$classes[] = 'footer-no-widget';
}
// Footer Style.
if ( kernel_is_woocommerce_shop() && kernel_get_mod( 'shop_footer_style' ) ) {
$classes[] = 'footer-' . kernel_get_mod( 'shop_footer_style' );
} elseif ( is_singular( 'product' ) && kernel_get_mod( 'shop_single_footer_style', false ) ) {
$classes[] = 'footer-' . kernel_get_mod( 'shop_single_footer_style' );
} else {
if ( kernel_metabox( 'footer_style' ) ) {
$classes[] = 'footer-' . kernel_metabox( 'footer_style' );
} else {
$classes[] = 'footer-' . kernel_get_mod( 'footer_style' );
}
}
// Return classes.
return $classes;
}
add_filter( 'body_class', 'kernel_body_classes' );
/** Remove products and pages results from the search form widget
*
* @param query $query for custom search.
*/
function kernel_custom_search_query( $query ) {
if ( is_admin() || ! $query->is_main_query() ) {
return;
}
if ( isset( $_GET['post_type'] ) && ( 'product' === $_GET['post_type'] ) ) {
return;
}
if ( $query->is_search() ) {
$in_search_post_types = get_post_types( array( 'exclude_from_search' => false ) );
$post_types_to_remove = array( 'product' );
foreach ( $post_types_to_remove as $post_type_to_remove ) {
if ( is_array( $in_search_post_types )
&& in_array( $post_type_to_remove, $in_search_post_types )
) {
unset( $in_search_post_types[ $post_type_to_remove ] );
$query->set( 'post_type', $in_search_post_types );
}
}
}
}
add_action( 'pre_get_posts', 'kernel_custom_search_query' );
/** Update Woocommerce Cart.
*
* @param fragments $fragments for woocommerce.
*/
function kernel_woocommerce_header_add_to_cart_fragment( $fragments ) {
ob_start();
if ( class_exists( 'woocommerce' ) ) : ?>
cart->cart_contents_count, 'kernel' ), WC()->cart->cart_contents_count ) ); ?> cart->get_cart_total() ); ?>
(', ' ', $link );
$link = str_replace( ')', '', $link );
return $link;
}
add_filter( 'wp_list_categories', 'cat_count_span' );
/**
* Column of related product
*
* @param arguements $args for related products.
*/
function kernel_related_products_args( $args ) {
$column = kernel_get_mod( 'shop_realted_columns', 3 );
$args['posts_per_page'] = $column;
$args['columns'] = $column;
return $args;
}
add_filter( 'woocommerce_output_related_products_args', 'kernel_related_products_args', 20 );