پیگیری سفارش در ووکامرس

rostamihonar

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

 

miladjef

کاربر عضو
یک برگه بسازید و داخل برگه شورت کد زیر رو قرار بدید

[woocommerce_order_tracking]

برای فارسی سازی این بخش به قسمت زیر رفته

/wp-content/plugins/woocommerce/templates/order

و فایل form-tracking.phpرو باز کرده و کد زیر رو فارسی کنید


کد:
<p><?php _e( 'To track your order please enter your Order ID in the box below and press the "Track" button. This was given to you on your receipt and in the confirmation email you should have received.', 'woocommerce' ); ?></p>
به یاد داشته باشید از فایل بالا یک پشتیبان داشته باشید

 
آخرین ویرایش توسط مدیر:
  • Like
واکنش‌ها[ی پسندها]: moein921

mr.moradi

تازه وارد
در اينجا به جاي دكمه پيگيري از كلمه " مسير " استفاده شده. چگونه آن را تغيير دهيم (آدرس فايل آن كجاقرارداره)

 

babakp

تازه وارد
سلام

من از کد [woocommerce_order_tracking] استفاده می کنم اما فرمم به صورت زیر میاد :

wq7tg5fq6pa2.jpg


در صورتی که میخوام فرمم به این صورت بیاد که با وارد کردن فقط شناسه سفارش (چه لاگین کرده چه نکرده) وضعیت سفارش که در چه مرحله ای هست برا کاربر نمایش داده شه و ایمیل نخواد.

ممنون

 

مجيد

تازه وارد
سلام

من از کد [woocommerce_order_tracking] استفاده می کنم اما فرمم به صورت زیر میاد :

wq7tg5fq6pa2.jpg


در صورتی که میخوام فرمم به این صورت بیاد که با وارد کردن فقط شناسه سفارش (چه لاگین کرده چه نکرده) وضعیت سفارش که در چه مرحله ای هست برا کاربر نمایش داده شه و ایمیل نخواد.

ممنون
از لینک زیر افزونه رو دانلود کن مشکل حل میشه



 

babakp

تازه وارد
ممنون از شما دوست عزیز.

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

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

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

سوال دومم هم اینه : اگه پلاگینی برا این کار نیست. از چه طریقی میتونم اون کلمه "مسیر" رو تو فرم تغییر بدم ؟

 ممنون از همه دوستان  :wub:

از لینک زیر افزونه رو دانلود کن مشکل حل میشه

 

babakp

تازه وارد
سوال دومم هم اینه : اگه پلاگینی برا این کار نیست. از چه طریقی میتونم اون کلمه "مسیر" رو تو فرم تغییر بدم ؟

 ممنون از همه دوستان  :wub:
اینو با استفاده از حلقه های ترجمه ووکامرس فارسی میشه حلش کرد شکر خدا :) مورد اولو اگه بتونید پلاگین و یا راهی معرفی کنید ممنون میشم :63:

 

moein921

کاربر عضو
سلام من هم دقیقا همین رو میخوام

میخوام کاربر فقط کد رو وارد کنه و دیگه نیازی به ایمیل نباشه

چیکار باید کنم؟
You must be registered for see images attach


 

masoud ashoori

کاربر عضو
سلام من هم دقیقا همین رو میخوام

میخوام کاربر فقط کد رو وارد کنه و دیگه نیازی به ایمیل نباشه

چیکار باید کنم؟
You must be registered for see images attach


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

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

 
آخرین ویرایش توسط مدیر:

moein921

کاربر عضو
ممنون میشم دوستان کمک کنید

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

 

masoud ashoori

کاربر عضو
ممنون میشم دوستان کمک کنید

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

با افزونه woo track order | افزونه پیگیری سفارشات ووکامرس

میتونید این مورد رو پیاده سازی کنید.
موفق باشید :53:

 

moein921

کاربر عضو
ممنون میشم دوستان ووکامرس کار راهنمایی کنند که چطور بدون وارد کردن ایمیل و فقط با شماره پیگیری سفارشات رو بشه پیگیری کرد؟

یعنی کلا بخش ایمیل حذف بشه از صفحه پیگیری

 

masoud ashoori

کاربر عضو
ممنون میشم دوستان ووکامرس کار راهنمایی کنند که چطور بدون وارد کردن ایمیل و فقط با شماره پیگیری سفارشات رو بشه پیگیری کرد؟

یعنی کلا بخش ایمیل حذف بشه از صفحه پیگیری
با سلام

کاربر گرامی خدمتتون عرض شد که از افزونه woo track order | افزونه پیگیری سفارشات ووکامرس استفاده کنید.
این دمو رو مشاهده بفرمایید:


به سه روش به دلخواه کاربر (شماره سفارش، شماره موبایل، ایمیل) کاربر میتونه پیگیری کنه.

موفق باشید

 

moein921

کاربر عضو
ببینید ووکامرس خودش این قابلیت رو داره من فقط میخوام با شماره سفارش باشه نه با ایمیل

یعنی فیلد ایمیل از صفحه پیگیری حذف بشه

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

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

 

moein921

کاربر عضو
ممنون میشم دوستان ووکامرس کار این مشکل رو حل کنند

 

پیام یزدانیان

کاربر عضو
بنام خدا

دوستانی که قصد دارن پیگیری سفارشات با ایدی فاکتور انجام شود ​

فایل  "class-wc-shortcode-order-tracking.php "موجود در مسیر : ​

woocommerce\includes\shortcodes​

را با کدهای زیر که خودم تغییردادم جایگزین کنید .​

<?php
/**
* Order Tracking Shortcode
*
* Lets a user see the status of an order by entering their order details.
*
* @package WooCommerce/Shortcodes/Order_Tracking
* @version 3.0.0
*/

defined( 'ABSPATH' ) || exit;

/**
* Shortcode order tracking class.
*/
class WC_Shortcode_Order_Tracking {

/**
* Get the shortcode content.
*
* @param array $atts Shortcode attributes.
* @return string
*/
public static function get( $atts ) {
return WC_Shortcodes::shortcode_wrapper( array( __CLASS__, 'output' ), $atts );
}

/**
* Output the shortcode.
*
* @param array $atts Shortcode attributes.
*/
public static function output( $atts ) {
// Check cart class is loaded or abort.
if ( is_null( WC()->cart ) ) {
return;
}

$atts = shortcode_atts( array(), $atts, 'woocommerce_order_tracking' );
$nonce_value = wc_get_var( $_REQUEST['woocommerce-order-tracking-nonce'], wc_get_var( $_REQUEST['_wpnonce'], '' ) ); // @codingStandardsIgnoreLine.

if ( isset( $_REQUEST['orderid'] ) && wp_verify_nonce( $nonce_value, 'woocommerce-order_tracking' ) ) { // WPCS: input var ok.

$order_id = empty( $_REQUEST['orderid'] ) ? 0 : ltrim( wc_clean( wp_unslash( $_REQUEST['orderid'] ) ), '#' ); // WPCS: input var ok.


if ( ! $order_id ) {
wc_add_notice( __( 'Please enter a valid order ID', 'woocommerce' ), 'error' );
}

else {
$order = wc_get_order( apply_filters( 'woocommerce_shortcode_order_tracking_order_id', $order_id ) );

if ( $order && $order->get_id() && strtolower( $order->get_id() ) === strtolower( $order_id ) ) {
do_action( 'woocommerce_track_order', $order->get_id() );
wc_get_template(
'order/tracking.php', array(
'order' => $order,
)
);
return;
} else {
wc_add_notice( __( 'Sorry, the order could not be found. Please contact us if you are having difficulty finding your order details.', 'woocommerce' ), 'error' );
}
}
}

wc_print_notices();

wc_get_template( 'order/form-tracking.php' );
}
}






پس از جایگزین کردن این بخش ، 

فایل "form-tracking.php" را با نمونه ای که قرار داده ام جایگزین کنید. 

<?php
/**
* Order tracking form
*
* This template can be overridden by copying it to yourtheme/woocommerce/order/form-tracking.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you
* (the theme developer) will need to copy the new files to your theme to
* maintain compatibility. We try to do this as little as possible, but it does
* happen. When this occurs the version of the template file will be bumped and
* the readme will list any important changes.
*
* @see https://docs.woocommerce.com/document/template-structure/
* @package WooCommerce/Templates
* @version 3.4.0
*/

defined( 'ABSPATH' ) || exit;

global $post;
?>

<form action="<?php echo esc_url( get_permalink( $post->ID ) ); ?>" method="post" class="track_order">

<p><?php esc_html_e( 'To track your order please enter your Order ID in the box below and press the "Track" button. This was given to you on your receipt and in the confirmation email you should have received.', 'woocommerce' ); ?></p>

<p class="form-row form-row-first"><label for="orderid"><?php esc_html_e( 'Order ID', 'woocommerce' ); ?></label> <input class="input-text" type="text" name="orderid" id="orderid" value="<?php echo isset( $_REQUEST['orderid'] ) ? esc_attr( wp_unslash( $_REQUEST['orderid'] ) ) : ''; ?>" placeholder="<?php esc_attr_e( 'Found in your order confirmation email.', 'woocommerce' ); ?>" /></p><?php // @codingStandardsIgnoreLine ?>
<div class="clear"></div>

<p class="form-row"><button type="submit" class="button" name="track" value="<?php esc_attr_e( 'Track', 'woocommerce' ); ?>"><?php esc_html_e( 'Track', 'woocommerce' ); ?></button></p>
<?php wp_nonce_field( 'woocommerce-order_tracking', 'woocommerce-order-tracking-nonce' ); ?>

</form>






میتونید این فایل رو در مسیر قالبتون : 

yourtheme/woocommerce/order/form-tracking.php

بزارید.

اگر کسی خواست کپی کند لطفا منبع را پرشین اسکریپت ذکر کند.​

در پناه حق  یزدانیان​
 

karimian9

تازه وارد
بنام خدا

دوستانی که قصد دارن پیگیری سفارشات با ایدی فاکتور انجام شود ​

فایل  "class-wc-shortcode-order-tracking.php "موجود در مسیر : ​

woocommerce\includes\shortcodes​

را با کدهای زیر که خودم تغییردادم جایگزین کنید .​

<?php
/**
* Order Tracking Shortcode
*
* Lets a user see the status of an order by entering their order details.
*
* @package WooCommerce/Shortcodes/Order_Tracking
* @version 3.0.0
*/

defined( 'ABSPATH' ) || exit;

/**
* Shortcode order tracking class.
*/
class WC_Shortcode_Order_Tracking {

/**
* Get the shortcode content.
*
* @param array $atts Shortcode attributes.
* @return string
*/
public static function get( $atts ) {
return WC_Shortcodes::shortcode_wrapper( array( __CLASS__, 'output' ), $atts );
}

/**
* Output the shortcode.
*
* @param array $atts Shortcode attributes.
*/
public static function output( $atts ) {
// Check cart class is loaded or abort.
if ( is_null( WC()->cart ) ) {
return;
}

$atts = shortcode_atts( array(), $atts, 'woocommerce_order_tracking' );
$nonce_value = wc_get_var( $_REQUEST['woocommerce-order-tracking-nonce'], wc_get_var( $_REQUEST['_wpnonce'], '' ) ); // @codingStandardsIgnoreLine.

if ( isset( $_REQUEST['orderid'] ) && wp_verify_nonce( $nonce_value, 'woocommerce-order_tracking' ) ) { // WPCS: input var ok.

$order_id = empty( $_REQUEST['orderid'] ) ? 0 : ltrim( wc_clean( wp_unslash( $_REQUEST['orderid'] ) ), '#' ); // WPCS: input var ok.


if ( ! $order_id ) {
wc_add_notice( __( 'Please enter a valid order ID', 'woocommerce' ), 'error' );
}

else {
$order = wc_get_order( apply_filters( 'woocommerce_shortcode_order_tracking_order_id', $order_id ) );

if ( $order && $order->get_id() && strtolower( $order->get_id() ) === strtolower( $order_id ) ) {
do_action( 'woocommerce_track_order', $order->get_id() );
wc_get_template(
'order/tracking.php', array(
'order' => $order,
)
);
return;
} else {
wc_add_notice( __( 'Sorry, the order could not be found. Please contact us if you are having difficulty finding your order details.', 'woocommerce' ), 'error' );
}
}
}

wc_print_notices();

wc_get_template( 'order/form-tracking.php' );
}
}






پس از جایگزین کردن این بخش ، 

فایل "form-tracking.php" را با نمونه ای که قرار داده ام جایگزین کنید. 

<?php
/**
* Order tracking form
*
* This template can be overridden by copying it to yourtheme/woocommerce/order/form-tracking.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you
* (the theme developer) will need to copy the new files to your theme to
* maintain compatibility. We try to do this as little as possible, but it does
* happen. When this occurs the version of the template file will be bumped and
* the readme will list any important changes.
*
* @see https://docs.woocommerce.com/document/template-structure/
* @package WooCommerce/Templates
* @version 3.4.0
*/

defined( 'ABSPATH' ) || exit;

global $post;
?>

<form action="<?php echo esc_url( get_permalink( $post->ID ) ); ?>" method="post" class="track_order">

<p><?php esc_html_e( 'To track your order please enter your Order ID in the box below and press the "Track" button. This was given to you on your receipt and in the confirmation email you should have received.', 'woocommerce' ); ?></p>

<p class="form-row form-row-first"><label for="orderid"><?php esc_html_e( 'Order ID', 'woocommerce' ); ?></label> <input class="input-text" type="text" name="orderid" id="orderid" value="<?php echo isset( $_REQUEST['orderid'] ) ? esc_attr( wp_unslash( $_REQUEST['orderid'] ) ) : ''; ?>" placeholder="<?php esc_attr_e( 'Found in your order confirmation email.', 'woocommerce' ); ?>" /></p><?php // @codingStandardsIgnoreLine ?>
<div class="clear"></div>

<p class="form-row"><button type="submit" class="button" name="track" value="<?php esc_attr_e( 'Track', 'woocommerce' ); ?>"><?php esc_html_e( 'Track', 'woocommerce' ); ?></button></p>
<?php wp_nonce_field( 'woocommerce-order_tracking', 'woocommerce-order-tracking-nonce' ); ?>

</form>






میتونید این فایل رو در مسیر قالبتون : 

yourtheme/woocommerce/order/form-tracking.php

بزارید.

اگر کسی خواست کپی کند لطفا منبع را پرشین اسکریپت ذکر کند.​

در پناه حق  یزدانیان​
سلام وقتتون بخیر !
توی قالب من این پوشه
yourtheme/woocommerce/order/form-tracking.php
  وجود نداشت ! خود پوشه ساختم و فایل رو ایجاد کرد ! 
اما تغییر حاصل نشد.
متشکرم
 

 

پیام یزدانیان

کاربر عضو
@karimian9 

سلام

اسم قالبتون چیه؟

....

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

سپس پوشه template و بعد پوشه order و پس از ان فایل مربوطه را انجا ویرایش کنید . 

 
  • Like
واکنش‌ها[ی پسندها]: a3.prin

a3.prin

تازه وارد
@karimian9

سلام

اسم قالبتون چیه؟

....

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

سپس پوشه template و بعد پوشه order و پس از ان فایل مربوطه را انجا ویرایش کنید .
دوست عزیز من مراحل بالارو انجام دادم فیلم ایمیل حذف شد اما باز هم ارور میده
  • با عرض پوزش، سفارش پیدا نشد. اگر شما دچار مشکل پیدا کردن جزئیات سفارش خود شده اید، لطفا با ما تماس بگیرید.


لطفا راهنمایی کنید شدیدا نیاز دارم گزینه ایمیل حذف بشه چئن مشتریان من با موبایل اکثرا ثبت نام میکنند
 
بالا