• اطلاعیه ها

    • Morteza

      باهم بسازیم: اطلس ووکامرس و وردپرس   14/07/96

      تاپیک ایجاد شده برای بحث در جهت ایجاد یک منبع، ویکی، صفحات توضیحی و یا بخش آموزشی جامع برای وردپرس و متعلقات مختلف آن است. لطفا جهت مشارکت در این بحث، ارائه پیشنهاد و یا انتقاد به تاپیک فوق مراجعه کنید. باهم بسازیم: اطلس ووکامرس و وردپرس
maraljoon

کوئری نمایش محصولات ووکامرس بر اساس امتیاز

55 پست در این موضوع قرار دارد

سلام دوستان..

خیلی سعی کردم برای این موضوع تاپیک نزنم. ولی هرچقدر بیشتر میگردم کمتر پیداش میکنم.

چطور میشه پر امتیاز ترین محصولات ووکامرس رو نمایش داد.

توی کوئری از این استفاده کردم. ولی جواب نگرفتم.. شایدم اشتباس این راهی که رفتم

$arms = array(
                'post_type' => 'product',
                'posts_per_page' => '12',
                'offset' => 0,
                'order' => 'DESC',
                'post_status' => 'publish',
                'meta_key' => 'rating',
                'orderby' => 'meta_value_num',
 
            );

تو صفحه مستندات خود ووکامرس هم که پیدا کردن یه موضوع کار خیلی سختیه. من که اصلا از شیوه راهنماییاشون سر در نمیارم.

انگار دارن با اسم رمز حرف میزنن :D

ممنون میشم راهنماییم کنید.

0

به اشتراک گذاری این پست


لینک به پست

سلام

 

اگر پست تایپ ووکامرس اسمش product باشه و امتیاز محصولات توی یه متایی به اسم rating ریخته شده باشه آرگومان WP_Query تقریبا همین میشه که گفتید.

$args = array(
	'post_type' => 'product',
	'posts_per_page' => 10,
	'post_status' => 'publish',
	'meta_key' => 'rating',
	'orderby' => 'meta_value_num'
);

$query = new WP_Query($args);

 

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

در 20 دقیقه قبل، mehran-b گفته است :

..

سلام و دورد به شما.. :)

امتیاز محصول همون امتیاز پیشفرض خودشه که موقع نظر دادن تو صفحه محصول هست و میشه امتیاز داد. چطور باید بفهمم متاش همینه یا نه؟

ویرایش شده در توسط maraljoon
0

به اشتراک گذاری این پست


لینک به پست
در 11 دقیقه قبل، maraljoon گفته است :

سلام و دورد به شما.. :)

امتیاز محصول همون امتیاز پیشفرض خودشه که موقع نظر دادن تو صفحه محصول هست و میشه امتیاز داد. چطور باید بفهمم متاش همینه یا نه؟

والا اینو دیگه باید از توی دیتابیس ببینید چون از روی کدها خیلی سخته پیدا کردن اسم کاستوم فیلدی که امتیاز توش ذخیره میشه.

0

به اشتراک گذاری این پست


لینک به پست
در 4 ساعت قبل، mehran-b گفته است :

والا اینو دیگه باید از توی دیتابیس ببینید چون از روی کدها خیلی سخته پیدا کردن اسم کاستوم فیلدی که امتیاز توش ذخیره میشه.

ممنونم.. واقعیتش فعلا دسترسی به دیتابیس ندارم.

0

به اشتراک گذاری این پست


لینک به پست
در 3 ساعت قبل، مهدی گفته است :

تشکر. قبلا یکبار اینو تست کرده بودم. در واقع فکر کنم همون ویجتی هست که برای پر امتیاز ترین ها استفاده میشه.

ولی خب نمیدونم چطور شخصی سازیش کنم.

متاش رو همونطور که جناب mehran-b گفتن اگه درستش باشه باید جواب بده. من تو این لینکی که دادین از متایی که برای امتیاز بود استفاده کردم تو حلقه ولی پر امتیاز ترین رو نمایش نمیده.

کدم اینه:


<?php
		    $args = array(
	'post_type' => 'product',
	'posts_per_page' => 10,
	'post_status' => 'publish',
	'meta_key' => '_wc_average_rating',
	'orderby' => 'meta_value_num' );
		    $loop = new WP_Query( $args );
		    while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>
				   <div class="col-xs-12 col-sm-6 col-md-4">
					  <div class="box">  <a id="id-<?php the_id(); ?>" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
		 <?php if (has_post_thumbnail( $loop->post->ID )) echo get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); else echo '<img src="'.woocommerce_placeholder_img_src().'" alt="Placeholder" width="65px" height="115px" />'; ?>  </a>
						    

<section class="pro-box">
                            <a class="title10" href="<?php the_permalink(); ?>">
                                <h3 class="posttitle"><?php the_title(); ?></h3>
                            </a>
                            <div class="shop-tool">
                             <div class="prices"><div class="worth"><?php woocommerce_template_loop_price() ?></div>
                             <span class="tm"> هزار تومان </span>
                             </div>
                             <div class="num-pur">
                            <div class="val-pur"> <?php global $product;
                            $units_sold = get_post_meta( $product->id, 'total_sales', true );
                            echo ''. sprintf( __( '%s', 'woocommerce' ), $units_sold ).''; ?> </div>
                            <span class="pur"> خرید </span>

        </div>
                            </div>
                            <div class="describe">
                                <?php the_content_rss('', TRUE, '', 32); ?>  
                                
                            </div>
                            </section>
<a href="<?php the_permalink(); ?>" class="continue"> اطلاعات بیشتر </a>
                            </div>
                    



  </div>
				   
	    <?php endwhile; ?>
	    <?php wp_reset_query(); ?>

 

0

به اشتراک گذاری این پست


لینک به پست

درود مجدد

 

یه سوال برام پیش اومد این امتیاز رو به کامنت های محصولات میدن یا به خود محصول؟

چون من تا به حال محیط ووکامرس هم حتی ندیدم.

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

در 1 ساعت قبل، mehran-b گفته است :

درود مجدد

 

یه سوال برام پیش اومد این امتیاز رو به کامنت های محصولات میدن یا به خود محصول؟

چون من تا به حال محیط ووکامرس هم حتی ندیدم.

فکر میکنم به خود محصول. موقعی که کاربر بخواد کامنت بذاره امتیاز محصول رو هم ثبت میکنه. امتیاز برای خود محصول ثبت میشه نه تک تک محصولات.

بابت اون موضوع پر امتیاز ترین با همون کد جواب گرفتم.

دارم این کد هارو توی یه اسلایدر کاروسل بوتسترپ بصورت مولتی آیتم استفاده میکنم. یه سری کد برای مولتی آیتم پیدا کردم که چندتا محصول رو توی هر آیتم اسلایدر نمایش بده ولی بعضی قسمت های کد رو اصلا نمیفهمم.

کد اینه:

<!-- Carousel -->
<div id="promo-carousel" class="carousel slide" data-ride="carousel">

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">

    <?php
    // Item size (set here the number of posts for each group)
    $i = 4; 

    // Set the arguments for the query
    global $post; 
    $args = array(
	'post_type' => 'product',
	'posts_per_page' => 10,
	'post_status' => 'publish',
	'meta_key' => '_wc_average_rating',
	'orderby' => 'meta_value_num'
);

$query = new WP_Query($args);

    // Get the posts
    $myposts = get_posts($args);

    // If there are posts
    if($myposts):

      // Groups the posts in groups of $i
      $chunks = array_chunk($myposts, $i);
      $html = "";

      /*
       * Item
       * For each group (chunk) it generates an item
       */
      foreach($chunks as $chunk):
        // Sets as 'active' the first item
        ($chunk === reset($chunks)) ? $active = "active" : $active = "";
        $html .= '<div class="item '.$active.'"><div class="container"><div class="row">';
  
        /*
         * Posts inside the current Item
         * For each item it generates the posts HTML
         */
        foreach($chunk as $post):
          $html .= '<div class="col-xs-12 col-sm-6 col-md-3 col-lg-3">';
		  
          $html .= get_the_title($post->ID);
		  $html .= '</a>';
          $html .= '</div>';
        endforeach;

        $html .= '</div></div></div>';	

      endforeach;

      // Prints the HTML
      echo $html;

    endif;
    ?>

  </div> <!-- carousel inner -->


  <!-- Controls -->
  <a class="left carousel-control" href="#promo-carousel" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#promo-carousel" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>


</div> <!-- /carousel -->

مخصوصا با این  $html = ""; قسمت ها نمیتونم اصلا کار کنم. اینکه مثلا چطوری get permalink اضافه کنم. چطور thumbnail  استفاده کنم توش.

یا اینکه چطور میشه از این مولتی آیتم carousel بوتسترپ توی کوئری زیر استفاده کرد؟؟

<?php
		    $args = array(
	'post_type' => 'product',
	'posts_per_page' => 10,
	'post_status' => 'publish',
	'meta_key' => '_wc_average_rating',
	'orderby' => 'meta_value_num' );
		    $loop = new WP_Query( $args );
		    while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>
				   <div class="col-xs-12 col-sm-6 col-md-4">
					  <div class="box">  <a id="id-<?php the_id(); ?>" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
		 <?php if (has_post_thumbnail( $loop->post->ID )) echo get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); else echo '<img src="'.woocommerce_placeholder_img_src().'" alt="Placeholder" width="65px" height="115px" />'; ?>  </a>
						    

<section class="pro-box">
                            <a class="title10" href="<?php the_permalink(); ?>">
                                <h3 class="posttitle"><?php the_title(); ?></h3>
                            </a>
                            <div class="shop-tool">
                             <div class="prices"><div class="worth"><?php woocommerce_template_loop_price() ?></div>
                             <span class="tm"> هزار تومان </span>
                             </div>
                             <div class="num-pur">
                            <div class="val-pur"> <?php global $product;
                            $units_sold = get_post_meta( $product->id, 'total_sales', true );
                            echo ''. sprintf( __( '%s', 'woocommerce' ), $units_sold ).''; ?> </div>
                            <span class="pur"> خرید </span>



<?php 
/*-----Source: http://stackoverflow.com/questions/14227121/how-do-you-add-the-star-ratings-for-products-in-woocommerce---*/
add_action('woocommerce_after_shop_loop_item', 'get_star_rating' );
function get_star_rating()
{
    global $woocommerce, $product;
    $average = $product->get_average_rating();
    echo '<div class="star-rating"><span style="width:'.( ( $average / 5 ) * 100 ) . '%"><strong itemprop="ratingValue" class="rating">'.$average.'</strong> '.__( 'out of 5', 'woocommerce' ).'</span></div>';
}
?>
        </div>
                            </div>
                            <div class="describe">
                                <?php the_content_rss('', TRUE, '', 32); ?>  
                                
                            </div>
                            </section>
<a href="<?php the_permalink(); ?>" class="continue"> اطلاعات بیشتر </a>
                            </div>
                    



  </div>
				   
	    <?php endwhile; ?>
	    <?php wp_reset_query(); ?>

 

ویرایش شده در توسط maraljoon
0

به اشتراک گذاری این پست


لینک به پست

به کمک این کدهای آخری به خوبی محصولات پر امتیازرو نمایش میده.

ولی با کد قبلیش که این پاییندوباره آوردمش محصولات پر امتیاز رو نمایش نمیده. نمیدونم بر چه اساسی ولی کلی از محصولات رو نمایش میده

 

در 12 ساعت قبل، maraljoon گفته است :

<!-- Carousel -->
<div id="promo-carousel" class="carousel slide" data-ride="carousel">

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">

    <?php
    // Item size (set here the number of posts for each group)
    $i = 4; 

    // Set the arguments for the query
    global $post; 
    $args = array(
	'post_type' => 'product',
	'posts_per_page' => 10,
	'post_status' => 'publish',
	'meta_key' => '_wc_average_rating',
	'orderby' => 'meta_value_num'
);

$query = new WP_Query($args);

    // Get the posts
    $myposts = get_posts($args);

    // If there are posts
    if($myposts):

      // Groups the posts in groups of $i
      $chunks = array_chunk($myposts, $i);
      $html = "";

      /*
       * Item
       * For each group (chunk) it generates an item
       */
      foreach($chunks as $chunk):
        // Sets as 'active' the first item
        ($chunk === reset($chunks)) ? $active = "active" : $active = "";
        $html .= '<div class="item '.$active.'"><div class="container"><div class="row">';
  
        /*
         * Posts inside the current Item
         * For each item it generates the posts HTML
         */
        foreach($chunk as $post):
          $html .= '<div class="col-xs-12 col-sm-6 col-md-3 col-lg-3">';
		  
          $html .= get_the_title($post->ID);
		  $html .= '</a>';
          $html .= '</div>';
        endforeach;

        $html .= '</div></div></div>';	

      endforeach;

      // Prints the HTML
      echo $html;

    endif;
    ?>

  </div> <!-- carousel inner -->


  <!-- Controls -->
  <a class="left carousel-control" href="#promo-carousel" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#promo-carousel" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>


</div> <!-- /carousel -->

 

 

اگه کسی از این کدهای چیزی متوجه میشه منو از سردرگمی در بیاره. اصلا نمیفهممش

0

به اشتراک گذاری این پست


لینک به پست
در ۱ ساعت قبل، maraljoon گفته است :

به کمک این کدهای آخری به خوبی محصولات پر امتیازرو نمایش میده.

ولی با کد قبلیش که این پاییندوباره آوردمش محصولات پر امتیاز رو نمایش نمیده. نمیدونم بر چه اساسی ولی کلی از محصولات رو نمایش میده

 

اگه کسی از این کدهای چیزی متوجه میشه منو از سردرگمی در بیاره. اصلا نمیفهممش

سلام 

تو کدوم قسمت این کد مشکل دارین؟اصلا جواب نمیده؟

 

 

0

به اشتراک گذاری این پست


لینک به پست

ببینید من الان خروجی رو به این شکل دارم:

 

59ccbdde7c01d_ScreenShot2017-09-28at12_48_52.thumb.png.10fbf9c6570b45c0f947f78a7f66263d.png

 

 

چند مورد هست که باید تو استفاده از کد رعایت کنید:

  1. چون کد فوق با فریم ورک بوت استرپ نوشته شده لازم هست که قبل از هر کاری فایل های بوت استرپ از جمله bootstrap.min.css و bootstrap.min.js رو به پروژه ادد کنید تا کلاس هایی که داده شده تو کدهای html بخوبی قابل خواندن باشن.
  2. چون این بخش با Carousel کار میکنه علاوه بر فایل های بوت استرپ نیاز هست که فایل jquery.min.js رو هم ادد کنید به پروژه
  3. فلش هایی که در سمت چپ و راست Carousel قرار دارن از فونت Glyphicon  استفاده شده باید این نوع فونت رو به پروژه ادد کنید.
  4. برای اینکه تصاویر هر محصول رو هم داخل اسلایدر داشته باشید باید از  کد اصلاح شده که در زیر براتون قرار میدم استفاده کنید.
		      <!-- Carousel -->
<div id="promo-carousel" class="carousel slide" data-ride="carousel">

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">

    <?php
    // Item size (set here the number of posts for each group)
    $i = 4; 

    // Set the arguments for the query
    global $post; 
    $args = array(
  'post_type' => 'product',
  'posts_per_page' => 10,
  'post_status' => 'publish',
  'meta_key' => '_wc_average_rating',
  'orderby' => 'meta_value_num'
);

$query = new WP_Query($args);

    // Get the posts
    $myposts = get_posts($args);

    // If there are posts
    if($myposts):

      // Groups the posts in groups of $i
      $chunks = array_chunk($myposts, $i);
      $html = "";

      /*
       * Item
       * For each group (chunk) it generates an item
       */
      foreach($chunks as $chunk):
        // Sets as 'active' the first item
        ($chunk === reset($chunks)) ? $active = "active" : $active = "";
        $html .= '<div class="item '.$active.'"><div class="container"><div class="row">';
  
        /*
         * Posts inside the current Item
         * For each item it generates the posts HTML
         */
        foreach($chunk as $post):
          $html .= '<div class="col-xs-12 col-sm-6 col-md-3 col-lg-3">';
          $html .= get_the_post_thumbnail(); 
          $html .= get_the_title($post->ID);
      $html .= '</a>';
          $html .= '</div>';
        endforeach;

        $html .= '</div></div></div>';  

      endforeach;

      // Prints the HTML
      echo $html;

    endif;
    ?>

  </div> <!-- carousel inner -->


  <!-- Controls -->
  <a class="left carousel-control" href="#promo-carousel" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#promo-carousel" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>


</div> <!-- /carousel -->

 

 

موفق باشید...

0

به اشتراک گذاری این پست


لینک به پست
در 33 دقیقه قبل، m4xs051 گفته است :

سلام 

تو کدوم قسمت این کد مشکل دارین؟اصلا جواب نمیده؟

 

 

جواب میده. ولی نمیدونم چرا با اینکه از  :

$args = array(
	'post_type' => 'product',
	'posts_per_page' => 10,
	'post_status' => 'publish',
	'meta_key' => '_wc_average_rating',
	'orderby' => 'meta_value_num'
);

توش استفاده کردم پر امتیاز ترین رو نمایش نمیده. همه محصولات رو میاره

ولی کوئری قبلی خیلی خوب پر امتیاز ترین رو نمایش میده

0

به اشتراک گذاری این پست


لینک به پست
در 2 دقیقه قبل، m4xs051 گفته است :

 

با بوتسترپ مشکلی ندارم. کروسل رو به خوبی نمایش میده. مشکل فقط اینه که پر امتیاز ترین رو نمایش نمیده؟؟

البته یه چیزی هم هست که دلیلش رو نفهمیدم.

من اتفاقی برای یه موضوعی از کد زیر توی کوئری قبلی استفاده کردم و این باعث شد که پر امتیاز ترین رو نمایش بده. نمیدونم چرا؟؟ ولی جواب داد.

این کد رو چطور تو این روش جدید که شما ویرایشش هم کردید استفاده کنم؟

کدش اینه:

<?php 
/*-----Source: http://stackoverflow.com/questions/14227121/how-do-you-add-the-star-ratings-for-products-in-woocommerce---*/
add_action('woocommerce_after_shop_loop_item', 'get_star_rating' );
function get_star_rating()
{
    global $woocommerce, $product;
    $average = $product->get_average_rating();
    echo '<div class="star-rating"><span style="width:'.( ( $average / 5 ) * 100 ) . '%"><strong itemprop="ratingValue" class="rating">'.$average.'</strong> '.__( 'out of 5', 'woocommerce' ).'</span></div>';
}
?>

 

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

اجازه بدید مجدد یه بررسی داشته باشم اگه نتیجه ای گرفتم خدمتتون اعلام میکنم.

ویرایش شده در توسط m4xs051
0

به اشتراک گذاری این پست


لینک به پست
در 11 دقیقه قبل، maraljoon گفته است :

با بوتسترپ مشکلی ندارم. کروسل رو به خوبی نمایش میده. مشکل فقط اینه که پر امتیاز ترین رو نمایش نمیده؟؟

البته یه چیزی هم هست که دلیلش رو نفهمیدم.

من اتفاقی برای یه موضوعی از کد زیر توی کوئری قبلی استفاده کردم و این باعث شد که پر امتیاز ترین رو نمایش بده. نمیدونم چرا؟؟ ولی جواب داد.

این کد رو چطور تو این روش جدید که شما ویرایشش هم کردید استفاده کنم؟

کدش اینه:


<?php 
/*-----Source: http://stackoverflow.com/questions/14227121/how-do-you-add-the-star-ratings-for-products-in-woocommerce---*/
add_action('woocommerce_after_shop_loop_item', 'get_star_rating' );
function get_star_rating()
{
    global $woocommerce, $product;
    $average = $product->get_average_rating();
    echo '<div class="star-rating"><span style="width:'.( ( $average / 5 ) * 100 ) . '%"><strong itemprop="ratingValue" class="rating">'.$average.'</strong> '.__( 'out of 5', 'woocommerce' ).'</span></div>';
}
?>

 

این کد فقط واسه من ۵ تا ستاره چاپ میکنه و هیچ خروجی دیگه رو نمیده.

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

در 1 ساعت قبل، m4xs051 گفته است :

این کد فقط واسه من ۵ تا ستاره چاپ میکنه و هیچ خروجی دیگه رو نمیده.

عجیبه وقتی توی اون حلقه استفادش میکنم ستاره ای چاپ نمیکنه ولی باعث میشه محصولات پر امتیاز رو نمایش بده

از این کد که ستاره رو چاپ میکنه به چه شکل تو کد بالایی استفاده کردین؟؟

ویرایش شده در توسط maraljoon
0

به اشتراک گذاری این پست


لینک به پست
در ۱ ساعت قبل، maraljoon گفته است :

عجیبه وقتی توی اون حلقه استفادش میکنم ستاره ای چاپ نمیکنه ولی باعث میشه محصولات پر امتیاز رو نمایش بده

از این کد که ستاره رو چاپ میکنه به چه شکل تو کد بالایی استفاده کردین؟؟

تو کد بالایی ازش استفاده نکردم
همینطوری تو کدهای صفحه قرار دادم و خروجی ازش گرفتم دیدم خروجی فقط ستاره چاپ میکنه نه چیز دیگه ای.

این کد بالا رو نتونستم مشکلش رو دربیارم که کجا هست.
ولی یه تمپلت دیگه آماده کردم که بخوبی داره کار میکنه. فقط از کتابخونه owl استفاده شده برای ساخت اسلایدر.

یه همچین شکلی داره:
 

59cce99d68469_ScreenShot2017-09-28at15_55_38.thumb.png.e03b3454591a7cd88275b189388aecd6.png

 

البته جای کار زیاد داره و خیلی بیشتر باید روی استایلش کار بشه. چون میخواستم سریع نتیجه بگیرم زیاد روی این موضوع فوکوس نکردم.

اگه تمایل دارید بگید تا نمونه ای که تصویرش رو براتون پیوست کردم رو باید براتون توضیح بدم.
پیش نیازی که این میخواد فقط باید بدونید که چطوری کتابخونه owl کار میکنه و آشنایی ابتدایی برای دستکاری کدهاش رو داشته باشید.

محصولات رو من تست گرفتم بخوبی داره نشون میده و بر اساس ریت های داده شده هست.

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

در 21 دقیقه قبل، m4xs051 گفته است :

 

کتابخونه owl که گفتید چی هست؟

کدی که تست کردید رو اینجا میزارید تست کنم؟؟

ویرایش شده در توسط maraljoon
0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

<style>
    #demos .owl-carousel .item {
        height: 10rem;
        background: #4DC7A0;
        padding: 1rem;
      }
 </style>

<!--  Demos -->
    <section id="demos">
      <div class="row">
        <div class="large-12 columns">
          <div class="owl-carousel owl-theme">
          <?php 
            $args = array(
            'post_type' => 'product',
            'posts_per_page' => 10,
            'post_status' => 'publish',
            'meta_key' => '_wc_average_rating',
            'orderby' => 'meta_value_num'
            );

            $query = new WP_Query($args);

            if($query->have_posts()) :
            while($query->have_posts()) :
            $query->the_post();
            ?>
             <a href="<?php echo the_permalink(); ?>">
                  <div class="item">
                    <?php echo get_the_post_thumbnail(); ?>
                    <div class="wbc-stra"><?php $product = wc_get_product($query->post->ID); echo wc_get_rating_html($product->get_average_rating()); ?></div>
                 </div>
               </a>


            <?php
            endwhile;
            wp_reset_postdata();
            endif;
?>
      </div>

         

          <script>
            $(document).ready(function() {
              var owl = $('.owl-carousel');
              owl.owlCarousel({
                rtl: true,
                margin: 10,
                nav: true,
                loop: true,
                responsive: {
                  0: {
                    items: 1
                  },
                  600: {
                    items: 3
                  },
                  1000: {
                    items: 5
                  }
                }
              })
            })
          </script>
        </div>
      </div>
    </section>
    <!-- vendors -->

 

 

این فایل ها رو پیوست کنید به هدر سایت:

file-include.zip

ویرایش شده در توسط m4xs051
0

به اشتراک گذاری این پست


لینک به پست
در 36 دقیقه قبل، maraljoon گفته است :

کتابخونه owl که گفتید چی هست؟

====> یکی از کتابخانه های قدرتمند  و معروف در زمینه ساخت اسلایدر هست.

 

0

به اشتراک گذاری این پست


لینک به پست
در ۱ ساعت قبل، m4xs051 گفته است :

 

ممنونم..

اسلایدر به درستی برا نمایش داده نمیشه. البته فکر میکنم تداخل استایل وجود داره که رفعش میکنم.

ولی باز هم پر امتیاز هارو نمایش نمیده. حتی بعضی از محصولاتی که اصلا امتیاز ندارن رو هم نمایش میده.

ولی وقتی از اون کد که شما گفتید ستاره چاپ میکنه استفاده میکنم پر امتیاز هارو نمایش میده.

فقط اینکه وقتی اینو استفاده میکنم نمیدونم چه موردی وجود داره که فوتر سایت رو دیگه نمایش نمیده.

البته اون کد رو الان به این صورت تو حلقه استفاده میکنم..محصولات رو نمایش میده ولی فوتر دیگه قابل نمایش نیست.

function get_star_rating()
{
    global $woocommerce, $product;
   
    
}

 

0

به اشتراک گذاری این پست


لینک به پست

سلام

 

شما با کدی که جناب @m4xs051 نتونستید اسلایدر رو درست کنید؟

 

function get_star_rating()
{
    global $woocommerce, $product;
   
    
}

کد بالا رو کجا میذارید؟

0

به اشتراک گذاری این پست


لینک به پست
در 21 دقیقه قبل، mehran-b گفته است :

سلام

 

شما با کدی که جناب @m4xs051 نتونستید اسلایدر رو درست کنید؟

 


function get_star_rating()
{
    global $woocommerce, $product;
   
    
}

کد بالا رو کجا میذارید؟

نه متاسفانه. با اون کد هم مشکل وجود داره. اینکه همه محصولات رو نمایش میده. ولی وقتی کد function get_star_rating() رو مثلا میذارم یه جایی قبل از بسته شدن whill فقط محصولاتی که امتیاز دارن رو نمایش میده.

تو کدهای قبلی هم به همین شکله.

فقط مشکل اینه که وقتی از این کد استفاده میکنم فوتر نمایش داده نمیشه.

0

به اشتراک گذاری این پست


لینک به پست

درود مجدد

 

اون تابع رو با اکشنش منتقل کنید به فایل functions.php بقیه فایل ها جای توابع PHP نیست.

add_action('woocommerce_after_shop_loop_item', 'get_star_rating' );
function get_star_rating()
{
    global $woocommerce, $product;
    $average = $product->get_average_rating();
    echo '<div class="star-rating"><span style="width:'.( ( $average / 5 ) * 100 ) . '%"><strong itemprop="ratingValue" class="rating">'.$average.'</strong> '.__( 'out of 5', 'woocommerce' ).'</span></div>';
}

منظورم کد بالا هست.

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری