pagine di pagamento a tema nel commercio Drupal


16

come tema le pagine del carrello e del checkout nel commercio Drupal? Ho impostato parti di contenuto, account, fatturazione e pagamento. C'è qualche file -. Tpl.php da creare?


Se potessi essere più specifico su quali aspetti del carrello Commerce e del checkout stai provando a cambiare e quale desideri che il tuo risultato finale sia, ciò aiuterà gli altri a fornirti una risposta più utile.
sheena_d,

Affrontare un problema simile qui! Speravo di usare hook_form_alter () per modificare il markup. Nella migliore delle ipotesi, ottengo un campo "dati" che è già reso come tabella. Si spera che sarebbe possibile agire sugli elementi del modulo prima che vengano resi ... Ancora alla ricerca ...
PatrickS

Risposte:


14

Per la pagina del carrello page--cart.tpl.phpa tema aggiungi nella directory dei modelli del tuo tema.

Per la pagina di pagamento page--checkout.tpl.phpa tema aggiungi nella directory dei modelli del tuo tema. Se vuoi aggiungere un tema solo alla pagina di revisione del checkout aggiungi page--checkout--review.tpl.phpnella directory dei modelli.

Dopo aver aggiunto i file tpl, non dimenticare di cancellare la cache.

Se vuoi sapere di più hook, fai una funzione dpm($variables)interna YOURTHEMENAME_preprocess_pagee guarda l' theme_hook_suggestionsarray.

Per i dettagli leggi questo commento http://drupal.org/node/1142800#comment-5365466


Questo mi ha aiutato molto, ma poiché questa domanda non è mia, posso dare solo un pollice in su :)
RajeevK

8

Gli unici file modello in Commerce relativi al modulo di pagamento sono commerce-checkout-errors-message.tpl.php e commerce-checkout-help.tpl.php. Questi si trovano nella directory del modulo Commerce sotto moduli / checkout / tema.

L'unico file modello relativo al modulo Cart è commerce-cart-block.tpl.php, che si trova nella directory del modulo Commerce sotto moduli / cart / theme.


5

In realtà il modo più semplice secondo me è usare hook_form_FORM_ID_alter () per modificare il modulo di pagamento. Se tutto ciò che serve è solo cambiare la parte all'interno del modulo di pagamento.

Come vedo, la maggior parte del contenuto della pagina di verifica di checkout e checkout è all'interno del modulo. Il primo è " commerce_checkout_form_checkout " e il secondo è " commerce_checkout_form_review ". Se sai come utilizzare l'API del modulo e come modificare il modulo utilizzando hook_form_FORM_ID_alter (). Sarà molto facile modificare il contenuto del modulo. Come riordinarli o inserire / rimuovere elementi.

Ecco un semplice esempio per aggiungere un avviso nella pagina di pagamento:

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 ...

}

3

Puoi anche usare le classi del corpo (a seconda del tema base che usi, queste sono spesso disponibili). Ciò consente di assegnare valori specifici agli elementi figlio del corpo con la classe .checkout, ad esempio. Questo potrebbe essere sufficiente per modificare leggermente il layout.


2

Hai provato il modulo Sviluppo di temi che ti dà informazioni su quali temi agganciare implementa e quali file di placche adottare.


2

La pagina del carrello è solo una vista, quindi modellala come qualsiasi altra vista:

  1. Vai alla pagina quando hai effettuato l'accesso come amministratore, trova e fai clic sul link "Modifica vista".

  2. Nella pagina di modifica della vista apri le impostazioni di visualizzazione "Avanzate" e fai clic su "Informazioni tematiche"

  3. Lì puoi vedere come dovresti assegnare un nome ai tuoi modelli (ad es. Views-view - commerce-cart-summary - default.tpl.php) e anche se hai il nome del modello all'inizio della riga (ovvero il primo è "Visualizza output" puoi vedere il modello predefinito, copiarlo, salvarlo con un altro nome nella directory del modello del tuo tema e modificarlo come preferisci).

  4. In alternativa, puoi creare quelle pagine (visualizzazioni) da solo. http://www.drupalcommerce.org/user-guide/modifying-shopping-cart-using-views


2

Puoi creare i tuoi file .tpl e chiamarli con una funzione 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)
}

poiché si tratta di moduli, puoi quindi nascondere il modulo, trovare ciò di cui hai bisogno e utilizzare il tuo markup nel tuo modello.

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

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

Oppure, puoi lasciarlo così com'è e fare cose intorno ad esso.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.