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

1-  تابع woocommerce_product_archive_description:

این تابع توضیحات صفحه فروشگاه را در صفحه آرشیو محصولات نشان می دهد. جایی که این تابع تعریف شده است در مسیر woocommerce/includes/wc-template-functions.php می باشد.  ( در خط 490 تا 501 به شکل زیر: )

function woocommerce_product_archive_description() {
  if ( is_post_type_archive( 'product' ) && get_query_var( 'paged' ) == 0 ) {
     $shop_page   = get_post( wc_get_page_id( 'shop' ) );
        if ( $shop_page ) {
            $description = apply_filters( 'the_content', $shop_page->post_content );
                  if ( $description ) {
                    echo '<div class="page-description">' . $description . '</div>';
               }
           }
       }
    }
 }

 

این تابع دارای پارامتر خاصی نمی باشد

 

2- تابع woocommerce_taxonomy_archive_description:

این تابع توضیحات آرشیو را در صفحه بایگانی دسته بندی های محصول نمایش می دهد. جایی که این تابع تعریف شده است در مسیر woocommerce/includes/wc-template-functions.php است. ( در خط 472 تا 480 به شکل زیر: )

function woocommerce_taxonomy_archive_description() {
  if ( is_tax( array( 'product_cat', 'product_tag' ) ) && get_query_var( 'paged' ) == 0 ) {
      $description = apply_filters( 'the_content', term_description() );
          if ( $description ) {
             echo '<div class="term-description">' . $description . '</div>';
         }
      }
   }
}

این تابع نیز پارامتری ندارد.

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

موفق باشید

13 دیدگاه برای “معرفی توابع آرشیو ووکامرس

  • مینا
    - ۱۶ مرداد , ۱۳۹۳

    سلام الناز جون
    من یه فروشگاه با وو کامرس پیاده سازی کردم
    میخوام وقتی مشتری دکمه اضافه به سبد خرید رو زد یه پاپ آپ باز شه براش که لیست همه کالا هایی که تا الان به سبدش اضافه کرده رو نمایش بده و ازش بپرسه که میخواد به خریدش ادامه بده یا تسویه حساب کنه.
    تو نت که گشتم چندتا لینک مرتبط دیدم که یکیش اینه
    http://stackoverflow.com/questions/16948868/woocommerce-refresh-a-add-to-cart-popup-div
    اما نمیدونم این قطعه کدهایی که گفته رو کجا باید اضافه کنم.
    اون اسکریپتی که گفته رو تو کدوم یکی از فایل های جاوا اسکریپتی بزارم؟ و اون کدهای php رو فقط گفته تو چوشه add to cart . اما تو اون پوشه چهارتا فایل php هست.
    اصلا این لینک همونی هیت که میخوام؟ جواب میگیرم ازش؟
    میشه کمک کنی؟ 🙁

  • web developer
    - ۱۸ مرداد , ۱۳۹۳

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

    • الناز بیک زاده
      - ۱۸ مرداد , ۱۳۹۳

      سلام. دوست عزیز. چقدر عالی موفق باشید
      چشم حتما به زودی بخشی از سایت رو به آموزش طراحی قالب اختصاص می دم

  • مینا
    - ۱۹ مرداد , ۱۳۹۳

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

  • Ghost
    - ۱۹ مرداد , ۱۳۹۳

    ممنون برای آموزش.
    آیا برای نمایش reviews هر محصول در صفحه محصولات تابعی هست ؟

    • الناز بیک زاده
      - ۲۰ مرداد , ۱۳۹۳

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

  • mina
    - ۱۲ آذر , ۱۳۹۳

    سلام میشه در موردتمینگ ووکامرس هم مطلب بذارید ممنون

    • الناز بیک زاده
      - ۱۲ آذر , ۱۳۹۳

      سلام. بله حتما مقاله ای در این خصوص آماده میکنم

  • محمد
    - ۱۱ دی , ۱۳۹۳

    سلام تشکر بخاطر سایت خوبتون ، چطور میشه قیمت یک محصول رو در ووکامرس بدست اورد یاتابع مربوط به اون چیه
    تشکر

  • طراحی سایت
    - ۱ شهریور , ۱۳۹۶

    سلام خیلی وقت گذشته توابع حرفه ای معرفی نکردین….

  • مصطفی
    - ۱۶ بهمن , ۱۳۹۹

    سلام استاد خسته نباشید,من میخواستم داخل سایتم حراج زمانبندی شده داشته باشم دقیقا مثل قسمت پیشنهاد شگفت انگیز سایت دیجیکالا تابع شم پیدا کردم تابع:wc_scheduled_sales();
    هستش ولی نمیدونم باید چه طور از این تابع استفاده کنم.داخل بعضی از سایت ها مثل:
    https://rapidcode.ir/4813/wc_scheduled_sales/comment-page-1/#comment-592
    http://hookr.io/functions/wc_scheduled_sales/
    مطلبی هست ولی در مورد نحوه جایگذاری کد هاشون توضیح خوبی ندادن میشه کمکم کنید,من به این تابع خیلی نیاز دارم

  • مصطفی
    - ۲۴ بهمن , ۱۳۹۹

    سلام استاد,من در سایت فروشگاهیم که با ووکامرس است یک اسلایدر طراحی کردم که داخل اسلایدر میخوام محصولامو با زمان بندی خاص حراج کنم ولی نمیدونم چرا داخل queryکه زدم فقط زمان بندی فروش یکی از محصولامو نمایش میده,هر چی تلاش میکنم زمان بندی محصولای دیگمو نشون بده این کارو نمیکنه,در واقع مشکل اصلی من اینه که زمانبندی فروش داخل حلقه نمیره در بیرون اسلایدر هم حلقه زدم ولی در داخل حلقه هم فقط در یکی از محصولات زمان بندی فروش می اید.واقعا منوکلافه کرده اگر میشه کمکم کنید.اینم کد حلقه هستش:
    ۷,’post_id’=>’$mostafa’, ‘post_type’=>’product’ );

    $myposts = get_posts( $args );

    foreach( $myposts as $post ) : setup_postdata($post); ?>
    get_id(), ‘_sale_price_dates_to’, true );

    if ( ! empty( $sale_date ) ) {
    ?>

    // Set the date we’re counting down to
    var countDownDate = * 1000;

    // Update the count down every 1 second
    var x = setInterval(function() {
    // Get today’s date and time
    var now = new Date().getTime();

    // Find the distance between now and the count down date
    var distance = countDownDate – now;

    // Time calculations for days, hours, minutes and seconds
    var days = Math.floor(distance / (1000 * 60 * 60 * 24));
    var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
    var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
    var seconds = Math.floor((distance % (1000 * 60)) / 1000);

    // Output the result in an element with id=”saleend”
    document.getElementById(“saleend”).innerHTML = days + “d ” + hours + “h ” + minutes + “m ” + seconds + “s “;

    // If the count down is over, write some text
    if (distance < 0) {
    clearInterval(x);
    document.getElementById("saleend").innerHTML = "The sale for this product has EXPIRED";
    }
    }, ۱۰۰۰);

دیدگاه خود را بیان کنید

نشانی ایمیل شما منتشر نخواهد شد.

-- بارگیری کد امنیتی --