/ / hook_commerce_checkout_complete nicht aufgerufen - drupal-7, drupal-commerce

hook_commerce_checkout_complete nicht aufgerufen - drupal-7, drupal-commerce

Ich versuche, nachher eine Geschäftslogik auszuführender Checkout-Prozess in Drupal 7 mit Drupal Commerce Modul. Ich habe auf der Dokumentation gelesen, dass ich den Haken hook_commerce_checkout_complete verwenden kann, aber es heißt nicht

function api_manager_commerce_checkout_complete($order) {
$ow = entity_metadata_wrapper("commerce_order", $order);

foreach ($ow->commerce_line_items as $line_item) {
$sku = $line_item->commerce_product->sku->value();

$record = array(
"uid" => get_user_id(),
"sku" => $sku,
"token" => uniqid(),
);

drupal_write_record("api_manager_product_user", $record);
}

}

Zu Ihrer Information "Ich habe die Zahlung deaktiviert" und "Zahlungsinformationen" in der Checkout-Konfiguration

Antworten:

3 für die Antwort № 1

Immer wenn ein neuer Hook in Drupal implementiert wird, müssen Sie Ihren Cache (Klasse) löschen. Nur dann wäre dieser bestimmte Haken verfügbar und würde ausgelöst, wenn er aufgerufen wird.

Wenn Sie das Modul devel verwenden, können Sie überprüfen, ob Ihr Hook vom System von Drupal erkannt wird module_implements Funktion. Devel Modul gibt Ihnen ein bequemes Werkzeug an http://www.mysite.com/devel/php um solche Schnipsel auszuprobieren.

dpm(module_implements("commerce_checkout_complete"));

Wenn der Name Ihres Moduls nicht als Ausgabe der obigen Funktion aufgeführt ist, bedeutet dies, dass Ihr Hook nicht erkannt wird. Wie bereits erwähnt, leeren Sie in diesem Fall Ihren Cache.