Ryan memiliki beberapa kode hebat yang secara terprogram Anda dapat membuat pesanan
<?php
global $user;
$product_id = 1;
// Create the new order in checkout; you might also check first to
// see if your user already has an order to use instead of a new one.
$order = commerce_order_new($user->uid, 'checkout_checkout');
// Save the order to get its ID.
commerce_order_save($order);
// Load whatever product represents the item the customer will be
// paying for and create a line item for it.
$product = commerce_product_load($product_id);
$line_item = commerce_product_line_item_new($product, 1, $order->order_id);
// Save the line item to get its ID.
commerce_line_item_save($line_item);
// Add the line item to the order using fago's rockin' wrapper.
$order_wrapper = entity_metadata_wrapper('commerce_order', $order);
$order_wrapper->commerce_line_items[] = $line_item;
// Save the order again to update its line item reference field.
commerce_order_save($order);
// Redirect to the order's checkout form. Obviously, if this were a
// form submit handler, you'd just set $form_state['redirect'].
drupal_goto('checkout/' . $order->order_id);
?>
http://www.drupalcommerce.org/questions/3259/it-possible-drupal-commerce-work-without-cart-module
Saya memiliki situs di mana saya ingin mengambil donasi anonim jadi saya punya dua masalah.
- Jika pengguna tidak masuk ke situs mereka mendapat akses ditolak pesan
- Proses checkout menanyakan nama, alamat, dll.
Yang ingin saya lakukan adalah memiliki halaman di mana Anda mengkonfirmasi jumlah kemudian dibawa ke halaman pembayaran. Dalam hal ini saya menggunakan PayPal WPS sehingga mengarahkan ulang akan bagus.
Setiap saran yang bisa Anda berikan akan dihargai.
Jawaban:
Anda dapat mencoba menguji modul baru bernama Commerce Drush yang memiliki sintaks berikut:
Solusi manual
Untuk membuat pesanan secara terprogram di Commerce, Anda dapat menggunakan kode berikut (ini berfungsi dengan drush juga, mis
drush -vd -u "$1" scr order_code-7.php
.). Harap dicatat bahwacommerce_payment_example
modul diperlukan.Catatan: Seperti yang disarankan dalam komentar, jika Anda mendapat kesalahan tentang metode pembayaran tidak diketahui saat menyimpan pesanan, pastikan Anda telah menentukannya, mis.
sumber
Skrip yang dimodifikasi ini juga berfungsi untuk pengguna anonim:
sumber
Anda perlu menambahkan commerce_cart_order_session_save () sehingga pengguna anonim memiliki sesi mereka untuk menghubungkan browser dengan konten keranjang.
sumber
1. Jika pengguna tidak masuk ke situs mereka mendapat akses ditolak pesan
Saya punya sesuatu yang bekerja tetapi saya sangat meragukan itu adalah praktik terbaik.
Pada akhirnya saya selingkuh. Pada formulir saya di mana Anda menaruh detail Anda termasuk alamat email, saya membuat akun pengguna dengan cepat dan kemudian login pengguna. Jika alamat email semua siap digunakan saya login pengguna. (Saya pastikan Anda tidak menggunakan alamat email admin).
Karena situs saya hanya memiliki halaman formulir donasi ketika Anda menekan halaman itu, itu memastikan Anda sudah keluar (jika Anda bukan admin). Pada transaksi yang berhasil itu membuat Anda keluar. Saya telah menonaktifkan riwayat pesanan / mengalihkan pengalihan sehingga Anda hanya dapat membuka halaman yang saya ketahui saat masuk. Tidak ada detail pribadi yang disimpan dan tidak dapat melihat donasi sebelumnya.
Dalam situasi saya, saya senang dengan cara ini bekerja. Ini tidak ideal dan hanya akan berfungsi dalam beberapa kasus.
2. Proses checkout menanyakan nama, alamat dll.
saya pergi ke
/ admin / commerce / config / checkout
Dan dinonaktifkan
sumber