тематические страницы оформления заказа в Drupal commerce
16
как мне оформить тематические страницы корзины и оформления заказа в Drupal commerce? Я установил контент, учетную запись, выставление счетов и платежные части. Есть ли файл .tpl.php для создания?
Если бы вы могли более точно указать, какие аспекты корзины и оформления заказа вы хотите изменить, и каков будет ваш конечный результат, это поможет другим получить более полезный ответ.
sheena_d
Имея дело с подобной проблемой здесь! Я надеялся использовать hook_form_alter () для изменения разметки. В лучшем случае я получаю поле «data», которое уже отображается как таблица. Можно было бы надеяться, что можно будет воздействовать на элементы формы, прежде чем они будут визуализированы ... Все еще в поиске ...
PatrickS
Ответы:
14
Для page--cart.tpl.phpтематической страницы корзины добавьте в каталог шаблонов вашей темы.
Для оформления заказа добавьте страницу page--checkout.tpl.phpв каталог шаблонов вашей темы. Если вы хотите добавить page--checkout--review.tpl.phpв тему только страницу проверки оформления заказа, добавьте ее в каталог шаблонов.
После добавления файлов tpl не забудьте очистить кеш.
Если вы хотите узнать больше о хуках, сделайте dpm($variables)внутреннюю YOURTHEMENAME_preprocess_pageфункцию и посмотрите в theme_hook_suggestionsмассив.
Это мне очень помогло, но так как этот вопрос не мой, я могу дать только один большой палец :)
RajeevK
8
Единственные файлы шаблонов в Commerce, связанные с модулем оформления заказа, это commerce-checkout-errors-message.tpl.php и commerce-checkout-help.tpl.php. Они находятся в каталоге модулей Commerce в каталоге modules / checkout / theme.
Единственный файл шаблона, связанный с модулем Корзина, это commerce-cart-block.tpl.php, который находится в каталоге модуля Commerce в каталоге modules / cart / theme.
На самом деле самый простой способ, который я думаю, это использовать hook_form_FORM_ID_alter () для изменения формы оформления заказа . Если все, что вам нужно, это только изменить часть внутри формы проверки.
Как я вижу, большая часть содержимого страницы проверки и оформления заказа находится внутри формы. Первый - это commerce_checkout_form_checkout , а второй - commerce_checkout_form_review . Если вы знаете, как использовать API формы и как изменить форму с помощью hook_form_FORM_ID_alter (). Это будет очень легко изменить содержание формы. Как переупорядочить их или вставить / удалить элементы.
Вот простой пример добавления уведомления на страницу оформления заказа:
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 idif($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 ...}
Вы также можете использовать классы тела (в зависимости от того, какую базовую тему вы используете, они часто доступны). Это позволяет вам присвоить конкретные значения дочерним элементам тела, например, с помощью класса .checkout. Этого может быть достаточно, чтобы немного подогнать макет.
Страница корзины - это просто вид, поэтому стилизуйте ее как любой другой вид:
Перейдите на страницу, когда вы вошли в систему как администратор, найдите и нажмите ссылку «Изменить вид».
На странице редактирования просмотра откройте «Дополнительные» настройки просмотра и нажмите «Информация о теме»
Там вы можете увидеть, как вы должны называть свои шаблоны (например, views-view - commerce-cart-summary - default.tpl.php), а также, если вы используете имя шаблона в начале строки (то есть сначала «Показать вывод» Вы можете увидеть шаблон по умолчанию, скопировать его, сохранить под другим именем в каталоге шаблонов вашей темы и изменить его по своему усмотрению).
Ответы:
Для
page--cart.tpl.php
тематической страницы корзины добавьте в каталог шаблонов вашей темы.Для оформления заказа добавьте страницу
page--checkout.tpl.php
в каталог шаблонов вашей темы. Если вы хотите добавитьpage--checkout--review.tpl.php
в тему только страницу проверки оформления заказа, добавьте ее в каталог шаблонов.После добавления файлов tpl не забудьте очистить кеш.
Если вы хотите узнать больше о хуках, сделайте
dpm($variables)
внутреннююYOURTHEMENAME_preprocess_page
функцию и посмотрите вtheme_hook_suggestions
массив.Для получения дополнительной информации прочитайте этот комментарий http://drupal.org/node/1142800#comment-5365466
источник
Единственные файлы шаблонов в Commerce, связанные с модулем оформления заказа, это commerce-checkout-errors-message.tpl.php и commerce-checkout-help.tpl.php. Они находятся в каталоге модулей Commerce в каталоге modules / checkout / theme.
Единственный файл шаблона, связанный с модулем Корзина, это commerce-cart-block.tpl.php, который находится в каталоге модуля Commerce в каталоге modules / cart / theme.
источник
На самом деле самый простой способ, который я думаю, это использовать hook_form_FORM_ID_alter () для изменения формы оформления заказа . Если все, что вам нужно, это только изменить часть внутри формы проверки.
Как я вижу, большая часть содержимого страницы проверки и оформления заказа находится внутри формы. Первый - это commerce_checkout_form_checkout , а второй - commerce_checkout_form_review . Если вы знаете, как использовать API формы и как изменить форму с помощью hook_form_FORM_ID_alter (). Это будет очень легко изменить содержание формы. Как переупорядочить их или вставить / удалить элементы.
Вот простой пример добавления уведомления на страницу оформления заказа:
источник
Вы также можете использовать классы тела (в зависимости от того, какую базовую тему вы используете, они часто доступны). Это позволяет вам присвоить конкретные значения дочерним элементам тела, например, с помощью класса .checkout. Этого может быть достаточно, чтобы немного подогнать макет.
источник
Вы уже пробовали модуль Theme Develper, который дает вам информацию о том, какие темы подключаются к инструментам и какие файлы шаблонов принимать.
источник
Страница корзины - это просто вид, поэтому стилизуйте ее как любой другой вид:
Перейдите на страницу, когда вы вошли в систему как администратор, найдите и нажмите ссылку «Изменить вид».
На странице редактирования просмотра откройте «Дополнительные» настройки просмотра и нажмите «Информация о теме»
Там вы можете увидеть, как вы должны называть свои шаблоны (например, views-view - commerce-cart-summary - default.tpl.php), а также, если вы используете имя шаблона в начале строки (то есть сначала «Показать вывод» Вы можете увидеть шаблон по умолчанию, скопировать его, сохранить под другим именем в каталоге шаблонов вашей темы и изменить его по своему усмотрению).
Или вы можете создавать эти страницы (представления) самостоятельно. http://www.drupalcommerce.org/user-guide/modifying-shopping-cart-using-views
источник
Вы можете создавать свои собственные файлы .tpl и вызывать их с помощью функции hook_theme:
так как это формы, вы можете скрыть форму, найти то, что вам нужно, и использовать собственную разметку в своем шаблоне.
Или вы можете оставить все как есть и делать все вокруг.
источник