• اطلاعیه ها

    • Morteza

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

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

انجام یک فرآیند پس از پایان خرید

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

هو العلیم، سلام، من دنبال یک action یا filter هستم که زمانی فایر شود که برروی دکمه تکمیل شده در لیست سفارشات کلیک نماییم،

من حتی تابع مربوط به این رخداد را پیدا کردم و فیلتر مربوط به ان را اما نمی دونم چرا کد من run نمی شود.

mark_order_status در فایل class-wc-ajax.php قرار دارد و اکشن مربوطه هم woocommerce_order_edit_status است.

0

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


لینک به پست

هو العلیم، سلام مجدد، مشکل حل شد، ایراد از کدم بود.

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

$this->loader->add_action( 'woocommerce_order_edit_status', $plugin_admin, 'status_completed');

اینم در کلاس دیگر::

	public function status_completed(  $order_id) {
		$status   = sanitize_text_field( $_GET['status'] );
		if(!empty($status) && $status=='completed')
		{
			global $wpdb;	
			$table_name = $wpdb->prefix . 'pana_points';	
			$order = new WC_Order($order_id);
			$user_id = $order->user_id;
			$refer = get_user_meta( $user_id, 'user_reffer', true ); 
		
			if(!empty($refer))
			{
				$user_info = get_user_by( 'login', $refer );
				$total=$order->get_total();
				$persent = 10;
				$porsant=ceil(($total*$persent)/100);			
				$wpdb->insert( 
					$table_name, 
					array( 
						'created_at' => current_time( 'mysql' ), 
						'user_id' => $user_info->ID, 
						'amount' => $porsant, 
						'order_id' => $order_id, 
						'type' => 'deposit', 
						'method' => 'site', 									
					) 
				);			
	
				
				
			}
		}


	}	

 

0

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


لینک به پست

شما هوک woocommerce_order_status_completed  رو تست کنید احتمالا جواب میده

0

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


لینک به پست

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

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

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

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


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

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

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


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