2016-09-20 5 views
1

Ich möchte in eine Datei schreiben, wenn die WooCommerce Dankeschön-Seite nach der Bestellung erreicht wird. Ich füge folgendes in functions.php ein:WooCommerce Hook in woocommerce_thankyou

add_action('woocommerce_thankyou', 'test_1', 10, 1); 

function test_1(){ 
    //write to a file when this function is run 
    $contents = date('m/d/Y h:i:s a', time()); 
    file_put_contents('test.txt', $contents); 
} 

Es feuert nicht und ich frage mich, warum das ist?

+0

Vielleicht sollten Sie die Pfaddatei vorher definieren ... Ich habe diese Funktion selbst testen, und es tut nichts wie es ist. Es ist also normal, dass ** 'woocommerce_thankyou' ** nichts tut. – LoicTheAztec

+0

versuchen Sie mit woocommerce_thankyou _ {$ order-> payment_method} haken Sie mit dem Ersetzen Ihrer Zahlungsmethode. – user3040610

Antwort

2

Sie müssen den Dateipfad zum Schreiben der Datei hinzufügen. Hier ist die Lösung:

add_action('woocommerce_thankyou', 'test_1', 10, 1); 
function test_1(){ 
    // write to a file when this function is run 
    $contents = date('m/d/Y h:i:s a', time()); 
    $pathoffile = get_template_directory()."/test/test.txt"; 
    file_put_contents($pathoffile, $contents, FILE_APPEND); 
} 
+0

Wenn Sie ein untergeordnetes Thema verwenden, dann liefert 'get_template_directory()' den Pfad des übergeordneten Themas. –

Verwandte Themen