roman-yrv: Комментарии

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

27 марта 2014 в 16:27

А во Field API нет какого-нибудь хука, который бы отрабатывал на этапе получения значения CCK-поля, чтобы возвращаемое значение можно было заменить своим ?

То есть, если поле - такое-то и сущность - такая-то, а значение - пустое, то пусть значение будет равным полю "title" сущности.

27 марта 2014 в 14:41

То есть, есть некая нода, и есть некая форма ввода, у которой есть текстовое поле.
И нужно сделать так, чтобы по умолчанию значение этого поля было равно значению title данной ноды ?

25 марта 2014 в 17:09

В настройках темы можно цветами побаловаться, и будет небольшая самобытность Smile

И желательно бы сайт русифицировать все-таки.
Вот модуль для этого - https://drupal.org/project/l10n_update.

24 марта 2014 в 14:23

Там в флаговом модуле, насколько я помню, немного код поменялся от версии 7.2 к версии 7.3.

Насчет rules - можно сделать так, если есть такая уж необходимость в rules.
Взять rule на изменение флага и на него повесить выполнение php-кода, который будет запрещать для ноды комментирование. То есть, код, похожий на тот, который Вы привели, только там будут другие переменные для работы с нодой, для флага и т.д.

24 марта 2014 в 14:02

Ну да, документация на уровне комментариев к функциям + есть раздел на сайте drupal.org.
Ну, в принципе, всё более-менее понятно.

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

23 марта 2014 в 17:29

Так а для чего на данном этапе Вам drush и git ?
Да и phpmyadmin на клиенте особо не нужен.
Разве нет под Ubuntu какого-нибудь бесплатного редактора mysql, чтобы можно было работать не через командную строку ?
А в качестве неплохого бесплатного редактора под drupal, чтобы код набивать, попробуйте NetBeans.

23 марта 2014 в 17:17

При данном дизайне у пользователя может появиться желание поперетаскивать кнопку мышкой от одного пункта к другому.
Разве чекбоксы с радиокнопками для этого подойдут ?

23 марта 2014 в 17:00

По идее, чтобы запретить комментарии для отдельной ноды, нужно поле comment в этой ноде выставить в 1.

А почему бы Вам не сделать это с помощью хука hook_flag_flag (см. файл flag.api.php, там много разных хуков), который бы перехватывался при установке флага ?

Или более "дубовый" способ - определяете свой node-ВАШ_ТИП_НОДЫ.tpl.php и в нём руками делаете проверку - если такой-то флаг установлен, то форму ввода нового комментария не отображать.

12 марта 2014 в 0:00

В данном случае у Вас получается три признака:
1. подразделение (цех такой-то, склад такой-то, столовая и т.д.)
2. должность (инженер, мастер, грузчик, уборщица)
3. разряд (или категория) (1-я категория, 2-я категория, ведущий, главный, 5-й разряд и т.д.)
Причем, третий признак - необязателен. Если у данной должности нет разряда или категории, то оставить пустым.

Всё это можно задать как термины таксономии разных словарей.

11 марта 2014 в 23:32

Думаю, руками описываешь через hook_menu taxonomy/term/%taxonomy_term/all, код этого можно скопировать с кода taxonomy/term/%taxonomy_term, только функцию получения списка нод taxonomy_select_nodes заменяешь своей функцией, которая будет брать не только ноды, связанные с данным термином, но и ноды, связанные с его потомками.

11 марта 2014 в 21:39

Как реализовать "на модулях" - трудно сказать.

Как реализовать с помощью программирования - способов довольно много.

Например, все эти чекбоксы - элементы одной большой формы, а цифры, которые с ними связаны можно хранить в ассоциативном массиве на JavaScript. Ну а обработку нажатия на каждый чекбокс делать с помощью JQuery. Ассоциативный массив можно или формировать и хранить в коде страницы, или, к примеру, сформировать сразу после загрузки страницы с помощью AJAX-запроса.

13 февраля 2014 в 14:42

Вот, например, рассказывается здесь
http://www.thecarneyeffect.co.uk/themeing-form-table-draggable-rows-drup...
http://xandeadx.ru/blog/drupal/147

А лучше всего - посмотреть, как реализовано в исходниках
Смотрите, по какому адресу эта форма отображается, далее по этому адресу поиском находите функцию hook_menu и смотрите её код.

13 февраля 2014 в 9:01

Здесь имеется в виду следующее.
Бывает, что на сайте нужно, чтобы были страницы с определенными адресами, например, http://site.ru/aaa/bbb/ccc и определенным содержимым, которое нужно выводить по этим адресам.
То есть, это будет не содержимое ноды и не views.
Вот как раз для определения таких страниц и определенного содержимого и служит hook_menu.
Причем, один hook_menu может задавать не одну, а множество страниц, если адрес задан как aaa/%/bbb или aaa/%bbb/ccc. Об этом рассказывается в книге, почитайте.

12 февраля 2014 в 23:34

А если сделать так ?
C помощью средств Form API собираете форму фильтров в зависимости от категории товара, ну а далее - в зависимости от того, что выбрано в форме, собираете SQL-запрос, запускаете его и выводите результат.
То что неизвестно, сколько времени нужно проразбираться с views, чтобы это всё реализовать.

12 февраля 2014 в 23:14

В своем модуле или в теме пишите функцию, которая принимает nid и возвращает строку с количеством комментариев, а это количество там же можно получить с помощью несложного SQL-запроса.
Далее в Display Suite делаете кодовое поле, в котором прописываете вызов данной функции и вывод на экран её результата.

12 февраля 2014 в 23:09

Посмотрел на оглавление тем в курсах. По моему, книги Тодда Томлинсона хватит с головой, чтобы это же самое пройти самостоятельно.

Плюс много хороших блогов в помощь.

11 февраля 2014 в 17:55

Знаете, я посмотрел на сайт ...

Вообще, странно, что по сути обычный сайт, как у Вас, отъедает память и ему не хватает 128M.

Может быть, модули какие-то самописные и недостаточно качественные используются ?

Попробуйте с Devel поэкспериментировать, вот есть хорошая статья о производительности
http://drupalace.ru/lesson/proizvoditelnost-sayta-na-drupal-analiz-serve...

11 февраля 2014 в 15:34

Так это Вы планируете делать проект, чтобы в дальнейшем его развивать ?
Или это будет сайт для внутреннего употребления.

Если первое, то тут еще подумайте, как будете всё это интегрировать с нормальным дизайном. Чтобы с этим потом смогли работать и обычные посетители сайта.

11 февраля 2014 в 15:32

Значит, по какой-то причине возникает нехватка памяти.
Нужно или с помощью модуля devel попробовать найти, где отъедается память и далее оптимизировать.
Или, что проще всего, перейти на нормальный хостинг, где ограничений поменьше.
Например, можно выбрать облачный хостинг https://dh.it-patrol.ru/drupal_hosting/dhelastic, как раз оптимизирован под Drupal.

9 февраля 2014 в 22:48

Если Вы знаете JavaScript/JQuery, то без особых проблем подключите вот эту библиотеку http://www.plupload.com/

Там есть и примеры с исходниками, и очень хорошая документация.