2017-04-27 3 views
1

Ich benutze Woocommerce zu Bestellungen auf meinem WordPress und ich benutze eine benutzerdefinierte Zahlung Gateway-Plugin. Alles funktioniert perfekt, außer dass ich die Dankeseite ändern möchte, die dem Kunden mitteilt, dass die Bestellung erfolgreich registriert wurde. die Prozess Zahlungsfunktion:Woocommerce Zahlung benutzerdefinierte Dankeschön Seite

public function process_payment($order_id) { 
    global $woocommerce; 
    $order = new WC_Order($order_id); 
    // Mark as on-hold (we're awaiting the cheque) 
    $order->update_status('on-hold', __('Awaiting payment', 'woocommerce-other-payment-gateway')); 
    // Reduce stock levels 
    $order->reduce_order_stock(); 
    if(isset($_POST[ $this->id.'-admin-note']) && trim($_POST[ $this->id.'-admin-note'])!=''){ 
     $order->add_order_note(esc_html($_POST[ $this->id.'-admin-note']),1); 
    } 
    // Remove cart 
    $woocommerce->cart->empty_cart(); 
    // Return thankyou redirect 
    return array(
     'result' => 'success', 
     'redirect' => $this->get_return_url($order) 
    ); 
} 

ich will, wenn der Benutzer den Dank Seite sieht, wird er automatisch, nachdem sie umgeleitet werden.

ich möchte nicht wie die Umleitungs-URL auf dem Array ändern:

'redirect' => 'http://example.com/' 

ich will ihn umleiten, nachdem er die Seite sieht, wie kann ich verwalten, das zu tun?

danke im voraus.

+0

Zuerst möchten Sie die Standard-Dankeseite anzeigen und dann möchten Sie den Benutzer auf Ihre benutzerdefinierte Dankeseite umleiten, richtig? –

+0

@MahaDev Genau –

+0

Warum möchten Sie das tun? Es scheint wie eine schlechte UX, Leute ohne ihre Eingabe umzuleiten. Woher weißt du, wenn jemand es gelesen hat? Warum erstellen Sie keine benutzerdefinierte Dankeseite oder fügen Sie der vorhandenen Dankeseite Ihre benutzerdefinierten Informationen hinzu. – helgatheviking

Antwort

0

Sie können sich einige Code js zu Ihrer benutzerdefinierten Erfolg Seite wie folgt umgeleitet werden:

<script> 

setTimeout(function(){ 
    //redirect after 3 seconds 
    window.location.href= 'your_custom_url'; 

}, 3000); 

</script> 

Sie müssen diesen Code schreiben, auf Standard Sie Seite danken.

+0

Wo finde ich die Dankeseite? –

+0

ich denke, in der WooCommerce/Kasse/thankyou.php –

+0

hey danke für deine Antwort, nur noch eine Sache über die 'Typen' in den init_fields \t '$ this-> form_fields = array ( \t \t \t \t \t‚aktiviert '=> array ( \t \t \t \t \t 'Titel' \t \t => __ ('Enable/Disable', 'WooCommerce-other-payment-Gateway'), \t \t \t \t \t 'Typ' \t \t \t => 'Checkbox', \t \t \t \t \t 'label' \t \t => __ ('Enable Benutzerdefinierte Zahlungs', 'WooCommerce-andere-Payment-Gateway'), \t \t \t \t \t 'default' \t \t => 'ja' \t \t \t \t \t), 'wenn ich html/js code einfügen möchte welchen typ sollte ich verwenden? –

Verwandte Themen