当前位置: 首页>>代码示例>>PHP>>正文


PHP WC_Product::get_price_html方法代码示例

本文整理汇总了PHP中WC_Product::get_price_html方法的典型用法代码示例。如果您正苦于以下问题:PHP WC_Product::get_price_html方法的具体用法?PHP WC_Product::get_price_html怎么用?PHP WC_Product::get_price_html使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在WC_Product的用法示例。


在下文中一共展示了WC_Product::get_price_html方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: get_product_data

 /**
  * Get standard product data that applies to every product type
  *
  * @since 2.1
  * @param WC_Product $product
  * @return array
  */
 private function get_product_data($product)
 {
     return array('title' => $product->get_name(), 'id' => $product->get_id(), 'created_at' => $this->server->format_datetime($product->get_date_created(), false, true), 'updated_at' => $this->server->format_datetime($product->get_date_modified(), false, true), 'type' => $product->get_type(), 'status' => $product->get_status(), 'downloadable' => $product->is_downloadable(), 'virtual' => $product->is_virtual(), 'permalink' => $product->get_permalink(), 'sku' => $product->get_sku(), 'price' => wc_format_decimal($product->get_price(), 2), 'regular_price' => wc_format_decimal($product->get_regular_price(), 2), 'sale_price' => $product->get_sale_price() ? wc_format_decimal($product->get_sale_price(), 2) : null, 'price_html' => $product->get_price_html(), 'taxable' => $product->is_taxable(), 'tax_status' => $product->get_tax_status(), 'tax_class' => $product->get_tax_class(), 'managing_stock' => $product->managing_stock(), 'stock_quantity' => $product->get_stock_quantity(), 'in_stock' => $product->is_in_stock(), 'backorders_allowed' => $product->backorders_allowed(), 'backordered' => $product->is_on_backorder(), 'sold_individually' => $product->is_sold_individually(), 'purchaseable' => $product->is_purchasable(), 'featured' => $product->is_featured(), 'visible' => $product->is_visible(), 'catalog_visibility' => $product->get_catalog_visibility(), 'on_sale' => $product->is_on_sale(), 'weight' => $product->get_weight() ? wc_format_decimal($product->get_weight(), 2) : null, 'dimensions' => array('length' => $product->get_length(), 'width' => $product->get_width(), 'height' => $product->get_height(), 'unit' => get_option('woocommerce_dimension_unit')), 'shipping_required' => $product->needs_shipping(), 'shipping_taxable' => $product->is_shipping_taxable(), 'shipping_class' => $product->get_shipping_class(), 'shipping_class_id' => 0 !== $product->get_shipping_class_id() ? $product->get_shipping_class_id() : null, 'description' => apply_filters('the_content', $product->get_description()), 'short_description' => apply_filters('woocommerce_short_description', $product->get_short_description()), 'reviews_allowed' => $product->get_reviews_allowed(), 'average_rating' => wc_format_decimal($product->get_average_rating(), 2), 'rating_count' => $product->get_rating_count(), 'related_ids' => array_map('absint', array_values(wc_get_related_products($product->get_id()))), 'upsell_ids' => array_map('absint', $product->get_upsell_ids()), 'cross_sell_ids' => array_map('absint', $product->get_cross_sell_ids()), 'categories' => wc_get_object_terms($product->get_id(), 'product_cat', 'name'), 'tags' => wc_get_object_terms($product->get_id(), 'product_tag', 'name'), 'images' => $this->get_images($product), 'featured_src' => wp_get_attachment_url(get_post_thumbnail_id($product->get_id())), 'attributes' => $this->get_attributes($product), 'downloads' => $this->get_downloads($product), 'download_limit' => $product->get_download_limit(), 'download_expiry' => $product->get_download_expiry(), 'download_type' => 'standard', 'purchase_note' => apply_filters('the_content', $product->get_purchase_note()), 'total_sales' => $product->get_total_sales(), 'variations' => array(), 'parent' => array());
 }
开发者ID:woocommerce,项目名称:woocommerce,代码行数:11,代码来源:class-wc-api-products.php

示例2: woocs_product

function woocs_product($ID, $attr, $currency = true)
{
    if (class_exists('WC_Product')) {
        $product = new WC_Product($ID);
        if ($attr == 'price_tax_inc') {
            $p = round($product->get_price_including_tax(), 2);
        } elseif ($attr == 'get_price_excluding_tax') {
            $p = round($product->get_price_excluding_tax(), 2);
        } elseif ($attr == 'get_price') {
            $p = round($product->get_price(), 2);
        } elseif ($attr == 'get_sale_price') {
            $p = round($product->get_sale_price(), 2);
        } elseif ($attr == 'get_regular_price') {
            $p = round($product->get_regular_price(), 2);
        } elseif ($attr == 'get_price_html') {
            $p = strip_tags($product->get_price_html());
        } elseif ($attr == 'is_in_stock') {
            $p = $product->is_in_stock();
        }
    }
    return $p;
}
开发者ID:agalardo,项目名称:mal-mala,代码行数:22,代码来源:woocs-functions.php

示例3: vc_gitem_template_attribute_woocommerce_product

/**
 * Gte woocommerce data for product
 *
 * @param $value
 * @param $data
 *
 * @return string
 */
function vc_gitem_template_attribute_woocommerce_product($value, $data)
{
    $label = '';
    /**
     * @var null|Wp_Post $post ;
     * @var string $data ;
     */
    extract(array_merge(array('post' => null, 'data' => ''), $data));
    require_once WC()->plugin_path() . '/includes/abstracts/abstract-wc-product.php';
    $product = new WC_Product($post);
    if (preg_match('/_labeled$/', $data)) {
        $data = preg_replace('/_labeled$/', '', $data);
        $label = apply_filters('vc_gitem_template_attribute_woocommerce_product_' . $data . '_label', Vc_Vendor_Woocommerce::getProductFieldLabel($data) . ': ');
    }
    $price_format = get_woocommerce_price_format();
    switch ($data) {
        case 'id':
            $value = (int) $product->is_type('variation') ? $product->get_variation_id() : $product->id;
            break;
        case 'sku':
            $value = $product->get_sku();
            break;
        case 'price':
            $value = sprintf($price_format, wc_format_decimal($product->get_price(), 2), get_woocommerce_currency());
            break;
        case 'regular_price':
            $value = sprintf($price_format, wc_format_decimal($product->get_regular_price(), 2), get_woocommerce_currency());
            break;
        case 'sale_price':
            $value = sprintf(get_woocommerce_price_format(), $product->get_sale_price() ? wc_format_decimal($product->get_sale_price(), 2) : '', get_woocommerce_currency());
            break;
        case 'price_html':
            $value = $product->get_price_html();
            break;
        case 'reviews_count':
            $value = count(get_comments(array('post_id' => $post->ID, 'approve' => 'approve')));
            break;
        case 'short_description':
            $value = apply_filters('woocommerce_short_description', $product->get_post_data()->post_excerpt);
            break;
        case 'dimensions':
            $units = get_option('woocommerce_dimension_unit');
            $value = $product->length . $units . 'x' . $product->width . $units . 'x' . $product->height . $units;
            break;
        case 'raiting_count':
            $value = $product->get_rating_count();
            break;
        case 'weight':
            $value = $product->get_weight() ? wc_format_decimal($product->get_weight(), 2) : '';
            break;
        case 'on_sale':
            $value = $product->is_on_sale() ? 'yes' : 'no';
            // @todo change
            break;
        default:
            $value = $product->{$data};
    }
    return strlen($value) > 0 ? $label . apply_filters('vc_gitem_template_attribute_woocommerce_product_' . $data . '_value', $value) : '';
}
开发者ID:chicosilva,项目名称:olharambiental,代码行数:67,代码来源:grid-item-attributes.php

示例4: hocwp_wc_product_price

function hocwp_wc_product_price($post_id = null, $show_full = false)
{
    if ($show_full) {
        if (!hocwp_id_number_valid($post_id)) {
            $post_id = get_the_ID();
        }
        $product = new WC_Product($post_id);
        $html = $product->get_price_html();
        $html = hocwp_wrap_tag($html, 'p', 'prices price');
        echo $html;
    } else {
        $price = hocwp_wc_get_product_price($post_id);
        echo hocwp_wc_format_price($price);
    }
}
开发者ID:skylarkcob,项目名称:hocwp-projects,代码行数:15,代码来源:woocommerce.php

示例5: alfw_slider_render_func


//.........这里部分代码省略.........
                echo '<div class="cycle-caption"></div>';
                //echo '<div class="cycle-overlay"></div>';
            }
        }
        /**
         * Showing nawigation buttons
         */
        if ($slider[0]['show_navigation'] && $slider_count > 1) {
            $hover = '';
            if ($slider[0]['navigation_on_hover_state_only']) {
                $hover = 'hover';
            }
            echo '
            <div class="slide_commands ' . $hover . '">
                <div class="slide_play" style="display: none;"></div>
                <div class="slide_stop" style="display: block;"></div>
            </div>';
            echo '<div class="slide-prev ' . $hover . '"><span></span></div>';
            echo '<div class="slide-next ' . $hover . '"><span></span></div>';
        }
        foreach ($slides as &$slide) {
            /**
             * Add to hotspot product information
             */
            $hotspots = json_decode($slide['hotsposts']);
            if (!empty($hotspots)) {
                foreach ($hotspots as &$point) {
                    /**
                     * $point->sku - it's post id not product sku
                     */
                    if (!empty($point->sku) && is_numeric($point->sku)) {
                        $post_data = get_post($point->sku, ARRAY_A);
                        $product = new WC_Product($post_data['ID']);
                        $price = $product->get_price_html();
                        $stock_status = $product->is_in_stock() ? 'In stock' : 'Out of stock';
                        $product_url = get_permalink($post_data['ID']);
                        $url = wp_get_attachment_image_src(get_post_thumbnail_id($post_data['ID']));
                        $status_block = '';
                        $price_block = '';
                        $text_block = '';
                        $addcart_block = '';
                        $img_block = '';
                        if ($show_desc) {
                            $img_block = !empty($url[0]) ? '<img src="' . $url[0] . '" style="width:50px" />' : '';
                        }
                        switch ($post_data['post_type']) {
                            case 'post':
                                if ($show_desc) {
                                    $text_block = mb_substr(strip_tags($post_data['post_content']), 0, 100);
                                }
                                break;
                            case 'page':
                                if ($show_desc) {
                                    $text_block = mb_substr(strip_tags($post_data['post_content']), 0, 100);
                                }
                                break;
                            case 'product':
                                $status_block = '<div class="out-of-stock"><span>' . $stock_status . '</span></div>';
                                $price_block = '<div class="price">' . $price . '</div>';
                                if ($show_desc) {
                                    $text_block = mb_substr(strip_tags($post_data['post_excerpt']), 0, 100);
                                }
                                if ($show_addcart) {
                                    $addcart_block = '<div class="add-to-cart">
                                            <form method="post" action="' . esc_url($product_url) . '">
                                                <input type="hidden" value="' . $post_data['ID'] . '" name="add-to-cart">
开发者ID:altima-au,项目名称:wp-lookbook-free,代码行数:67,代码来源:alfw_slider.php

示例6: sysProductLoop

function sysProductLoop($category_name, $number_posts)
{
    if (empty($number_posts)) {
        $number_posts = -1;
    }
    $args = array('showposts' => $number_posts, 'product_cat' => $category_name, 'post_type' => 'product');
    $loop = new WP_Query($args);
    if ($loop->have_posts()) {
        ?>
			<section class="loop__products masonry__grid">
				<?php 
        while ($loop->have_posts()) {
            $loop->the_post();
            // gets the loop__product info
            $product = new WC_Product(get_the_ID());
            $product_price = $product->get_price_html();
            // gets the group info
            $groups = new Groups_Post_Access();
            $groups_post = $groups->get_read_post_capabilities(get_the_ID());
            ?>
						<div class="loop__product masonry__item"<?php 
            // adds all groups applied to loop__product to the attribute 'data-machines'
            if (!empty($groups)) {
                $x = 0;
                echo 'data-machines="';
                foreach ($groups_post as $group) {
                    if ($x > 0) {
                        echo " ";
                    } else {
                        $x++;
                    }
                    $group_sort = strtolower($group);
                    $group_sort = str_replace('|', '', $group_sort);
                    $group_sort = str_replace(' ', '-', $group_sort);
                    $group_sort = str_replace('--', '-', $group_sort);
                    echo $group_sort;
                }
                echo '"';
            }
            ?>
>
							<a href="<?php 
            the_permalink();
            ?>
" class="loop__product__link">

								<?php 
            // if loop__product has image
            if (get_the_post_thumbnail()) {
                // get loop__product image
                $url = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium');
                ?>

										<div class="loop__product__image__container">
											<img data-layzr="<?php 
                echo $url[0];
                ?>
" alt="<?php 
                the_title();
                ?>
 image" class="loop__product__image">
										</div>

										<?php 
            }
            ?>

								<div class="loop__product__header">
									<h2 class="loop__product__title"><?php 
            echo ucwords(get_the_title());
            ?>
</h2>
									<p class="loop__product__price"><?php 
            echo $product_price;
            ?>
</p>
								</div>

								<?php 
            if (get_the_excerpt()) {
                $x = get_the_excerpt();
                echo '<p class="loop__product__excerpt">' . $x . '</p>';
            }
            ?>
							</a>
						</div>
						<?php 
        }
        // END | While $loop->have_posts();
        ?>
			</section>
			<?php 
    }
    // END | If $loop->have_posts()
    // to make sure that any wp_query's after don't use the same $args
    wp_reset_query();
}
开发者ID:Carfulan-Group,项目名称:SYS-Consumables-Store,代码行数:97,代码来源:sys-product-loop.php

示例7: array


//.........这里部分代码省略.........
         foreach ($front_edit_reverse as $key => $value) {
             if ($key == $sort_by) {
                 echo '<div>' . __("Sort Criterion", "ts_visual_composer_extend") . ': ' . $value . '</div>';
             }
         }
         $front_edit_reverse = array("asc" => __('Bottom to Top', "ts_visual_composer_extend"), "desc" => __('Top to Bottom', "ts_visual_composer_extend"));
         foreach ($front_edit_reverse as $key => $value) {
             if ($key == $sort_order) {
                 echo '<div>' . __("Initial Order", "ts_visual_composer_extend") . ': ' . $value . '</div>';
             }
         }
         echo '<div>' . __("Show Filter Button", "ts_visual_composer_extend") . ': ' . $filter_menu . '</div>';
         echo '<div>' . __("Show Layout Button", "ts_visual_composer_extend") . ': ' . $layout_menu . '</div>';
         echo '<div>' . __("Show Sort Criterion Button", "ts_visual_composer_extend") . ': ' . $sort_menu . '</div>';
         echo '<div>' . __("Show Directions Buttons", "ts_visual_composer_extend") . ': ' . $directions_menu . '</div>';
         echo '</div>';
     } else {
         $opening .= '<div id="' . $posts_container_id . '" class="ts-isotope-posts-grid-parent ' . ($layout == 'spineTimeline' ? 'ts-timeline ' : 'ts-postsgrid ') . 'ts-timeline-' . $sort_order . ' ts-posts-timeline ' . $isotope_posts_list_class . ' ' . $css_class . '" style="margin-top: ' . $margin_top . 'px; margin-bottom: ' . $margin_bottom . ';" data-lazy="' . $posts_lazy . '" data-count="' . $posts_limit . '" data-ajax="' . $posts_ajax . '" data-trigger="' . $posts_trigger . '" data-column="' . $column_width . '" data-layout="' . $layout . '" data-sort="' . $sort_by . '" data-order="' . $sort_order . '" data-break="' . $layout_break . '" data-type="' . $post_type . '">';
         // Create Individual Post Output
         $postCounter = 0;
         $postCategories = array();
         $categoriesCount = 0;
         if (post_type_exists($post_type) && $loop->have_posts()) {
             $products .= '<div class="ts-timeline-content">';
             $products .= '<ul id="ts-isotope-posts-grid-' . $postsgrid_random . '" class="ts-isotope-posts-grid ts-timeline-list" data-layout="' . $layout . '" data-key="' . $postsgrid_random . '">';
             while ($loop->have_posts()) {
                 $loop->the_post();
                 $postCounter++;
                 $product_id = get_the_ID();
                 $product_title = get_the_title($product_id);
                 $post = get_post($product_id);
                 $product = new WC_Product($product_id);
                 $attachment_ids = $product->get_gallery_attachment_ids();
                 $price = $product->get_price_html();
                 $product_sku = $product->get_sku();
                 $attributes = $product->get_attributes();
                 $stock = $product->is_in_stock() ? 'true' : 'false';
                 $onsale = $product->is_on_sale() ? 'true' : 'false';
                 // Rating Settings
                 $rating_html = $product->get_rating_html();
                 $rating = $product->get_average_rating();
                 if ($rating == '') {
                     $rating = 0;
                 }
                 if ($rating_quarter == "true") {
                     $rating_value = floor($rating * 4) / 4;
                 } else {
                     $rating_value = $rating;
                 }
                 $rating_value = number_format($rating_value, 2, $caption_digits, '');
                 if ($rating_rtl == "false") {
                     $rating_width = $rating_value / $rating_maximum * 100;
                 } else {
                     $rating_width = 100 - $rating_value / $rating_maximum * 100;
                 }
                 if ($rating_symbol == "other") {
                     if ($rating_icon == "ts-ecommerce-starfull1") {
                         $rating_class = 'ts-rating-stars-star1';
                     } else {
                         if ($rating_icon == "ts-ecommerce-starfull2") {
                             $rating_class = 'ts-rating-stars-star2';
                         } else {
                             if ($rating_icon == "ts-ecommerce-starfull3") {
                                 $rating_class = 'ts-rating-stars-star3';
                             } else {
                                 if ($rating_icon == "ts-ecommerce-starfull4") {
开发者ID:ryansm,项目名称:saud,代码行数:67,代码来源:ts_vcsc_woocommerce_custom_grid.php

示例8: content

    protected function content($atts, $content = null)
    {
        $atts = function_exists('vc_map_get_attributes') ? vc_map_get_attributes('kt_featured_products', $atts) : $atts;
        $atts = shortcode_atts(array('title' => __('Hot Categories', 'kutetheme'), 'box_type' => 'featured', 'ids' => '', 'number' => 4, 'css_animation' => '', 'el_class' => '', 'css' => ''), $atts);
        extract($atts);
        $elementClass = array('base' => apply_filters(VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, ' trending ', $this->settings['base'], $atts), 'extra' => $this->getExtraClass($el_class), 'css_animation' => $this->getCSSAnimation($css_animation), 'shortcode_custom' => vc_shortcode_custom_css_class($css, ' '));
        $elementClass = preg_replace(array('/\\s+/', '/^\\s|\\s$/'), array(' ', ''), implode(' ', $elementClass));
        ob_start();
        $args = array('post_type' => 'product', 'meta_key' => '_featured', 'meta_value' => 'yes', 'posts_per_page' => $number);
        if ($ids) {
            $ids = explode(',', $ids);
        } else {
            $ids = array();
        }
        if ($box_type == 'by_id') {
            $args = array('post_type' => 'product', 'post__in' => $ids);
        }
        $products = get_posts($args);
        $count = count($products);
        $per_page = 2;
        $loop = false;
        if ($count > 2) {
            $loop = true;
        }
        ?>
        <div class=" <?php 
        echo esc_attr($elementClass);
        ?>
">
            <?php 
        if ($title) {
            ?>
            <h2 class="trending-title"><?php 
            echo esc_html($title);
            ?>
</h2>
            <?php 
        }
        ?>
            <div class="trending-product owl-carousel nav-center" data-items="1" data-dots="false" data-nav="true" data-autoplay="true" <?php 
        if ($loop) {
            ?>
 data-loop="true" <?php 
        }
        ?>
>
                <?php 
        $page = 1;
        if ($count % $per_page == 0) {
            $page = $count / $per_page;
        } else {
            $page = $count / $per_page + 1;
        }
        ?>
                <?php 
        for ($i = 1; $i <= $page; $i++) {
            ?>
                    <ul>
                        <?php 
            $from = ($i - 1) * $per_page;
            $to = $i * $per_page;
            for ($from; $from < $to; $from++) {
                if (isset($products[$from]) && $products[$from]) {
                    $p = $products[$from];
                    $product = new WC_Product($p->ID);
                    ?>
                                    <li>
                                        <div class="product-container">
                                            <div class="product-image">
                                                <a href="<?php 
                    echo get_permalink($p->ID);
                    ?>
">
                                                   <?php 
                    echo get_the_post_thumbnail($p->ID, 'shop_thumbnai');
                    ?>
                                                </a>
                                            </div>
                                            <div class="product-info">
                                                <h5 class="product-name">
                                                    <a href="<?php 
                    echo get_permalink($p->ID);
                    ?>
"><?php 
                    echo esc_html($p->post_title);
                    ?>
</a>
                                                </h5>
                                                <div class="product-price">
                                                    <?php 
                    echo $product->get_price_html();
                    ?>
                                                </div>
                                            </div>
                                        </div>
                                    </li>
                                <?php 
                }
            }
            ?>
//.........这里部分代码省略.........
开发者ID:hikaram,项目名称:wee,代码行数:101,代码来源:featured_products.php

示例9: WooComposer_Loop_style04


//.........这里部分代码省略.........
    }
    if ($display_type == "product_categories") {
        $args['tax_query'] = array(array('taxonomy' => 'product_cat', 'terms' => $ids, 'field' => 'term_id', 'operator' => 'IN'));
    }
    $test = '';
    if (vc_is_inline()) {
        $test = "wcmp_vc_inline";
    }
    if ($product_animation == '') {
        $product_animation = 'no-animation';
    } else {
        $style .= 'opacity:1;';
    }
    if ($element == "grid") {
        $class = 'vc_span' . $columns . ' ';
    }
    $output .= '<div class="woocomposer ' . $test . '" data-columns="' . $col . '">';
    $query = new WP_Query($args);
    if ($query->have_posts()) {
        while ($query->have_posts()) {
            $query->the_post();
            $product_id = get_the_ID();
            $uid = uniqid();
            $output .= '<div id="product-' . $uid . '" style="' . $style . '" class="' . $class . ' wpb_column column_container wooproduct" data-animation="animated ' . $product_animation . '">';
            if ($element == 'carousel') {
                $output .= '<div class="wcmp-carousel-item">';
            }
            $product_title = get_the_title($product_id);
            $post = get_post($product_id);
            $product_desc = get_post($product_id)->post_excerpt;
            $product_img = wp_get_attachment_image_src(get_post_thumbnail_id($product_id), $image_size);
            $product = new WC_Product($product_id);
            $attachment_ids = $product->get_gallery_attachment_ids();
            $price = $product->get_price_html();
            $rating = $product->get_rating_html();
            $attributes = $product->get_attributes();
            $stock = $product->is_in_stock() ? 'InStock' : 'OutOfStock';
            if ($product->is_on_sale()) {
                $on_sale = apply_filters('woocommerce_sale_flash', $label_on_sale, $post, $product);
            } else {
                $on_sale = '';
            }
            if ($quick_view_style == "expandable") {
                $quick_view_class = 'quick-view-loop';
            } else {
                $quick_view_class = 'quick-view-loop-popup';
            }
            $cat_count = sizeof(get_the_terms($product_id, 'product_cat'));
            $tag_count = sizeof(get_the_terms($product_id, 'product_tag'));
            $categories = $product->get_categories(', ', '<span class="posted_in">' . _n('', '', $cat_count, 'woocommerce') . ' ', '.</span>');
            $tags = $product->get_tags(', ', '<span class="tagged_as">' . _n('', '', $tag_count, 'woocommerce') . ' ', '.</span>');
            $output .= "\n" . '<div class="wcmp-product woocommerce wcmp-' . $product_style . ' ' . $img_animate . '" style="' . $border . ' ' . $desc_style . '">';
            $output .= "\n\t" . '<div class="wcmp-product-image">';
            if (empty($attachment_ids) && count($attachment_ids) > 1 && $product_img_disp == "carousel") {
                $uniqid = uniqid();
                $output .= '<div class="wcmp-single-image-carousel carousel-in-loop">';
                $product_img = wp_get_attachment_image_src(get_post_thumbnail_id($product_id), $image_size);
                if ($lazy_images == "enable") {
                    $src = plugins_url('../assets/img/loader.gif', __FILE__);
                } else {
                    $src = $product_img[0];
                }
                $output .= '<div><div class="wcmp-image"><img class="wcmp-img" src="' . $src . '" data-src="' . $product_img[0] . '"/></div></div>';
                foreach ($attachment_ids as $attachment_id) {
                    $product_img = wp_get_attachment_image_src($attachment_id, $image_size);
                    if ($lazy_images == "enable") {
开发者ID:RDePoppe,项目名称:luminaterealestate,代码行数:67,代码来源:design-loop-style04.php

示例10: extract

        /**
         * Shows the course cost.
         *
         * @since 1.0.0
         */
        function course_cost($atts)
        {
            global $coursepress;
            extract(shortcode_atts(array('course_id' => in_the_loop() ? get_the_ID() : '', 'course' => false, 'label' => __('Price:&nbsp;', 'cp'), 'label_tag' => 'strong', 'label_delimeter' => ': ', 'no_cost_text' => __('FREE', 'cp'), 'show_icon' => 'false', 'class' => ''), $atts, 'course_cost'));
            $course_id = (int) $course_id;
            $label = sanitize_text_field($label);
            $label_tag = sanitize_html_class($label_tag);
            $label_delimeter = sanitize_html_class($label_delimeter);
            $no_cost_text = sanitize_text_field($no_cost_text);
            $show_icon = sanitize_text_field($show_icon);
            $class = sanitize_html_class($class);
            $show_icon = 'true' == $show_icon ? true : false;
            // Saves some overhead by not loading the post again if we don't need to.
            $course = empty($course) ? new Course($course_id) : object_decode($course, 'Course');
            $is_paid = get_post_meta($course_id, 'paid_course', true) == 'on' ? true : false;
            $content = '';
            if (cp_use_woo()) {
                if ($is_paid) {
                    $woo_product = get_post_meta($course_id, 'woo_product', true);
                    $wc_product = new WC_Product($woo_product);
                    $content .= $wc_product->get_price_html();
                } else {
                    if ($show_icon) {
                        $content .= '<span class="mp_product_price">' . $no_cost_text . '</span>';
                    } else {
                        $content .= $no_cost_text;
                    }
                }
            } else {
                if ($is_paid && CoursePress::instance()->marketpress_active) {
                    $mp_product = get_post_meta($course_id, 'marketpress_product', true);
                    $content .= do_shortcode('[mp_product_price product_id="' . $mp_product . '" label=""]');
                } else {
                    if ($show_icon) {
                        $content .= '<span class="mp_product_price">' . $no_cost_text . '</span>';
                    } else {
                        $content .= $no_cost_text;
                    }
                }
            }
            if (!empty($content)) {
                ob_start();
                ?>
				<div class="course-cost course-cost-<?php 
                echo $course_id;
                ?>
 <?php 
                echo $class;
                ?>
">
					<?php 
                if (!empty($label)) {
                    ?>
<<?php 
                    echo $label_tag;
                    ?>
 class="label"><?php 
                    echo $label;
                    echo $label_delimeter;
                    ?>
</<?php 
                    echo $label_tag;
                    ?>
><?php 
                }
                echo $content;
                ?>
				</div>
				<?php 
                $content = ob_get_clean();
            }
            // Return the html in the buffer.
            return $content;
        }
开发者ID:akshayxhtmljunkies,项目名称:brownglock,代码行数:79,代码来源:class.shortcodes.php

示例11: woocommerce_product_add_to_cart

/**
 * Display a single prodcut price + cart button
 **/
function woocommerce_product_add_to_cart($atts)
{
    if (empty($atts)) {
        return;
    }
    global $wpdb, $woocommerce;
    if (!isset($atts['style'])) {
        $atts['style'] = 'border:4px solid #ccc; padding: 12px;';
    }
    if ($atts['id']) {
        $product_data = get_post($atts['id']);
    } elseif ($atts['sku']) {
        $product_id = $wpdb->get_var($wpdb->prepare("SELECT post_id FROM {$wpdb->postmeta} WHERE meta_key='_sku' AND meta_value='%s' LIMIT 1", $atts['sku']));
        $product_data = get_post($product_id);
    } else {
        return;
    }
    if ($product_data->post_type == 'product') {
        $product = $woocommerce->setup_product_data($product_data);
        if (!$product->is_visible()) {
            continue;
        }
        ob_start();
        ?>
		<p class="product" style="<?php 
        echo $atts['style'];
        ?>
">
		
			<?php 
        echo $product->get_price_html();
        ?>
			
			<?php 
        woocommerce_template_loop_add_to_cart();
        ?>
						
		</p><?php 
        return ob_get_clean();
    } elseif ($product_data->post_type == 'product_variation') {
        $product = new WC_Product($product_data->post_parent);
        $GLOBALS['product'] = $product;
        $variation = new WC_Product_Variation($product_data->ID);
        if (!$product->is_visible()) {
            continue;
        }
        ob_start();
        ?>
		<p class="product product-variation" style="<?php 
        echo $atts['style'];
        ?>
">
		
			<?php 
        echo $product->get_price_html();
        ?>
			
			<?php 
        $link = $product->add_to_cart_url();
        $label = apply_filters('add_to_cart_text', __('Add to cart', 'woocommerce'));
        $link = add_query_arg('variation_id', $variation->variation_id, $link);
        foreach ($variation->variation_data as $key => $data) {
            if ($data) {
                $link = add_query_arg($key, $data, $link);
            }
        }
        echo sprintf('<a href="%s" data-product_id="%s" class="button add_to_cart_button product_type_%s">%s</a>', esc_url($link), $product->id, $product->product_type, $label);
        ?>
						
		</p><?php 
        return ob_get_clean();
    }
}
开发者ID:rosslavery,项目名称:woocommerce,代码行数:76,代码来源:shortcode-init.php

示例12: get_price_html

 /**
  * Returns range style html price string without min and max.
  *
  * @param  mixed    $price    default price
  * @return string             overridden html price string (old style)
  */
 public function get_price_html($price = '')
 {
     if (!$this->is_synced()) {
         $this->sync_composite();
     }
     if ($this->is_priced_per_product()) {
         // Get the price.
         if ($this->hide_price_html() || $this->min_composite_price === '') {
             $price = apply_filters('woocommerce_composite_empty_price_html', '', $this);
         } else {
             $suppress_range_format = $this->suppress_range_format || apply_filters('woocommerce_composite_force_old_style_price_html', false, $this);
             if ($suppress_range_format) {
                 $price = wc_price($this->get_composite_price('min', true));
                 if ($this->min_composite_regular_price > $this->min_composite_price) {
                     $regular_price = wc_price($this->get_composite_regular_price('min', true));
                     if ($this->min_composite_price !== $this->max_composite_price) {
                         $price = sprintf(_x('%1$s%2$s', 'Price range: from', 'woocommerce-composite-products'), $this->get_price_html_from_text(), $this->get_price_html_from_to($regular_price, $price) . $this->get_price_suffix());
                     } else {
                         $price = $this->get_price_html_from_to($regular_price, $price) . $this->get_price_suffix();
                     }
                     $price = apply_filters('woocommerce_composite_sale_price_html', $price, $this);
                 } elseif ($this->min_composite_price === 0 && $this->max_composite_price === 0) {
                     $free_string = apply_filters('woocommerce_composite_show_free_string', false, $this) ? __('Free!', 'woocommerce') : $price;
                     $price = apply_filters('woocommerce_composite_free_price_html', $free_string, $this);
                 } else {
                     if ($this->min_composite_price !== $this->max_composite_price) {
                         $price = sprintf(_x('%1$s%2$s', 'Price range: from', 'woocommerce-composite-products'), $this->get_price_html_from_text(), $price . $this->get_price_suffix());
                     } else {
                         $price = $price . $this->get_price_suffix();
                     }
                     $price = apply_filters('woocommerce_composite_price_html', $price, $this);
                 }
             } else {
                 if ($this->min_composite_price !== $this->max_composite_price) {
                     $price = sprintf(_x('%1$s&ndash;%2$s', 'Price range: from-to', 'woocommerce'), wc_price($this->get_composite_price('min', true)), wc_price($this->get_composite_price('max', true)));
                 } else {
                     $price = wc_price($this->get_composite_price('min', true));
                 }
                 if ($this->min_composite_regular_price > $this->min_composite_price) {
                     if ($this->min_composite_regular_price !== $this->max_composite_regular_price) {
                         $regular_price = sprintf(_x('%1$s&ndash;%2$s', 'Price range: from-to', 'woocommerce'), wc_price($this->get_composite_regular_price('min', true)), wc_price($this->get_composite_regular_price('max', true)));
                     } else {
                         $regular_price = wc_price($this->get_composite_regular_price('min', true));
                     }
                     $price = apply_filters('woocommerce_composite_sale_price_html', $this->get_price_html_from_to($regular_price, $price) . $this->get_price_suffix(), $this);
                 } elseif ($this->min_composite_price === 0 && $this->max_composite_price === 0) {
                     $free_string = apply_filters('woocommerce_composite_show_free_string', false, $this) ? __('Free!', 'woocommerce') : $price;
                     $price = apply_filters('woocommerce_composite_free_price_html', $free_string, $this);
                 } else {
                     $price = apply_filters('woocommerce_composite_price_html', $price . $this->get_price_suffix(), $this);
                 }
             }
         }
         return apply_filters('woocommerce_get_price_html', $price, $this);
     } else {
         return parent::get_price_html();
     }
 }
开发者ID:alexbaron50,项目名称:Rockk3rs-Lab-Test,代码行数:64,代码来源:class-wc-product-composite.php

示例13: update

 /**
  * Update content block
  * 
  * @param array of update value
  * 
  * @return array of update block
  */
 function update($params = array())
 {
     // Default values
     $defaults = array('post_id' => false, 'block_id' => false, 'mode' => false, 'properties' => false);
     // Parse args
     $params = wp_parse_args($params, $defaults);
     extract($params, EXTR_SKIP);
     // Check minimum requirement parameter
     if (!$post_id || !$block_id || !$mode || !$properties) {
         return false;
     }
     // Get current value
     $blocks = get_post_meta($post_id, '_wcng_blocks', true);
     // If blocks 'is' still empty
     if (!$blocks) {
         $blocks = array();
     }
     // Update blocks value
     $allow_args = array('product_id', 'text', 'image', 'link');
     $properties = (array) $properties;
     foreach ($properties as $arg_key => $arg) {
         if (in_array($arg_key, $allow_args)) {
             switch ($arg_key) {
                 case 'product_id':
                     $product_id = intval($arg);
                     $product_image_size = $properties['product_image_size'];
                     if ($product_id) {
                         $blocks[$block_id][$mode][$arg_key] = $product_id;
                         // Populate and store the product data
                         $blocks[$block_id][$mode]['title'] = get_the_title($product_id);
                         $blocks[$block_id][$mode]['permalink'] = get_permalink($product_id);
                         // Get the price
                         $wc_product = new WC_Product($product_id);
                         $blocks[$block_id][$mode]['price'] = strip_tags($wc_product->get_price_html());
                         // Get the thumbnail, if there's any
                         $post_thumbnail_id = get_post_thumbnail_id($product_id);
                         if ($post_thumbnail_id) {
                             $attachment_src = wp_get_attachment_image_src($post_thumbnail_id, $product_image_size);
                             // Check for image existence
                             if (isset($attachment_src[0])) {
                                 $image = $attachment_src[0];
                             } else {
                                 $image = WC_NEWSLETTER_GENERATOR_URL . 'assets/default-product-image.png';
                             }
                         } else {
                             $image = WC_NEWSLETTER_GENERATOR_URL . 'assets/default-product-image.png';
                         }
                         $blocks[$block_id][$mode]['image'] = $image;
                     }
                     break;
                 default:
                     $blocks[$block_id][$mode][$arg_key] = sanitize_text_field($arg);
                     break;
             }
         }
     }
     // Save the blocks value
     update_post_meta($post_id, '_wcng_blocks', $blocks);
     // Get the updated postmeta
     $new_blocks = get_post_meta($post_id, '_wcng_blocks', true);
     return $new_blocks[$block_id][$mode];
 }
开发者ID:gregoriopellegrino,项目名称:woocommerce-newsletter-generator,代码行数:69,代码来源:class-wc-newsletter-generator-ajax.php

示例14: array

 function woocommerce_products_live_search()
 {
     if (isset($_REQUEST['fn']) && 'get_ajax_search' == $_REQUEST['fn']) {
         $query_args = array('posts_per_page' => 10, 'no_found_rows' => true, 'post_type' => 'product');
         if (isset($_REQUEST['terms'])) {
             $query_args['s'] = $_REQUEST['terms'];
         }
         $search_query = new WP_Query($query_args);
         $results = array();
         if ($search_query->get_posts()) {
             foreach ($search_query->get_posts() as $the_post) {
                 $title = get_the_title($the_post->ID);
                 if (has_post_thumbnail($the_post->ID)) {
                     $post_thumbnail_ID = get_post_thumbnail_id($the_post->ID);
                     $post_thumbnail_src = wp_get_attachment_image_src($post_thumbnail_ID, 'thumbnail');
                 } else {
                     $dimensions = wc_get_image_size('thumbnail');
                     $post_thumbnail_src = array(wc_placeholder_img_src(), esc_attr($dimensions['width']), esc_attr($dimensions['height']));
                 }
                 $product = new WC_Product($the_post->ID);
                 $price = $product->get_price_html();
                 $brand = woocommerce_show_brand($the_post->ID, true);
                 $title = html_entity_decode($title, ENT_QUOTES, 'UTF-8');
                 $results[] = array('value' => $title, 'url' => get_permalink($the_post->ID), 'tokens' => explode(' ', $title), 'image' => $post_thumbnail_src[0], 'price' => $price, 'brand' => $brand);
             }
         } else {
             $results[] = __('Sorry. No results match your search.', 'media_center');
         }
         wp_reset_postdata();
         echo json_encode($results);
     }
     die;
 }
开发者ID:Qualitair,项目名称:ecommerce,代码行数:33,代码来源:functions.php

示例15:

                                <?php 
        the_title(sprintf('<h4><a href="%s" rel="bookmark">', esc_url(get_permalink())), '</a></h4>');
        ?>
                                
                                <div class="eone-product-content-description">
                                    <?php 
        the_excerpt();
        ?>
                                </div><!-- .eone-product-content-description -->
                                
                            </div><!-- .eone-product-content --> 
                            
                            <div class="eone-product-price">
                                    <?php 
        $ecom_product = new WC_Product(get_the_ID());
        $ecom_price = $ecom_product->get_price_html();
        if ($ecom_price) {
            echo '<p><span>' . $ecom_price . '</span></p>';
        }
        ?>
                	
                            </div><!-- .eone-product-price -->
                            
                            <div class="eone-product-buy">
                            
                                <span><a href="<?php 
        echo esc_url(get_permalink());
        ?>
">
                                	<?php 
        if (of_get_option('eone_latest_section_buy_text')) {
开发者ID:kol4ak,项目名称:autoiservice,代码行数:31,代码来源:index-eone.php


注:本文中的WC_Product::get_price_html方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。