Permalink Keeper

描述

Permalink Keeper is a WordPress plugin that automatically flushes your rewrite rules at regular intervals. This prevents 404 errors and maintains SEO integrity by ensuring your permalink structure stays up to date.

Why do you need this plugin?

  • Sites that frequently experience permalink issues after content updates
  • Sites that have migrated content or changed permalink settings
  • Sites with complex permalink structures that need regular rule refreshes
  • Sites that need consistent URL structure for SEO

Key Features

  • Automatically flushes rewrite rules (soft flush — no .htaccess rewrite)
  • Prevents 404 errors caused by stale rewrite rules
  • Configurable flush interval
  • Debug logging via WP_DEBUG_LOG
  • Status dashboard showing last run time
  • Multilingual support (English, Norwegian, Dutch, German, French, Italian, Spanish)
  • Minimal resource usage

安装

  1. Upload the permalink-keeper folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Go to Settings -> Permalink Keeper to configure the flush interval

常见问题

How often should I flush the rewrite rules?

For most sites, once per hour or once daily is sufficient. If you frequently publish new content or experience sporadic 404 errors, a shorter interval like every 15 or 30 minutes may help.

Will this affect my site’s performance?

No. The plugin uses a soft flush (flush_rewrite_rules(false)) which only updates the rewrite rules in the database without touching .htaccess. It runs in the background via WP-Cron.

Does the plugin support multilingualism?

Yes, the plugin currently supports:
* English (en_US)
* Norwegian Bokmål (nb_NO)
* Dutch (nl_NL)
* German (de_DE)
* French (fr_FR)
* Italian (it_IT)
* Spanish (es_ES)

评价

此插件暂无评价。

贡献者及开发者

「Permalink Keeper」是开源软件。 以下人员对此插件做出了贡献。

贡献者

帮助将「Permalink Keeper」翻译成简体中文。

对开发感兴趣吗?

您可以浏览代码,查看SVN仓库,或通过RSS订阅开发日志

更新日志

1.2.0

  • Changed core logic to use flush_rewrite_rules() — safer and more correct approach
  • Added register_activation_hook to set defaults and schedule cron on activation
  • Removed batch processing, post type selection, and batch size settings
  • Removed unnecessary DB query on every request (init_settings via init hook)
  • Updated Requires at least to 5.7
  • Tested up to WordPress 6.9.4

1.1.0

  • Fixed deactivation hook not clearing the scheduled cron event
  • Removed unused init() method
  • Added debug logging via WP_DEBUG_LOG
  • Added status dashboard on settings page
  • Added support for all public post types with selectable checkboxes
  • Added configurable batch size (10-500) for large sites
  • Applied WordPress PHP Coding Standards
  • Updated all translation files with new strings
  • Tested up to WordPress 6.9.1

1.0.0

  • Initial release
  • Automatic permalink updates
  • Configurable update interval
  • Multilingual support