Display a package’s version history in a beautiful, interactive timeline format. Perfect for showcasing release notes, update history, and feature announcements.
Basic Syntax
[wpdm_changelog id="123"]
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
id | integer | required | The package/post ID to display changelog for. |
title | string | "Changelog" | Header title displayed above the timeline. Use empty string to hide. |
show_empty | boolean | false | Show a message when no changelog entries exist. |
limit | integer | 0 | Maximum entries to display. Use 0 for unlimited. |
collapsed | boolean | true | Collapse all entries except the latest one. |
Usage Examples
Basic Changelog Display
Display all changelog entries for a package:
[wpdm_changelog id="123"]
Custom Title
Use a custom heading instead of “Changelog”:
[wpdm_changelog id="123" title="Version History"] [wpdm_changelog id="123" title="What's New"] [wpdm_changelog id="123" title=""]
Show Recent Entries Only
Display only the 5 most recent versions:
[wpdm_changelog id="123" limit="5"]
Expanded View
Show all entries expanded (not collapsed):
[wpdm_changelog id="123" collapsed="false"]
Complete Example
[wpdm_changelog id="456" title="Release Notes" limit="10" collapsed="false" show_empty="true"]
Visual Features
The changelog displays with modern styling:
- Timeline Layout – Entries connected by a gradient timeline line
- Latest Badge – Most recent version shows a pulsing “Latest” indicator
- Collapsible Cards – Click headers to expand/collapse entries
- Rich Content – Supports bold, italic, lists, links, and code snippets
- Dark Mode – Automatically adapts to dark mode themes
Adding Changelog Entries
To add changelog entries to a package:
- Edit the package in WordPress admin
- Find the Changelog metabox
- Enter version number and release date
- Add your change notes (supports formatting)
- Click “Add Entry” to save
PHP Usage
Display changelog directly in theme templates:
<?php
// Using shortcode
echo do_shortcode('[wpdm_changelog id="123"]');
// Using PackageController directly
$controller = new WPDMPackagePackageController();
echo $controller->changelog(123, [
'title' => 'Version History',
'limit' => 5,
'collapsed' => true
]);
?>
Tips
- Use semantic versioning (1.0.0, 1.1.0, 2.0.0) for clear version progression
- Group changes by type: Added, Changed, Fixed, Removed
- Link to related documentation or tickets in your change notes
- The
[changelog]template tag also works in page templates
Related
- [wpdm_package] – Display single package
- Creating Packages – Package management guide