رفتن به مطلب

آموزشی، نمایش یک پیام در صفحه محصول برای کسانی که خرید کردهاند


مهدی

پست های پیشنهاد شده

سلام

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

برای این‌کار می‌بایست از فانکشن wc_customer_bought_product استفاده کرد.

کد ما به این صورت میشه

function itl_display_note_buyers() {
    global $product;
    $current_user = wp_get_current_user();

    if ( wc_customer_bought_product( $current_user->email, $current_user->ID, $product->id ) ) {
        _e( 'your message', 'text-domain' );
    }
};

(این کد رو در فایل functions.php قالب قرار می‌گیره)

قرار هست پیام مد نظرمون رو در صفحه تک محصول نمایش بدیم، اگر از پوشه افزونه ووکامرس به قسمت templates برید و content-single-product.php باز کنید

می‌بینید هوک نمایش دهنده اطلاعات اصلی محصول این هست woocommerce_single_product_summary 

حالا می‌خوایم پیام خودمون رو قبل از گزینه افزودن به سبد خرید نمایش بدیم، در نهایت کد ما به این صورت میشه

function itl_display_note_buyers() {
    global $product;
    $current_user = wp_get_current_user();

    if ( wc_customer_bought_product( $current_user->email, $current_user->ID, $product->id ) ) {
        _e( 'your message', 'text-domain' );
    }
};
add_action( 'woocommerce_single_product_summary', 'itl_display_note_buyers', 29 );

امیدوارد مفید بوده باشه (:

اگر سوالی بود می‌تونید در همین پست مطرح کنید

لینک به ارسال

سلام

ممنون بابت آموزش

یعنی ما کد

 

function itl_display_note_buyers() {
    global $product;
    $current_user = wp_get_current_user();

    if ( wc_customer_bought_product( $current_user->email, $current_user->ID, $product->id ) ) {
        _e( 'your message', 'text-domain' );
    }
};
add_action( 'woocommerce_single_product_summary', 'itl_display_note_buyers', 29 );

رو باید قبل از کد

 

<?php
			/**
			 * woocommerce_single_product_summary hook.
			 *
			 * @hooked woocommerce_template_single_title - 5
			 * @hooked woocommerce_template_single_rating - 10
			 * @hooked woocommerce_template_single_price - 10
			 * @hooked woocommerce_template_single_excerpt - 20
			 * @hooked woocommerce_template_single_add_to_cart - 30
			 * @hooked woocommerce_template_single_meta - 40
			 * @hooked woocommerce_template_single_sharing - 50
			 */
			do_action( 'woocommerce_single_product_summary' );
		?>

قرار بدیم .

درسته ؟؟؟
و ب جای عبارت "your message" متن مورد نظرمون رو قرار بدیم ؟؟
 

عبارت "text-domain" برای چی هست ؟؟

لینک به ارسال
در در 10/19/2016 at 11:06، مهدی گفته است :

(این کد رو در فایل functions.php قالب قرار می‌گیره)

شما فایل ووکامرس رو نیاز نیست تغییر بدید

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

و ب جای عبارت "your message" متن مورد نظرمون رو قرار بدیم ؟؟

بله

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

عبارت "text-domain" برای چی هست ؟؟

جهت ترجمه متن مورد نظرتون هست

توضیحات بیشتر

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

شما فایل ووکامرس رو نیاز نیست تغییر بدید

بله

جهت ترجمه متن مورد نظرتون هست

توضیحات بیشتر

سلام

شرمنده من مجدد مزاحم شدم .

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

امکانش هست راهنمایی بفرمایید ؟

لینک به ارسال
در در 10/19/2016 at 11:06، مهدی گفته است :

قرار هست پیام مد نظرمون رو در صفحه تک محصول نمایش بدیم، اگر از پوشه افزونه ووکامرس به قسمت templates برید و content-single-product.php باز کنید

می‌بینید هوک نمایش دهنده اطلاعات اصلی محصول این هست woocommerce_single_product_summary 

اگر قالبتون، از قالب‌های آماده هست احتمالش هست نویسنده قالب این هوک رو حذف کرده باشه

شما می‌تونید در فایل ذکر شده به صورت دستی این تغییر رو اعمال کنید

در فایل مورد نظرتون این کد رو اضافه کنید

global $product;
    $current_user = wp_get_current_user();

    if ( wc_customer_bought_product( $current_user->email, $current_user->ID, $product->id ) ) {
        _e( 'your message', 'text-domain' );
    }

 

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

اگر قالبتون، از قالب‌های آماده هست احتمالش هست نویسنده قالب این هوک رو حذف کرده باشه

شما می‌تونید در فایل ذکر شده به صورت دستی این تغییر رو اعمال کنید

در فایل مورد نظرتون این کد رو اضافه کنید


global $product;
    $current_user = wp_get_current_user();

    if ( wc_customer_bought_product( $current_user->email, $current_user->ID, $product->id ) ) {
        _e( 'your message', 'text-domain' );
    }

 

سلام

قالبم انفولده

اون هوکهایی ک تو پست اول اورده بودین ، تو فایل content-single-product.php  هست .

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

ک نشد .

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...