Включение кеширования memcache на сайте Drupal 7.x
На сервере должен быть установлен сервис memcached, а также одно из двух PHP расширений: memcache
На сервере должен быть установлен сервис memcached, а также одно из двух PHP расширений: memcache
Вариант 1 (более короткий):
- $view = views_get_view('taxonomy_term'); // get your view from database
- $view->set_display('page'); // set the display of your view
- $view->init_handlers(); // initialise the handlers
- $exposed_form = $view->display_handler->get_plugin('exposed_form');
- print $exposed_form->render_exposed_form(true);
Вариант 2 (более подробный):
<?php | |
function THEMENAME_preprocess_html(&$vars, $hook) { | |
// Подключение файла по точной ссылке | |
switch($vars['menu_item']['path']){ | |
case 'path/%': | |
drupal_add_css(path_to_theme()."/css/cart.css"); | |
break; | |
} | |
// Подключение файла по типу ноды | |
if (array_key_exists('nodes', $vars['page']['content']['system_main'])) { | |
$nodeType = array_shift($vars['page']['content']['system_main']['nodes']); | |
switch($nodeType['#bundle']){ | |
case 'node_type': | |
drupal_add_css(path_to_theme() . "/css/contact.css"); | |
break; | |
} | |
} | |
// Подключение файла по идентификатору NID | |
if(isset($nodeType['#node']->nid)): | |
switch($nodeType['#node']->nid){ | |
case 31: // node nid | |
drupal_add_css(path_to_theme() . "/css/articles.css"); // о компании | |
break; | |
} | |
endif; | |
} |
Для лучшей защиты сайта было бы полезным скрыть всю информацию о том, что сайт сделан на друпале. Итак, пройдёмся по пунктам:
Сперва скачиваем библиотеку QueryPath в корневую папку сайта. Далее создаём файл parser.php и подключаем в нём ядро Друпала и библиотеку QueryPath:
Ubercart Webform Checkout Pane
Для устранения ошибки Call to undefined function webform_client_form_includes()
Нужно добавить в webform.module
В большинстве случаев для множественного вывода материалов на сайте, построенном на Drupal, достаточно прибегнуть к услугам модуля Views. Данный модуль имеет массу возможностей и доп. модулей. Однако иногда встаёт задача нестандартного вывода нод на странице, когда "ковыряние" во Views окажется более сложным и нудным делом, нежели написание своего модуля. Рассмотрим упорядоченный вывод нод в таблице с постраничной навигацией, сортировкой по любой колонке, фильтрами и всё это через Ajax!
Drupal 7 «из коробки» поддерживает сразу несколько хранилищ, а именно: MySQL, PostgreSQL, SQLite. Это значит, что уровень абстракции существующий в API Drupal`а, гарантирует, что одни и те же модули (и сайты в целом) будут с одинаковым успехом работать на любой из этих баз данных.
Для перехода с MySQL на SQLite необходим установить модуль DBTNG Migrator. После чего надо внести изменения в файле settings.php, добавив в него базу данных SQLite под другим индексом. Например так:
Часто бывает необходимо перенаправлять авторизованного посетителя сайта сразу после ввода логина и пароля, например, на главную страницу. Так как страница /user/* не содержит никакой полезной информации и только вводит в заблуждение.
Одно из решений - прописать в файле .htaccess следующее правило:
- RewriteRule ^users/(\w) / [L,R=301]
- RewriteRule ^user/(\d+) / [L,R=301]
Создать пользователя с id = 0
- INSERT INTO `users` VALUES (0, '', '', '', 0, 0, 0, '', '', 0, 0, 0, 0, NULL, '', '', '', NULL);
- update `users` set uid=0 where name='';