Блог пользователя - iryston

Обновление Drupal (новая версия Drupal 8.4.0)

Аватар пользователя iryston

Оригинал (опубликован Gábor Hojtsy 4 октября 2017 года): Drupal 8.4.0 is now available

8 Спасибо

Возможен ли вывод поля CCK со своими настройками?

Аватар пользователя iryston

Здравствуйте!
Пытаюсь вывести на странице поле CCK из field_image
Делаю это так:

0 Спасибо

Проблема с добавлением тегов к ноде

Аватар пользователя iryston

Столкнулся сегодня со странной штукой.
Если словарь в таксономии настроен на отображение тегов то его не видно в режиме создания/редактирования ноды.
Грубо говоря по адресу node/add/story видны только словари не являющиеся тегами.
соответственно не получается привязать ноду к тегу, или создать новый из режима редактирования.
Кто нибудь сталкивался с таким?

0 Спасибо

Как получить в переменную время создания кеша

Аватар пользователя iryston

Подскажите, знатоки Drupal!
Как получить в переменную время создания кеша? Долгие поиски ни к чему не привели.
Нужно получить дату созания кеша, и, если она меньше даты последней публикации, то произвести какое либо действие.
Все это нужно чтобы нормально отрабатывалась публикация отложенных новстей точно вовремя.
Решение организовано так:
используется db_rewrite_sql
пишется простенький модуль "deferrednode",
дата проставляется в поле "дата создания" при создании/редактировании материала

function deferrednode_db_rewrite_sql($query, $primary_table, $primary_field, $args) {
  switch ($primary_field) {
    case 'nid':
    if(!user_access('administer nodes')){
      // this query deals with node objects
      $return = array();
      if ($primary_table != 'n') {
        $return['join'] = "LEFT JOIN {node} n ON $primary_table.nid = n.nid";
      }
     // $return['where'] = 'created <' . mktime(0, 0, 0, 1, 1, 2005);
      $return['where'] = 'n.created <' . time();
      return $return;
      break;
      }
  }
}
 
function deferrednode_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {
  if($op=='view' && $node->created > time() && !user_access('administer nodes')) drupal_access_denied();
  }

Проблема в том, что при просмотре анонимными посетителями, материал не высвечивается. Происходит это потому, что кэш Drupal-а обновляется в момент публикации авторизованым пользователем, а так как публикация запланирована на будущее, то в кеш она не всегда попадает.
Для решения проблемы нужно сюда добавить следующую проверку:

0 Спасибо

Счетчик символов в поле заголовка, при добавлении материала.

Аватар пользователя iryston

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

По сути все сводится к замене данного куска кода:

<div id="edit-title-wrapper" class="form-item">
 <label for="edit-title">Название: <span title="Обязательное поле" class="form-required">*</span></label>
<input type="text" class="form-text required" value="" size="60" id="edit-title" name="title" maxlength="255">
</div>

Вот на такой:

<div id="edit-title-wrapper" class="form-item">
 <label for="edit-title">Название: <span title="Обязательное поле" class="form-required">*</span></label>
 <input type="text" class="form-text required" value="" size="60" id="edit-title" name="title" maxlength="255">
 <div><small>Количество символов:</small> <span id="symbolsCounter" class="cvet"></span></div>
</div>
<script type="text/javascript">
$(function() {
var ta = $("#edit-title");
var counter = $("#symbolsCounter");
counter.html(ta.val().length);
ta.bind("keyup input", function() {
updateCounter();
});
function updateCounter() {
counter.html(ta.val().length);
}
});
</script>

А как это реализовать на практике? Через _form_alter или ...
немного не въезжаю.

0 Спасибо

Как отключить плавающие заголовки таблиц?

Аватар пользователя iryston

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

0 Спасибо

[РЕШЕНО] Модуль для экспорта в Яндекс.Новости

Аватар пользователя iryston

Встала у меня задача перевести один довольно популярный сайт на Drupal. При этом необходимо полностью повторить функционал, а в некоторых частях и расширить.
Поскольку сайт уже несколько лет висит в яндекс.новостях, стал искать подходящий модуль. Потратив на поиски три дня, я, честно говоря, обломался, так как ничего подходящего не нашел. Варианты делать экспорт через всеми любимый Views меня никак не устраивали, да и рабочих модулей под 6-й друпал и 2-й вьюс нет. Или я совсем искать не умею.
Вот сел сегодня ночью и нарисовал нечто. Вроде работает. Фид выдает по адресу rssyandex.xml

Что можно сделать, но я делать не буду (пока):

Страничку настройки модуля в админке,
Возможность настройки адреса выдачи фида,
0 Спасибо

Вырезаются первая и последняя недели календаря в феврале и марте (модуль archive)

Аватар пользователя iryston

Вот, как я тут и обещал :)
наступил февраль и вот такой странный глюк, в блоке с календарем, выводимом модулем archive не показываются первая и последняя недели.
Пример тут http://andyceo.ruware.com/
Глюк проявляется если в настройках друпала первым днем недели указан понедельник, а месяц начинается с воскресенья.
Получается 2 ближайших месяца модуль будет глючить.

0 Спасибо

Как в списке материалов сайта добавить отображение даты публикации

Аватар пользователя iryston

Подскажите, знатоки Друпала,
как в списке материалов сайта admin/content/node добавить отображение даты публикации.

Пробовал пользоваться модулем cmf, но он пока сырой какой-то.
на связке
Drupal v6.9
CMF v6.x-1.4
новости не удалялись, выводились сообщения об ошибках:
* warning: Missing argument 2 for node_multiple_delete_confirm() in *\www\modules\node\node.admin.inc on line 600.
* warning: Invalid argument supplied for foreach() in *\www\modules\node\node.admin.inc on line 604.

Исправил так,
в 96 строке файла cmf.module сделал замену, было:

return drupal_get_form('node_multiple_delete_confirm');

на вот это:

return drupal_get_form('node_multiple_delete_confirm', $_POST['nodes']);

Попутно запостил сюда
http://drupal.org/node/361119, вроде кому-то уже помогло :)

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

0 Спасибо

Вырезаются первая и последняя недели (drupal 6.8 модуль archive)

Аватар пользователя iryston

Разрабатываю сайт на Друпал. Столкнулся с такой проблемой:
Перевел системные часы на февраль, хотел посмотреть появится ли стрелка для листания месяцев в блоке с календарем.
Посмотрел на сайт а в блоке который выводится модулем архив первая и последняя недели отсутствуют. Путем экспериментов выяснил, что проблема возникает только когда первое число месяца выпадает на воскресенье, а в настройках Drupal-а первым днем недели установлен понедельник.
В 2009 году такие глюки будут в феврале и в марте.

Кстати, возникшую недано проблему с отрицательными датами в календаре можно решить так:

// $num_days_prev = cal_days_in_month(CAL_GREGORIAN, $month-1, $year); // OLD
$num_days_prev = cal_days_in_month(CAL_GREGORIAN, $prev_month, $prev_year); // NEW

Закомментировать первую строчку и дописать под ней вторую в файле archive.module

P.S. Может кто знает, как вывести записи из категории за определенную дату сниппетом?

0 Спасибо

Нужны платные консультации по переводу сайта на Друпал

Аватар пользователя iryston

Здравствуйте, есть задача перевести сайт на Друпал с самописного движка.
Сайт делать буду сам, но готов оплатить консультацию. (500 руб. Яндекс-деньги).
Нужно определиться с версией Друпала и модулями, а также движком шаблонов. Возможно понадобится помощь в настройке модулей.

Основные требования к сайту:

Низкая нагрузка на базу данных (MySQL),
Мультиязычность (для каждого материала может быть 1-3 перевода),
При просмотре конкретного языка должны отображаться только материалы на данном языке,
Тип URL - example.com/news/12345.html,
Экспорт в Яндекс-новости с возможностью исключать отдельные новости из экспорта,
Поиск по сайту,
Связка материалов из разных разделов по сюжету,
Удобная админпанель.

На сайте имеются следующие разделы:
Новости, Аналитика, Интервью, Библиотека, Фотогалерея, Законодательные Акты, О нас, Обратная связь.
Имеется Архив материалов (выводится на отдельной странице в виде ссылок год-месяцы) , Календарь, Голосования.

На странице в разных блоках может выводиться информация из разных разделов.

0 Спасибо