XV Random Quotes helps you collect and display random quotes everywhere on your WordPress site. Built with modern WordPress standards using Custom Post Types, Gutenberg blocks, and the REST API.
🎯 Modern WordPress Integration
- Custom Post Type – Quotes are managed as native WordPress posts with full revision history
- Gutenberg Blocks – Three dedicated blocks: Random Quote, Specific Quote, and List Quotes
- REST API – Access quotes programmatically for headless WordPress and custom integrations
- Taxonomy Support – Organize quotes with categories and authors (with URL support)
- Block Editor – Full support with dedicated meta boxes for quote content and source
✨ Key Features
- Multiple Display Methods – Widgets, shortcodes, template tags, and Gutenberg blocks
- AJAX-Powered Widgets – Automatic quote rotation without page reload (configurable timer)
- Category Filtering – Display quotes from specific categories or all quotes
- Author Management – Track quote authors with optional URL links
- Flexible Ordering – Random or sequential quote display
- Native Styling Toggle – Use plugin’s default styling or your theme’s styles
- Complete Backward Compatibility – All legacy shortcodes and template tags still work
📦 Display Options
- Gutenberg Blocks:
- Random Quote Block – Display one or more random quotes
- Specific Quote Block – Show a particular quote by ID
- List Quotes Block – Paginated list of quotes with filtering
- Widgets: Sidebar widget with AJAX refresh and category filtering
- Shortcodes:
[stray-random],[stray-id],[stray-all]for posts and pages - Template Tags:
stray_random_quote(),stray_a_quote()for theme integration - REST API:
/wp-json/xv-random-quotes/v1/quote/randomfor custom integrations
🔄 Automatic Migration
Upgrading from v1.x? The plugin automatically migrates your existing quotes to the new Custom Post Type system. Small databases (≤500 quotes) migrate instantly on activation. Large databases use a batch migration system with progress tracking.
🎨 Customization
- Customize HTML wrappers (before/after quote, author, source)
- Control author and source link formatting
- AJAX loading messages and animations
- Native WordPress styling or custom CSS
See RELEASE_NOTES.md for complete v2.0 features and migration guide.
Credits
- For main development of Stray Quotes, Ico
- For Multi-widget functionality, Millian’s tutorial
- For help in developing user-end AJAX functionality, AgentSmith
- For search functionality and bugfixing, Sergey Sirotkin
Localization
- German, thanks to Markus Griesbach
- Chinese, thanks to WGMking
- Croatian, thanks to Rajic
- Danish, thanks to Georg
Actually, these translations are not updated to the latest version. I am looking for new localizers, all languages welcome!
Please note: the best way to submit new or updated translations is to send me a direct link to the localization files in the contact page of my website. This way the files are made available to the users sooner, and without waiting for a new release.
Please note: If you want to create a localized copy of XV Random Quotes, consider skipping the help page and translate the rest. This will save you quite some time. The help page has a lot of text.
Known Issues
None currently reported for v2.0. If you find an issue, please report it on GitHub.
