Description
ArtD Content Mirror synchronizes articles from an external RSS feed into native WordPress posts.
The plugin is designed for sites where content is authored in another system but should also exist as normal WordPress posts. It updates only posts it manages and protects unrelated local content.
Core features:
- Imports full RSS content into native WordPress posts.
- Uses GUID + source URL identity to prevent duplicate imports.
- Uses SHA-256 fingerprints to detect meaningful content changes.
- Stores a snapshot before updating a managed post.
- Protects posts that were not created or adopted by Content Mirror.
- Supports generic RSS feeds and Blogger pagination.
- Configurable scheduled checks from 5 minutes to 24 hours.
- Manual sync from WordPress admin.
- Feed analysis for source health, item counts, media and metadata.
- Remote image mode: source images are not duplicated into the Media Library.
- Includes a native Gutenberg block: Content Mirror Posts.
- Includes a homepage/latest-posts shortcode:
[artdcm_posts]. - Includes a responsive archive shortcode:
[artdcm_archive]. - Integrates with the WordPress Abilities API for permission-checked status, settings and sync actions.
- Includes archive appearance controls for columns, spacing, image ratio, card style and metadata visibility.
- Safe deactivation and uninstall: mirrored posts and saved settings are preserved.
ArtD Content Mirror does not require a license key and does not contact ArtD Labs servers.
External services
ArtD Content Mirror connects only to sources needed for the feature you configure.
- User-configured RSS feed
The plugin requests the RSS URL entered in Settings > Content Mirror. The request is required to analyze and synchronize the feed. The destination server receives the normal information sent with an HTTP request, including the requesting server IP address and the plugin user-agent string.
The terms and privacy policy that apply are those of the RSS provider selected by the site administrator.
When an imported post has no usable image, the plugin may request the source article URL from the same external source in order to read a public og:image value. This request is cached for 24 hours.
- Remote article images
When mirrored content contains external images, visitor browsers may load those images directly from the source host because the plugin uses remote-media mode by default.
No telemetry, analytics, license validation or update checks are sent to ArtD Labs by the WordPress.org edition.
Privacy
The plugin does not collect or transmit site-owner data to ArtD Labs.
Content synchronized from the configured RSS source is stored as WordPress post data and post metadata. Remote images remain hosted by their source unless the site owner changes that behavior outside this plugin.
Blocks
This plugin provides 1 block.
- Content Mirror Posts
Installation
- Install and activate ArtD Content Mirror.
- Go to Settings > Content Mirror.
- Enter the RSS Feed URL.
- Choose the sync interval and rendering profile.
- Save settings.
- Click Sync now.
- Add the Content Mirror Posts block in Gutenberg, or use
[artdcm_posts limit="8" columns="4"]in Elementor, WPBakery, Divi, Bricks or any shortcode-capable builder. - Optional: add
[artdcm_archive per_page="12"]to a page for the full searchable archive.
FAQ
-
Does the plugin overwrite normal WordPress posts?
-
No. Automatic updates are limited to posts marked as managed by ArtD Content Mirror. Existing local posts are protected.
-
Does it copy images into the Media Library?
-
No. The WordPress.org edition uses remote-media mode. Image URLs remain external.
-
What happens if the source feed contains only a short excerpt?
-
The plugin contains a safety check that prevents a short fallback description from overwriting substantially longer existing managed content.
-
What does uninstall remove?
-
Runtime status, logs and scheduled hooks are removed. Mirrored posts and saved settings are intentionally preserved.
-
Does this plugin use a proprietary update server?
-
No. The WordPress.org edition relies on the standard WordPress.org plugin update system.
Reviews
Contributors & Developers
“ArtD Content Mirror” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “ArtD Content Mirror” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
0.9.2
- Replaced generic global prefixes and legacy option/transient names with the plugin-specific
artdcm_/ARTDCM_prefix. - Removed the legacy generic
pm_blog_sync_statusoption. - Moved frontend CSS to an enqueued stylesheet and
wp_add_inline_style()for validated dynamic appearance settings. - Renamed public shortcodes to
[artdcm_posts]and[artdcm_archive]before the first public directory release. - Updated the Gutenberg block namespace to
artd-content-mirror/posts.
0.9.1
- Fixed Plugin Check escaping, nonce, sanitization and translator-comment findings.
- Removed provider-specific remote image URL rewriting and hard-coded YouTube thumbnail fallback from the repository edition.
- Preserved feed-provided remote images without provider-specific offloading logic.
- Updated WordPress.org external-service disclosures to match the repository code.
0.9.0
- First WordPress.org repository candidate.
- Removed commercial license gating and external license-server communication.
- Removed the private custom plugin updater; repository updates use WordPress.org.
- Removed customer/theme-specific frontend selectors and URLs.
- Added generic, theme-independent latest-posts and archive presentation shortcodes.
- Added WordPress Abilities API integration (WordPress 6.9+).
- Added source
og:imageand administrator-configured fallback-image handling. - Rebased the public repository candidate on the current 0.8.50 commercial code line while excluding commercial-only and customer-specific code.
- Kept RSS/Blogger sync, managed-post protection, SHA-256 change detection and snapshots.
- Added GPLv2-or-later metadata and WordPress.org external-service/privacy documentation.
