如何在woocommerce中将最近查看的产品显示为滑块?

时间:2019-10-14 16:50:52

标签: wordpress woocommerce

http://remicorson.com/ 说明:添加一个“最近浏览过的产品”的简码 版本:1.0 作者:Remi Corson 作者URI:http://remicorson.com 贡献者:corsonr 文字网域:rc_wc_rvp 域路径:语言 * /

/ **  *注册[woocommerce_recently_viewed_products per_page =“ 5”]简码  *  *此简码使用WooCommerce默认cookie显示最近查看的产品  *它只有一个参数“ per_page”来选择要显示的项目数  *  * @公开访问  * @自1.0起  * @返回$ content * / 函数rc_woocommerce_recently_viewed_products($ atts,$ content = null){

// Get shortcode parameters
extract(shortcode_atts(array(
    "per_page" => '5'
), $atts));

// Get WooCommerce Global
global $woocommerce;

// Get recently viewed product cookies data
$viewed_products = ! empty( $_COOKIE['woocommerce_recently_viewed'] ) ? (array) explode( '|', $_COOKIE['woocommerce_recently_viewed'] ) : array();
$viewed_products = array_filter( array_map( 'absint', $viewed_products ) );

// If no data, quit
if ( empty( $viewed_products ) )
    return __( 'You have not viewed any product yet!', 'rc_wc_rvp' );

// Create the object
ob_start();

// Get products per page
if( !isset( $per_page ) ? $number = 5 : $number = $per_page )

// Create query arguments array
$query_args = array(
                'posts_per_page' => $number, 
                'no_found_rows'  => 1, 
                'post_status'    => 'publish', 
                'post_type'      => 'product', 
                'post__in'       => $viewed_products, 
                'orderby'        => 'rand'
                );

// Add meta_query to query args
$query_args['meta_query'] = array();

// Check products stock status
$query_args['meta_query'][] = $woocommerce->query->stock_status_meta_query();

// Create a new query
$r = new WP_Query($query_args);

// If query return results
if ( $r->have_posts() ) {

    $content = '<ul class="rc_wc_rvp_product_list_widget">';

    // Start the loop
    while ( $r->have_posts()) {
        $r->the_post();
        global $product;

        $content .= '<li>
            <a href="' . get_permalink() . '">
                ' . ( has_post_thumbnail() ? get_the_post_thumbnail( $r->post->ID, 'shop_thumbnail' ) : woocommerce_placeholder_img( 'shop_thumbnail' ) ) . ' ' . get_the_title() . '
            </a> ' . $product->get_price_html() . '
        </li>';
    }

    $content .= '</ul>';

}

// Get clean object
$content .= ob_get_clean();

// Return whole content
return $content;

}

//注册简码 add_shortcode(“ woocommerce_recently_viewed_products”,“ rc_woocommerce_recently_viewed_products”);

0 个答案:

没有答案