trash_comment
No security coverage
Trash Comment extends the Trash module to support soft-deletion of comments.
When a comment is trashed, it is not removed from the thread. Instead, it remains in place as a placeholder displaying "This comment has been deleted." — preserving the visual thread structure and keeping reply chains intact. This mirrors the behavior users know from platforms like YouTube, Reddit, or GitHub.
Features
- Soft-delete for comments — Trashed comments are hidden from regular display but remain in the database and can be restored at any time.
- Thread-preserving placeholders — Deleted comments stay in position, showing a neutral placeholder message so that nested replies remain visually connected.
- Trash admin integration — Comment bundles appear in the Trash module's settings form, allowing granular control over which comment types support soft-deletion.
- Access control — Trashed comments cannot be edited or deleted through the UI, preventing accidental modifications.
- Trash context support — Administrators with the "view deleted entities" permission can view original comment content via the Trash overview.
- No custom database tables — Works entirely through Drupal's entity API and Trash module hooks, keeping the architecture lean and maintainable.
Requirements
- Trash (^3.0)
- Comment (Drupal core)
How it works
The module replaces the default comment storage to include trashed comments in thread queries (via TrashManager::executeInTrashContext()). At render time, trashed comments are shown as anonymous placeholders through hook_preprocess_comment. No custom entities, database tables, or templates are needed.