Drupal глазами разработчика

Блог музицирующего веб-девелопера: Drupal: Необязательное поле ввода E-mail в форме оформления заказа Drupal Commerce

Нигде не нашёл способа реализовать опциональный ввод e-mail адреса при оформлении заказа в Drupal Commerce. Пришлось делать самому:
1. Добавляем в свой модуль или template.php:
<span class="co4">/**
 * Implements hook_form_FORM_ID_alter(): commerce_checkout_form_checkout.
 */</span>
<span class="kw2">function</span> MODULENAME_form_commerce_checkout_form_checkout_alter<span class="br0">(</span><span class="sy0">&</span><span class="re0">$form</span><span class="sy0">,</span> <span class="sy0">&</span><span class="re0">$form_state</span><span class="br0">)</span> <span class="br0">{</span>
  <span class="kw1">if</span> <span class="br0">(</span><span class="kw3">isset</span><span class="br0">(</span><span class="re0">$form</span><span class="br0">[</span><span class="st_h">'account'</span><span class="br0">]</span><span class="br0">[</span><span class="st_h">'login'</span><span class="br0">]</span><span class="br0">[</span><span class="st_h">'mail'</span><span class="br0">]</span><span class="br0">)</span><span class="br0">)</span> <span class="br0">{</span>
    <span class="re0">$form</span><span class="br0">[</span><span class="st_h">'account'</span><span class="br0">]</span><span class="br0">[</span><span class="st_h">'login'</span><span class="br0">]</span><span class="br0">[</span><span class="st_h">'mail'</span><span class="br0">]</span><span class="br0">[</span><span class="st_h">'#required'</span><span class="br0">]</span> <span class="sy0">=</span> <span class="kw4">FALSE</span><span class="sy0">;</span>
  <span class="br0">}</span>
<span class="br0">}</span>

Читать дальше →
Похожие записи:
Drupal глазами разработчика

Drupalace: Отдаём кэш анонимов без поднятия бэкэнда. Drupal 7 + nginx + memcached.

Помните статью о снижении нагрузки с помощью Memcache Storage? Там Drupal отдавал анонимам кэш на второй фазе бустрапа, что существенно снижало нагрузку на сайт, особенно его посещали преимущественно анонимные пользователи. Там отдача страницы происходила за 50-70мс. Однако я решил этим не ограничиваться, и отдавать кэш вообще без поднятия бэкэнда (на большинстве хостингов это apache). Таким образом мало того, что отдача страницы происходит в десятки раз быстрее, так ещё и не расходуется память на новые процессы апача (или любого другого бэкэнда).
Чтобы понимать, что происходило раньше при отдаче страниц анонимам (по материалам этой статьи), я накидал небольшую схему:
Blog by admin

Drupal.org.ua - источник знаний про друпал

На этом сайте мы будем собирать все самую новую и интересную информацию про drupal.