menayangkan halaman checkout di perdagangan Drupal

16

bagaimana cara saya tema halaman keranjang dan checkout dalam perdagangan Drupal? Saya telah mengatur konten, akun, penagihan, dan bagian pembayaran. Apakah ada -. Tpl.php file untuk dibuat?

Badri
sumber
Jika Anda bisa lebih spesifik tentang aspek mana dari gerobak dan checkout Commerce yang Anda coba ubah dan apa yang Anda inginkan dari hasil akhir Anda, itu akan membantu orang lain dalam memberikan Anda jawaban yang lebih bermanfaat.
sheena_d
Berurusan dengan masalah serupa di sini! Saya berharap untuk menggunakan hook_form_alter () untuk memodifikasi markup. Paling-paling, saya mendapatkan bidang "data" yang sudah dirender sebagai tabel. Orang akan berharap akan mungkin untuk bertindak pada elemen formulir sebelum mereka diberikan ... Masih mencari ...
PatrickS

Jawaban:

14

Untuk menamai halaman keranjang tambahkan page--cart.tpl.phpdalam direktori template tema Anda.

Untuk bertema halaman checkout, tambahkan page--checkout.tpl.phpdirektori templat tema Anda. Jika Anda ingin tema hanya halaman tinjauan checkout menambahkan page--checkout--review.tpl.phpdi direktori template.

Setelah menambahkan file tpl jangan lupa untuk menghapus cache.

Jika Anda ingin tahu lebih banyak tentang kait lakukan fungsi dpm($variables)di dalam YOURTHEMENAME_preprocess_pagedan lihat theme_hook_suggestionsarray.

Untuk detail, baca komentar ini http://drupal.org/node/1142800#comment-5365466

subhojit777
sumber
Ini banyak membantu saya tetapi karena pertanyaan ini bukan milik saya, saya hanya dapat memberikan satu jempol :)
RajeevK
8

Satu-satunya file templat di Commerce yang terkait dengan modul checkout adalah commerce-checkout-errors-message.tpl.php dan commerce-checkout-help.tpl.php. Ini terletak di direktori modul Commerce di bawah modules / checkout / theme.

Satu-satunya file templat yang terkait dengan modul Cart adalah commerce-cart-block.tpl.php, yang terletak di direktori modul Commerce di bawah modules / cart / theme.

sheena_d
sumber
5

Sebenarnya cara termudah yang saya pikir adalah menggunakan hook_form_FORM_ID_alter () untuk mengubah formulir checkout. Jika semua yang Anda butuhkan hanya mengubah bagian di dalam formulir checkout.

Seperti yang saya lihat, sebagian besar konten halaman ulasan checkout & checkout ada di dalam formulir. Pertama adalah ' commerce_checkout_form_checkout ', dan kedua adalah ' commerce_checkout_form_review '. Jika Anda tahu cara menggunakan form API & cara mengubah formulir dengan menggunakan hook_form_FORM_ID_alter (). Itu akan sangat mudah untuk mengubah konten formulir. Suka menyusun ulang mereka atau memasukkan / menghapus elemen.

Berikut adalah contoh sederhana untuk menambahkan pemberitahuan ke halaman checkout:

function my_module_form_commerce_checkout_form_alter(&$form, &$form_state, $form_id) {

  //If you have Devel module, uncomment to see what is the original form data
  //kpr($form);

  //uncomment to see current form_id
  //echo $form_id;

  //check form id
  if($form_id == 'commerce_checkout_form'){
    $form['my_test_notice'] = array(
      '#markup' => '<h1>Hello, this is a checkout test!</h1>',
      '#weight' => -1,
    );
  }
  elseif($form_id == 'commerce_checkout_form_review'){
    $form['my_test_notice'] = array(
      '#markup' => '<h1>Hello, this is a checkout review test!</h1>',
      '#weight' => -1,
    );
  }
  //You can add more ...

}
Tim Yao
sumber
3

Anda juga dapat menggunakan kelas tubuh (tergantung pada tema dasar apa yang Anda gunakan, ini sering tersedia). Ini memungkinkan Anda untuk memberikan nilai spesifik ke item anak dari body dengan kelas .checkout, misalnya. Ini mungkin cukup untuk sedikit mengganggu tata letak.

Alex C
sumber
2

Sudahkah Anda mencoba modul Theme Develper yang memberi Anda info tentang kait tema mana yang ingin diterapkan dan file terjemahan mana yang akan diadopsi.

gilzero
sumber
2

Halaman keranjang hanya tampilan, jadi gaya itu seperti tampilan lainnya:

  1. Buka halaman ketika Anda login sebagai admin, cari dan klik tautan "Edit view".

  2. Pada tampilan edit halaman buka pengaturan tampilan "Advanced" dan klik "Theming information"

  3. Di sana Anda dapat melihat bagaimana Anda harus memberi nama template Anda (yaitu view-view - commerce-cart-summary - default.tpl.php) dan juga jika Anda menggunakan nama template di awal baris (yaitu yang pertama adalah "Tampilkan output" Anda dapat melihat templat default, menyalinnya, menyimpan dengan nama lain di dir templat tema Anda dan memodifikasinya sesuka Anda).

  4. Atau, Anda dapat membuat halaman (tampilan) sendiri. http://www.drupalcommerce.org/user-guide/modifying-shopping-cart-using-views

pengguna2870349
sumber
2

Anda dapat membuat file .tpl Anda sendiri, dan memanggilnya dengan fungsi hook_theme:

function yourtheme_theme(&$existing, $type, $theme, $path) {
  return array(
    'commerce_cart_add_to_cart_form'=> array(
    'render element' => 'form',
    'template' => 'path/to/template/commerce_cart_add_to_cart_form',
  ),
    'commerce_checkout_form_review'=> array(
    'render element' => 'form',
    'template' => 'path/to/template/commerce_checkout_form_review',
  ),
  ...
  ...(more templates)
}

karena ini adalah formulir, Anda dapat menyembunyikan formulir, menemukan apa yang Anda butuhkan, dan menggunakan markup Anda sendiri di templat Anda.

<?php
  hide($form);
  dpm($form);
?>

<div>
  print render($form[...]);
</div>

Atau, Anda dapat membiarkannya apa adanya dan melakukan hal-hal di sekitarnya.

mlaroy
sumber