sashken: Блог

Главные вкладки

Создать модуль (виджет формы) для Drupal 8

6 июля 2020 в 17:31

Нужно написать модуль (виджет формы) для Drupal 8 по подобию Hierarchical Select (как в примере с формой http://xandeadx.ru/blog/drupal/446). Чтобы сначала в селект подгрузились самые верхние термины, при выборе одного из них в другой селект подгрузились его дочерние термины и т.д. При перевыборе верхнего термина, разумеется дочерние термины стереть/деселектить.

"Сломалась" транслитерация файлов в Drupal 8

19 марта 2019 в 14:03

Для транслитерации фалов пользуюсь модулем https://www.drupal.org/project/transliterate_filenames
После обновления Друпала до версии 8.6.11 транслитерация стала работать не так, как работала до этого.

Раньше при загрузке файла "Всемирная неделя иммунизации.jpg" его имя в админке Друпала оставалось таким же, а имя файла на диске транслитерировалось в "vsemirnaya_nedelya_immunizacii.jpg"

Сейчас файл транслитерируется полностью, т.е. в админке он отображается также: "vsemirnaya_nedelya_immunizacii.jpg"

Как не удалять кэш Views после добавления ноды?

25 января 2019 в 9:39

Есть "тяжелый вьюс" первый вывод генерируется несколько секунд.

После кэширования views открывается быстро.

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

Пробовал в настройках кэширования ставить "по тегам" и "по времени" (на год), ничего не помогает.

Как сделать чтобы кэш определенных views не очищался?

Как создать запрос к БД Drupal 8 содержащий термин таксономии

15 ноября 2016 в 19:58

Есть код:

<?php$query = \Drupal::database()->select('node_field_data', 'n')
        ->fields('n', array('nid', 'title'))
        ->condition('n.type', 'article')
        ->condition('n.title', '%' . $string . '%', 'LIKE')
        ->range(0, 10);

$result = $query->execute();?>

Помогите добавить в этот код следующее условие: чтобы выбирались только ноды с термином таксономии "Автомобили" (поле field_choice_category) id термина 24.

Несколько аргументов views. Как выводить и формировать ссылки?

25 февраля 2013 в 13:23

Во views можно использовать несколько аргументов, например - category/%/%

У меня есть два словаря. Первый - категории, второй - типы (свойства) объектов. Соответственно в views два аргумента - термины первого и второго словаря.

Как сформировать ссылки подобного вида category/%/% (т.е. category/kubik/krasnyj)?

Хочется на странице термина первого словаря (category/kubik) вывести блок с такими ссылками:
category/kubik/krasnyj category/kubik/zelenyj category/kubik/zheltyj и т.д.

[Решено] Помогите переделать под 7-ку

13 декабря 2011 в 16:04

Мне необходимо в autonodetitle использовать NID
Нашел вот здесь http://drupal.org/node/194197#comment-4321826 нужный мне код:

Мой сайт взламывают?

2 ноября 2011 в 20:24

Сегодня в журнале Друпала обнаружил такие записи:

page not found 02.11.2011 [13:30] phpadmin/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [13:30] scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] my-php/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _sql/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] sql/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _php/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _myphp/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _phpmyadmin/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _admin/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _phpadmin/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _dbadmin/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _db/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] ./scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] _pma/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] phpas/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] myphp/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] webmail2/scripts/setup.php Гость (не проверено)
page not found 02.11.2011 [12:54] pma_mydb/scripts/setup.php Гость (не проверено)

Drupal 7 синонимы и связанные термины

13 октября 2011 в 14:04

В D6 в таксономии были synonyms и related terms
А как в D7 реализовать подобное?

Есть словарь Теги, в нем подобные термины: Москва, г.Москва, город Москва, г. Москва
Как сделать чтобы основной термин был Москва? Т.е. когда пользователи введут в поле Теги один из синонимов - г.Москва, город Москва, г. Москва, синоним заменится на основной термин - Москва

[Коллективный заказ] Модуль Яндекс.Карты для Drupal 7

11 октября 2011 в 12:47

Необходимо разработать модуль Яндекс.Карты для Drupal 7? Прошу сообщить стоимость и сроки.

Примерное ТЗ:
ТЗ модуля Я.Карты для Drupal 7:
- возможность выбора Народной карты Яндекса
- при добавлении ноды пользователь ставит на карте маркер
- при просмотре ноды отображается сама нода и карта с маркером пользователя
- если это возможно, то сделать выбор - что показывать на маркере (Заголовок ноды и, например, поля из ноды)
- (можно и без этого пункта) находясь на странице термина, вывести маркеры всех нод принадлежащих этому термину на карту

Даты в Drupal 7

3 октября 2011 в 7:51

Может кто-нибудь подскажет как в Drupal 7 получить значение поля 'Дата' созданного модулем Date (пробовал виджеты Date и Date (Unix timestamp)) и преобразовать это значение в другой вид, например: Y|n|j

Как я пробовал:

<?php
// один способ
$data1 $row->{$field->field_event_date};
// другой способ
$data2 $node->field_event_date[0]['value'];
?>

Если полученные таким образом даты вывести:

<?php
print $data1;
// или
print $data2;
?>

всё выводится так как было определено на вкладке "Управление отображением полей"

А вот если попытаться сделать с полученными датами что-то вроде:

<?php
$cr1 
format_date($data1'custom''Y|n|j');
// или
$cr2 date('Y|n|j'$data2);
// или
$cr3 date_modify($date1'+3 year');
?>

то в первых двух получаю 1970|1|1, в третьем просто значение поля (не модифицированное)

Еще пробовал так strtotime($date1), тоже не помогает.

Также я пробовал задавать формат вывода даты U (Unix формат), тогда выводится подобное 1317613783

Подскажите, пожалуйста, как правильно получить значение поля даты в Drupal 7 и изменить его.

Чем заменить taxonomy_term_count_nodes($term->tid) в Drupal 7

25 сентября 2011 в 20:46

Чем заменить taxonomy_term_count_nodes($term->tid) в Drupal 7 ?

В Друпал 6 с помощью этой функции выводил сниппетом список только тех терминов у которых есть ноды. Как вывести такой список в D7?

Drupal 7 и Views - список родительских терминов, как?

13 сентября 2011 в 20:23

Создал views с терминами. Добавил взаимосвязь - Термин Родитель (связь обязательна). Добавил поле - Термин Название (выбрал связь Термин Родитель).
Выводится список Терминов родителей, но термины неоднократно дублируются. В Настройках Query settings галочка на Уникальность стоит, но толку нету.

Подскажите, пожалуйста, как в Drupal 7 с помощью Views сделать список родительских терминов?

Адреса: Город -> Улица. Что использовать таксономию или поля CCK (fields)?

9 сентября 2011 в 21:03

Делаю каталог организаций. Иерархия адресов организаций такая:
Город
- Улица 1
- Улица 2
- ...
Район
- Деревня 1
- Улица 3
- Улица 4
- ...
- Деревня 2
- Улица 5
- Улица 6
- ...

Taxonomy Redirect на Drupal7 заменит Taxonomy display

22 августа 2011 в 8:20

Долго искал замену Taxonomy Redirect для 7-го Друпала. И нашел - Taxonomy display.

САМОЕ ГЛАВНОЕ!!!
Во Views должен быть выключен Вид - Taxonomy term (который вьюсовский) или у этого вида должен быть изменен адрес.
Вместо - taxonomy/term/% пишите любой адрес вида - wwwww/%
Лично я создал клон Вида Taxonomy term, сам Taxonomy term выключил. А в клоне изменил адрес taxonomy/term/% на wwwww/%

Далее, устанавливаем модуль Taxonomy display.

Переходим в настройки вывода словаря таксономии вывод которого вы хотите изменить - admin/structure/taxonomy/ИМЯ_СЛОВАРЯ/display

Внизу на вкладке "Custom display settings" (Расширенные параметры вывода), ставим галочку у "Taxonomy term page" (Страница термина), жмём Save (Сохранить).

Появляется новая подвкладка "Taxonomy term page" (Страница термина), переходим на неё - admin/structure/taxonomy/ИМЯ_СЛОВАРЯ/display/full

Внизу выбираем следующее:
Term display - выбираем Hidden (Скрыто)
Associated content display - выбираем Views (Представления)
View (Просмотреть) - выбираем свой Views (я выбрал ранее созданный клон Taxonomy term)
View's display - выбираем страницу из своего Views
Жмём Save (Сохранить).

Переходим на страницу термина и смотрим результат.

Всё!

Как сделать такой календарь?

7 июля 2011 в 21:45

Подскажите, пожалуйста, как сделать такой календарь - bezgrusti.ru/imeninniki ?
Вопрос даже скорее - как наполнить такой календарь. В примере, как я понимаю, имена - это НЕ ноды с определенной датой, а просто текст со ссылкой распределенный по датам. Вот никак не пойму как это сделано.

Как вывести дочерние термины?

30 июня 2011 в 12:28

Подскажите, пожалуйста, как в Drupal 7 вывести список дочерних терминов находясь на странице термина родителя?

Пробовал вот так, не получается:

Проблемы с доступом к сайтам. IT-Patrol

4 мая 2011 в 7:56

В течение нескольких дней периодически наблюдаю проблему на своих сайтах размещенных в IT-Patrol (сервер seiko):

Site off-line
The site is currently not available due to technical problems. Please try again later. Thank you for your understanding.

Вчера сайты были недоступны около часа (были какие то проблемы с коммутатором в ДЦ)

Сегодня уже больше получаса сайты снова недоступны. Началось снова с ошибки:

Site off-line
The site is currently not available due to technical problems. Please try again later. Thank you for your understanding.

Как вывести hierarchical select в exposed filters

27 августа 2010 в 13:01

Есть словарь с марками и моделями автомобилей, такого вида:
ВАЗ
- 2101
- 2102
...
ГАЗ
- 3102
- 3110
...
Используется Content Taxonomy и Hierarchical Select для выбора терминов из словаря при создании ноды.
Также разрешено добавлять модели автомобилей пользователям (2110, 2112...)

Если в фильтрах выбираю
- Содержимое: Модель / Марка автомобиля (field_model_ob_avto), то появляется простой список.
- Таксономия: Term ID (with depth), то появляются два Способ выбора: Выпадающий (с галочкой Show hierarchy in dropdown) и Автодополнение. А Hierarchical Select нету.

Модуль Hierarchical Select Taxonomy Views (Use Hierarchical Select for Taxonomy exposed filters in Views.) - включен

Подскажите, пожалуйста, как выбрать Hierarchical Select в Exposed Filters.
Т.е. чтобы в фильтрах появился не просто выпадающий список, а Hierarchical Select.

Автоматический заголовок на основе Hierarchical Select

16 августа 2010 в 20:14

Имеется:
Двухуровневый словарь терминов: модели автомобилей, марки автомобилей (используется Hierarchical Select и Content Taxonomy):

ВАЗ
- 2101
- 2102
...
ГАЗ
- 3102
- 3110
...

Задаю в настройке Auto nodetitle:
Продам [field_model_ob_avto-terms-raw]

Получается следующий заголовок: Продам 2101, ВАЗ

Если задаю:
Продам [save-lineage-termpath-raw]
Выводится просто: Продам

Подскажите, пожалуйста, как сделать такой заголовок: Продам ВАЗ 2101

Как правильно прописать ссылки?

9 августа 2010 в 19:16

В продолжение темы: http://drupal.ru/node/48177

А как на страницах доски объявлений сделать ссылки: "Продам", "Куплю", "Меняю"?

Чтобы к адресу прибавлялось /buy /sell /change

Views + 2 аргумента (1-й - термин таксономии, 2-й - CCK поле)

6 августа 2010 в 13:55

Делаю доску объявлений.
С помощью Taxonomy redirect задал такой путь к терминам obyavleniya/!tid

С помощью Pathauto задал путь для рубрик объявлений: obyavleniya/[catpath-raw], а для самих объявлений: obyavleniya/[termpath-raw]/[title-raw]

С помощью views сделал копию дефолтного taxonomy/term/% и в ней поменял путь на следующий:
obyavleniya

Сейчас если ввести в адрес obyavleniya/avtozapchasti, то всё работает как надо, объявления выводятся из этой рубрики.

Но у каждого объявления есть еще тип (CCK поле): Продам, Куплю, Меняю...
Добавляю это поле в Аргументы. Т.е. хочу чтобы при вводе адреса obyavleniya/avtozapchasti/prodam выводились только объявления о продаже автозапчастей, а выводятся всё равно все объявления из рубрики Автозапчасти.

Подскажите, пожалуйста, как сделать так чтобы при вводе obyavleniya/avtozapchasti/prodam выводились только объявления о продаже автозапчастей.
(Например как вот здесь: http://54live.ru/do/all)

[Решено] Значение ССК поля в заголовок материала

3 августа 2010 в 21:34

Подскажите, пожалуйста, как сделать так, чтобы при выборе определенного значения CCK поля, это значение прописывалось в заголовок материала. Как вот здесь: http://54live.ru/node/add/advert
Т.е. выбрали "Продам" и в заголовке появилось Продам.

Ошибка - файл php-cgi.core

16 апреля 2009 в 20:30

Уважаемые форумчане,

Последнее время у меня в корневой папке (т.е. в той где установлен Друпал) постоянно появляется файл php-cgi.core (размером около 40МБ), это означает что php завершает работу ("валится") с ошибкой. Обычно файл php-cgi.core появляется в той директории в которой находится скрипт из-за которого "упал" php

В логах следующее:
[Thu Apr 16 13:47:23 2009] [notice] mod_fcgid: process /home/data/www/мой сайт/index.php(66859) exit(idle timeout), get signal 11, possible coredump generated
[Thu Apr 16 13:47:23 2009] [notice] mod_fcgid: process /home/data/www/мой сайт/index.php(66883) exit(idle timeout), get signal 11, possible coredump generated
[Thu Apr 16 13:47:23 2009] [notice] mod_fcgid: process /home/data/www/мой сайт/index.php(66867) exit(idle timeout), get signal 11, possible coredump generated
[Thu Apr 16 13:49:21 2009] [notice] mod_fcgid: process /home/data/www/мой сайт/index.php(67015) exit(idle timeout), get signal 11, possible coredump generated
[Thu Apr 16 13:51:28 2009] [notice] mod_fcgid: process /home/data/www/мой сайт/index.php(62113) exit(idle timeout), get signal 11, possible coredump generated

Время последней ошибки совпадает с временем создания/изменения файла php-cgi.core

По моим догадкам этот файл php-cgi.core стал появляться после того как хостер обновил php с версии 5.2.8 до 5.2.9 (хотя может вовсе не из-за этого)

Я предположил, что может обновление криво встало. Сегодня хостер переустановил по-новой php 5.2.9 со всеми необходимыми модулями. Файл php-cgi.core все-равно появляется.

Модуль Taxonomy Menu. Вложенные термины.

26 марта 2009 в 9:41

В модуле Taxonomy Menu есть возможность при выборе термина N показывать не только ноды этого термина, но и ноды всех вложенных терминов (т.е. терминов находящихся внутри термина N)

Но почему то при установке галочки на "Display Descendants", получается вот что:

taxonomy/term/10 14 20 121 165 224 56 147 368 465 489 520 22

непонятно зачем вообще так сделано...

А хотелось бы чтобы было так:

taxonomy/term/10/all

Как можно это исправить?