Вы бы хотели создать для этого специальный модуль? Если это так, я могу привести несколько примеров кода для некоторых решений. Как правило, это был один крюк cron, который удалял или удалял узлы, прошедшие «до настоящего времени».
В приведенной ссылке посмотрите комментарий: https://www.drupal.org/node/28142#comment-48472 Это дает пример кода «ok», который может удалить узел, когда он старше 30 дней. Все, что вам нужно сделать, это изменить db_query.
Если вы используете CCK для хранения поля даты. Прежде всего убедитесь, что это относится к нескольким типам контента, это означает, что в настоящее время поле CCK будет разделено на отдельную таблицу, вместо этого это произойдет в будущем, и это не сработает.
Что вы будете тогда смотреть на это делать запрос типа:
$ запрос = «SELECT нидь, UID FROM {узла} п LEFT JOIN {content_field_date} d ON n.nid = d.nid WHERE d.field_date_value < '% s' "; Где «content_field_date» - это имя таблицы, в которой хранится дата {content_ {machine_name}} Где 'field_date_value' - это поле в этой таблице, в котором хранится это значение {{machine_name} _ {field_type}}
В зависимости от того, как содержимое хранится в поле «field_date_value», вам может потребоваться преобразовать его в штамп времени Unix с помощью функции MySQL: UNIX_TIMESTAMP, например UNIX_TIMESTAMP (d.field_date_value).
Да, это подход, который мне нужен для решения этой проблемы, пожалуйста, я буду очень рад, если вы сможете помочь в создании этого настраиваемого модуля. – Russo
Я нахожу это в drupal.org пользователем robertDouglass здесь: https: // www.drupal.org/node/28142 С помощью этого кода вы можете удалять узлы с помощью cron, но проблема в том, что я не понимаю, как получить поле даты и сравнить его, чтобы я мог знать, является ли пост старше моего "встретиться". – Russo