VladSavitsky

Влад Савицкий - вот он какой...
Опубликовано VladSavitsky
Задача: 

Нужно создать вид (представление) для Views программно, то есть в своем модуле.

Решение
Чтобы задать вид с помощью кода для Views 2 в Drupal 6 нужно:

  1. Создать вид, используя визуальный интерфейс Viws, как это обычно делается
  2. Сделать экспорт этого вида и получить код
  3. Заменить первую строку ($view = new view;) на $view = views_new_view();
  4. Далее можно показать, выполнить, вставить и всё, чего пожелаете (то есть $view->execute_display('default', array())

Ниже пример, который использует простой Вид, который показывает Заголовки всех опубликованных нод:

//создать новый вид

Читать дальше...
Авторы решений:
Темы:
Версия Drupal:
Модули:
| Добавить комментарий
Опубликовано VladSavitsky
Задача: 

Нужно сделать так, чтобы при смене (переключении) языка сайта ссылка на главную меняла свой якорь (текст). Например, "Главная" для русского, "Home" - для английского.

Решение

Авторы решений:
Версия Drupal:
Модули:
| Добавить комментарий
Опубликовано VladSavitsky
Задача: 

Если на сайте используется несколько языков (многоязычный сайт), но логотип и/или название сайта должно вести на главную на выбранном языке, а не на основном языке сайта

Решение

  • В папке текущей теме открыть файл page.tpl.php
  • В этом файле найти строку "$logo" - это вывод логотипа. Вывод названия сайта обычно находится где-то рядом.
  • Найти как формируется ссылка. Обычно это
    echo check_url($base_path);
    или
    print $base_path;
  • Заменить на:
    echo url('<front>', array('absolute' => TRUE));
Авторы решений:
Версия Drupal:
Drupal API:
| Добавить комментарий
Опубликовано VladSavitsky
Задача: 

На многоязычном сайте нужно на главной странице нужно вывести ноду, которая при смене языка сайта тоже будет меняться на соответствующий перевод.

Решение

На сайте должна быть установлена многоязычность и возможность делать перевод нод.
Далее нужно:

  • Открыть нужную ноду для редактирования и указать путь: "home".
    Указать синоним пути в настройках ноды
  • Сделать тоже самое для всех переводов, используя в качестве пути то же самое значение "home"
    Указать синоним пути в настройках ноды
  • Читать дальше...
Опубликовано VladSavitsky

Задача:

Найти на сайте страницы с большим PR.

Решение:

Онлайн-сервисы проверки PR страниц сайта

Читать дальше...
Опубликовано VladSavitsky

Задача:

Нужно в форме поиска вставить в поле текст "Поиск по сайту", который исчезает при клике мышью, то есть, когда курсор попрадет в это поле и поле получает фокус.

Читать дальше...
Опубликовано VladSavitsky

Задача
Табы и вкладкиНужно на страницу ноды, где по умолчанию есть табы "Смотреть" ("View") и "Редактировать" ("Edit") добавить произвольный таб.

Решение

Добавление таба в Drupal 6

Таб для всех нод и без ограничения доступа:
$items['node/%node/new_tab'] = array(
    'title' => 'New Tab',
    'page callback' => 'mycallback',
    'page arguments' => array(1),
    'access callback'   => TRUE,

Читать дальше...
Авторы решений:
Версия Drupal:
| 3 комментария
Опубликовано VladSavitsky

Задача:
Нужно определить тип ноды, которая отображается. В форме редактирования нет об этом информации.

Читать дальше...
Опубликовано Гость
Задача: 

Нужно вывести (внедрить) форму создания ноды на странице, которая не совпадает со стандартным URL для создания нод (node/add/[тип нод]). То есть на произвольной странице показать ноду создания контента одного из типов. При этом нужно сохранить весь функционал этой формы - AHAH, валидацию и корректное сохранение.

Иногда бывает нужно встроить (embed) форму редактирования ноды.

Drupal 5

Для 5й версии можно использовать модуль subform element (http://drupal.org/project/subform_element), который позволяет это легко сделать.

Drupal 6

В 6й версии Drupal формы стали сложнее (активно используется AHAH), поэтому при при неаккуратном использовании формы могут перестать работать. Создадим модуль, который будет показывать внедрённую форму на произвольной странице.
Чтобы не нарушить работу AHAH нужно просто не менять структуру массива $form.

Опубликовано VladSavitsky
Задача: 

Нужно отключить возможность менять заголовок комментария при создании и не показывать заголовок на странице ноды в списке всех комментариев.

Варианты:

  • Использовать стандартные возможности Drupal
  • Использовать модуль Re: Comment subjects
  • Скрыть заголовки средствами CSS
  • Использовать модуль "Comment automatic title"
  • Использовать хук hook_comment()

Использовать хук hook_comment()

См. http://api.drupal.ru/api/function/hook_comment/6
Теория:

  • Нужно перехватить вывод формы комментария и отключить вывод заголовка.
  • Читать дальше...
 
 
 

RSS-лента новостей

Dries Buytaert по-русски
]]>Русский поиск Drupal]]>

Перенос сайта из Joomla в Drupal
Перенос сайта из WordPress в Drupal

]]> Drupal - это бесплатная система управления контентом с открытым исходным кодом ]]>