thème des pages de paiement dans le commerce Drupal


16

comment puis-je thème les pages de panier et de paiement dans le commerce Drupal? J'ai défini le contenu, le compte, la facturation et les parties de paiement. Y a-t-il un fichier -. Tpl.php à créer?


Si vous pourriez être plus précis sur les aspects du panier et de la caisse Commerce que vous essayez de changer et sur ce que vous souhaitez que votre résultat final soit, cela aidera les autres à vous fournir une réponse plus utile.
sheena_d

Traiter un problème similaire ici! J'espérais utiliser hook_form_alter () afin de modifier le balisage. Au mieux, j'obtiens un champ "data" qui est déjà rendu sous forme de tableau. On pourrait espérer qu'il serait possible d'agir sur les éléments du formulaire avant qu'ils ne soient rendus ... Toujours à la recherche ...
PatrickS

Réponses:


14

Pour la page du panier à thème, ajoutez page--cart.tpl.phpdans le répertoire des modèles de votre thème.

Pour la page de paiement par thème, ajoutez page--checkout.tpl.phpdans le répertoire des modèles de votre thème. Si vous souhaitez créer un thème uniquement, la page de vérification de la vérification s'ajoute page--checkout--review.tpl.phpau répertoire des modèles.

Après avoir ajouté des fichiers tpl, n'oubliez pas de vider le cache.

Si vous voulez en savoir plus sur les hooks, faites une fonction dpm($variables)inside YOURTHEMENAME_preprocess_pageet regardez dans le theme_hook_suggestionstableau.

Pour plus de détails, lisez ce commentaire http://drupal.org/node/1142800#comment-5365466


Cela m'a beaucoup aidé mais comme cette question n'est pas la mienne, je ne peux que donner un coup de pouce :)
RajeevK

8

Les seuls fichiers de modèle dans Commerce liés au module de paiement sont commerce-checkout-errors-message.tpl.php et commerce-checkout-help.tpl.php. Ceux-ci sont situés dans le répertoire du module Commerce sous modules / checkout / theme.

Le seul fichier de modèle lié au module Cart est commerce-cart-block.tpl.php, qui se trouve dans le répertoire du module Commerce sous modules / cart / theme.


5

En fait, la façon la plus simple, je pense, est d'utiliser hook_form_FORM_ID_alter () pour modifier le formulaire de paiement. Si vous n'avez besoin que de changer la partie à l'intérieur du formulaire de paiement.

Comme je le vois, la plupart du contenu de la page de vérification et de vérification de la caisse est à l'intérieur du formulaire. Le premier est « commerce_checkout_form_checkout » et le second est « commerce_checkout_form_review ». Si vous savez comment utiliser l'API de formulaire et comment modifier le formulaire en utilisant hook_form_FORM_ID_alter (). Il sera très facile de modifier le contenu du formulaire. Comme les réorganiser ou insérer / supprimer des éléments.

Voici un exemple simple pour ajouter un avis dans la page de paiement:

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

Vous pouvez également utiliser les classes de corps (selon le thème de base que vous utilisez, elles sont souvent disponibles). Cela vous permet de donner des valeurs spécifiques aux éléments enfants du corps avec la classe .checkout, par exemple. Cela pourrait suffire à modifier un peu la disposition.


2

Avez-vous essayé le module Theme Develper qui vous donne des informations sur le thème à accrocher et les fichiers de modèle à adopter.


2

La page du panier est juste une vue, alors stylisez-la comme n'importe quelle autre vue:

  1. Accédez à la page lorsque vous êtes connecté en tant qu'administrateur, recherchez et cliquez sur le lien "Modifier la vue".

  2. Sur la page de modification de la vue, ouvrez les paramètres de la vue "Avancé" et cliquez sur "Informations sur le thème"

  3. Là, vous pouvez voir comment vous devez nommer vos modèles (c'est-à-dire vues-vue - commerce-cart-summary - default.tpl.php) et aussi si vous au nom du modèle au début de la ligne (c'est-à-dire d'abord "Afficher la sortie" vous pouvez voir le modèle par défaut, le copier, l'enregistrer avec un autre nom dans le répertoire du modèle de votre thème et le modifier à votre guise).

  4. Vous pouvez également créer ces pages (vues) par vous-même. http://www.drupalcommerce.org/user-guide/modifying-shopping-cart-using-views


2

Vous pouvez créer vos propres fichiers .tpl et les appeler avec une fonction 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)
}

comme ce sont des formulaires, vous pouvez ensuite masquer le formulaire, trouver ce dont vous avez besoin et utiliser votre propre balisage dans votre modèle.

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

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

Ou, vous pouvez le laisser tel quel et faire des trucs autour.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.