| 开发者 | merkucio |
|---|---|
| 更新时间 | 2026年4月28日 23:26 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 6.9 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
herodotus_post Custom Post Type. You simply pick a day and a month from the custom date picker in the block editor, and your post will automatically appear on that exact day every single year.
Key Features:
[herodotus] or the included block to display events anywhere.[herodotus category="history"].[herodotus show_image="false"].wpml-config.xml for full multilingual compatibility.[herodotus] — show today's posts using global settings.[herodotus layout="compact"] — compact view, ideal for sidebars.[herodotus limit="5"] — limit to first 5 posts.[herodotus category="history"] — show posts from a specific category (use slug).[herodotus excerpt_words="15"] — set custom excerpt length.[herodotus show_image="false"] — hide images, show only title, excerpt and Read more.[herodotus order="DESC"] — reverse sort order for this instance (overrides the global setting).herodotus folder to the /wp-content/plugins/ directory.[herodotus] or the Herodotus Events Gutenberg block on any page or widget area.Herodotus is designed for creating "On This Day in History" sections on your website. You create posts tied to a specific day and month, and they automatically appear every year on that date. It is ideal for history blogs, music, art & educational sites, museum websites, anniversary trackers, and birthday calendars.
No. Herodotus uses its own dedicated Custom Post Type (herodotus_post). Your standard WordPress Posts, Pages, and any other content remain completely untouched.
Regular WordPress posts are tied to the date they were published and appear in chronological order. Herodotus posts are tied to a recurring day and month — they have no "publication date" in the traditional sense and will appear automatically every year on the same day.
Yes. You can set February 29th as the date. On non-leap years, this post will not be shown, which is the correct and expected behavior.
Use the shortcode [herodotus] in any post, page or text widget. Alternatively, use the included Herodotus Events Gutenberg block which you can find in the block inserter.
Yes. Use the category attribute with the category slug: [herodotus category="science"]. You can create and manage categories under Herodotus → Categories.
The compact layout ([herodotus layout="compact"]) shows posts with a small square thumbnail, title and a short excerpt — without the category label or Read more button. It is designed specifically for sidebar widgets where space is limited.
Yes. Use [herodotus show_image="false"] to hide all images including the default placeholder. Posts will show only the title, excerpt and — on full pages — the Read more link.
By default, a placeholder "No Image" graphic is shown. You can replace this placeholder with any image of your choice by going to Settings → Herodotus and uploading a custom Default Image.
Yes. Each shortcode instance is independent and can have its own layout, category, limit and other settings.
Herodotus uses WordPress transients to cache query results. The default cache lifetime is 3600 seconds (1 hour). You can adjust this under Settings → Herodotus → Cache Settings, or set it to 0 to disable caching entirely. The cache is automatically cleared whenever a Herodotus post is saved or deleted.
Yes. The plugin includes a wpml-config.xml file which automatically configures WPML to handle the custom post type, taxonomy and date meta fields correctly. Polylang works automatically as well since the CPT and taxonomy are registered with standard WordPress hooks. The cache key includes the current locale so different language versions are cached separately.
Yes. The plugin is fully internationalized. Translations are included for: Georgian (ka_GE), Russian (ru_RU), Ukrainian (uk), French (fr_FR), German (de_DE), Spanish (es_ES), Italian (it_IT) and Turkish (tr_TR). Additional translations can be contributed via the WordPress.org translation system (GlotPress).
The red warning appears when a Herodotus post does not have a day, month or year set. All three fields are required — posts without a complete date will never appear on the frontend. Simply click the date field in the Herodotus Date metabox (right sidebar) to set the date.
The ⚠ icon in the Herodotus Date or Year column means that post is missing date information and will not be shown on the frontend until the date is set.
Yes. Under Settings → Herodotus → General Settings you can choose between A → Z (alphabetical) and Z → A (reverse alphabetical) sorting. Events are always grouped by date first, then sorted by your chosen order.
The plugin stores Herodotus posts (as a custom post type), categories (as a custom taxonomy), plugin settings (in wp_options) and temporary cache (as transients). By default, all data is kept when the plugin is uninstalled. If you want all data to be permanently deleted on uninstall, enable the Remove Data on Uninstall option under Settings → Herodotus → Advanced.
Yes. Herodotus automatically adds Open Graph and Twitter Card meta tags on single event pages and category archive pages, enabling rich previews when sharing links on Facebook, Twitter/X, Telegram and other platforms. It also outputs JSON-LD Schema.org structured data (Article, Event, CollectionPage) to help search engines understand your content. If Yoast SEO, RankMath, AIOSEO or The SEO Framework is active, Herodotus automatically skips its own tags to avoid duplicates.
The shortcode [herodotus] works in any environment that supports standard WordPress shortcodes, including Elementor text/shortcode widgets, Divi Code modules and Beaver Builder HTML modules.
Yes. Herodotus has its own internal caching layer. It works alongside page-level caching plugins without conflict. Note that if you use aggressive full-page caching, the displayed date may be cached at the page level — consider excluding the pages with [herodotus] from full-page caching, or using a shorter cache TTL.
herodotus_post) and Custom Taxonomy (herodotus_category).[herodotus] with attributes: layout, limit, category, excerpt_words, show_image.list (standard page layout) and compact (sidebar/widget layout).wpml-config.xml.