如果尝试编辑评论,注释创建日期会更改



我正在为 Drupal 7 开发一个模块,我遇到了一个关于评论的奇怪问题。关于注释的创建和修改日期。

如果我尝试使用权限编辑评论"Administer comments and comment settings""comment"数据库中的创建日期保持不变,而更改的日期被修改..所以一切都是正确的。

但是,如果您是没有权限"Administer comments and comment settings"的注册用户并尝试编辑评论,则两个日期(创建和更改)都将更改

....即使在评论的标题中,日期也会更新

"Submitted by user on Wed, 19/02/2014 - 21:44"

修改当前日期。怎么可能?这是一个评论模块问题?

如果编辑评论,我需要创建日期保持不变。这没有管理权限。

PS:我正在研究hook_preprocess_comment.

不久前我遇到了这个问题。

我和一位同事拼凑了一个自定义模块来解决这个问题。以下是当前在我们的 D7 (7.26) 站点上运行的代码:

/**
 * @file
 * Fixes a bug where Drupal doesn't retain the creation date of comments.
 */
 /**
  * Implements hook_comment_presave().
  */
 function comment_fix_comment_presave($comment) {
    $data = db_query('SELECT created FROM {comment} WHERE cid = :cid', 
        array(':cid' => $comment->cid))->fetchAll();
    if (!empty($data)) {
        $comment->created = $data[0]->created;
    }
 }

最新更新