Categories

Expandable Dashboard Recent Comments

Author: Scott Reilly
Version: 3.0
First released: 2009-06-11
Last update: 2024-09-11
Compatibility: WP 4.6 – 6.6.2
Download: [ zip ]
Description:

Enables in-place expansion of excerpts in the admin dashboard 'Comments' section of the 'Activity' widget to view full comments.

Extended Description

By default, the ‘Comments’ section of the ‘Activity’ admin dashboard widget only shows an excerpt for the comments, truncating the content of the comments to the first 20 words while at the same time stripping out all markup.

This plugin adds a link at the end of the comment actions row (the links for the comment that become visible under the comment when you hover over the comment). The “Show more” link, when clicked, will replace the excerpt with the full comment. The full comment will include all markup, including originally utilized markup and changes applied via filters, plugins, etc (such as shortcode expansion, smilies, paragraphing, etc). The full comment can be switched back to the excerpt by clicking the “Show less” link (which replaces the “Show more” link when the comment is expanded).

“In-place expansion” refers to the ability to click the link to see the full comment and it will be presented in place of the excerpt without requiring a page reload or navigation.

NOTE: This plugin only works for users who have JavaScript enabled.

Links: Plugin Homepage | Plugin Directory Page | GitHub | Author Homepage

Hooks

The plugin exposes one filter for hooking. Such code should ideally be put into a mu-plugin or site-specific plugin (which is beyond the scope of this readme to explain).

c2c_expandable_dashboard_recent_comments_start_expanded (filter)

The ‘c2c_expandable_dashboard_recent_comments_start_expanded’ hook allows you to configure the ‘Recent Comments’ admin dashboard widget initially display all comments in their expanded state (i.e. not excerpted).

Arguments:

  • $default (boolean): The default state, which is ‘false’ (therefore comments are initially shown excerpted)
  • $comment (object) : The comment object being displayed

Example:

// Initially show dashboard comments fully expanded
add_filter( 'c2c_expandable_dashboard_recent_comments_start_expanded', '__return_true' );

Find out more at the plugin’s WordPress Plugin Repository page.

Screenshots

Click to see full-size image.

  1. A screenshot of the 'Recent Comments' admin dashboard widget with the plugin active, showing comments that have been truncated/excerpted by WordPress (the 2nd, 3rd, and 5th listed) and the entirety of 2 short comments. The truncated comments each display a "(show more)" link allowing for the full comment text to be seen. Also note the 'Expand All' and 'Collapse All' links added to the bottom of the widget.

    A screenshot of the ‘Recent Comments’ admin dashboard widget with the plugin active, showing comments that have been truncated/excerpted by WordPress (the 2nd, 3rd, and 5th listed) and the entirety of 2 short comments. The truncated comments each display a “(show more)” link allowing for the full comment text to be seen. Also note the ‘Expand All’ and ‘Collapse All’ links added to the bottom of the widget.

  2. A screenshot of the 'Recent Comments' admin dashboard page with the plugin active, now showing the first excerpted comment (the second comment in the list) fully in-place expanded and with markup and formatting applied.

    A screenshot of the ‘Recent Comments’ admin dashboard page with the plugin active, now showing the first excerpted comment (the second comment in the list) fully in-place expanded and with markup and formatting applied.

Installation

  1. Install via the built-in WordPress plugin installer. Or download and unzip expandable-dashboard-recent-comments.zip inside the plugins directory for your site (typically wp-content/plugins/)
  2. Activate the plugin through the ‘Plugins’ admin menu in WordPress
  3. Visit the admin dashboard and check out the ‘Comments’ section of the ‘Activity’ widget (assuming you have recent comments and that one or more of them have been automatically excerpted)

Release Log

3.0 (2024-09-08)

  • UI:
    • New: Add ARIA attributes to improve accessibility
      • Add aria-controls and aria-expanded attributes to excerpt toggle links
      • Add aria-hidden attributes to comments excerpt and full divs as appropriate
    • Change: Move the “Show more/less” links inline with the excerpt and full comment body rather than being comment row actions
    • Change: Move the “Collapse/Expand all” links to alongside the comment filter links rather than below
    • Change: Add ‘count’ class to the “Expand/Collapse All” links to match styling of WP admin
    • Change: Add separator before “Expand All” link since the preceeding “Trash” link omits it
    • Change: Move ‘hide-if-no-js’ class up into link container classes (added if necessary) so link-adjacent text can be hidden as well
  • Documentation:
    • Change: Note compatibility through WP 6.6+
    • Change: Update copyright date (2024)
    • Change: Reduce number of ‘Tags’ from readme.txt
    • Change: Update screenshots
    • Change: Tweak text formatting in README.md
  • Internals:
    • Change: Add ELLIPSIS constant for ellipsis string and use it rather than harcoding string in various places
    • Change: Prevent translations from containing unintended markup
    • Change: Explicitly assign an array key to the added comment row action links
    • Change: Define a version number when registering the styles
    • Change: Bail earlier in functions when possible
    • Change: Prevent unnecessary tabbed whitespace output
  • Packaging/development:
    • Change: Remove development and testing-related files from release packaging
    • New: Add .gitignore file
    • Unit tests:
      • Allow tests to run against current versions of WordPress
      • New: Add composer.json for PHPUnit Polyfill dependency
      • Hardening: Prevent direct web access to bootstrap.php
      • Change: In bootstrap, store path to plugin directory in a constant
      • Change: Prevent PHP warnings due to missing core-related generated files
    • New: Add a potential TODO item

2.8.2 (2021-09-16)

  • Change: Note compatibility through WP 5.8+
  • Unit tests:
    • Change: Restructure unit test directories
      • Change: Move phpunit/ into tests/
      • Change: Move phpunit/bin into tests/
    • Change: Remove ‘test-‘ prefix from unit test file
    • Change: In bootstrap, store path to plugin file constant
    • Change: In bootstrap, add backcompat for PHPUnit pre-v6.0

2.8.1 (2021-04-10)

  • Change: Escape text used in markup attributes (hardening)
  • Change: Note compatibility through WP 5.7+
  • Change: Update copyright date (2021)

Copyright & Disclaimer

Copyright © 2009-2024 by Scott Reilly (aka coffee2code)

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Discussion / Support

Have any questions, comments, or suggestions? Please provide them via the plugin’s WordPress.org support forum. I’ll do my best to reply in a timely fashion and help as best I can.

Unfortunately, I cannot provide guaranteed support, nor do I provide support via any other means.

Was this plugin useful useful to you? Consider giving it a rating. If you’re inclined to give it a poor rating, please first post to the support forum to give me a chance to address or explain the situation.

2 replies on “Expandable Dashboard Recent Comments”