| 开发者 |
neosmartapps
neoparker007 |
|---|---|
| 更新时间 | 2026年4月6日 11:46 |
| 捐献地址: | 去捐款 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 6.9 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
Self-hosted. Privacy-first. Fully yours.Tempmails turns your WordPress site into a self-hosted temporary email service. Visitors generate a random disposable email address, receive messages in a real-time inbox, and discard them when done — all without leaving your site. Unlike third-party services, Tempmails runs entirely on your own server and IMAP mailbox. You own the data, the domain, and the brand. 🔒 No third-party email APIs 📬 Real IMAP inbox — not a simulation 🎨 Material Design 3 UI — beautiful out of the box ⚡ AJAX-powered — no page reloads 🚀 Quick Links Everything you need to get started, get help, and stay connected:
.pot file included[tempmails_inbox]
This renders the full inbox UI — email generation, copy button,
auto-refresh, message list, and message viewer modal.
Addon Ecosystem
Tempmails Core is frozen infrastructure. All new functionality is
delivered via addons using a documented, stable hook system — your site
never breaks on Core updates.
Available addon hooks cover: email generation, message routing, inbox
access control, multi-domain support, billing integration, and more.
See the Hooks section below for the full reference.
Privacy
Tempmails stores temporary email addresses in browser cookies to
maintain inbox sessions between page loads. No personal data is collected,
stored against user accounts, or transmitted to any external service.
See External Services below for details on the optional GitHub
ecosystem feed.
imap, mbstring, jsontempmails folder to /wp-content/plugins/ or install via
Plugins → Add New → Upload Pluginmail.yourdomain.com993 (SSL) or 143 (TLS)catch-all@yourdomain.com[tempmails_inbox]@yourdomain.com land in the single mailbox
Tempmails reads from.
In cPanel, set the Default Address for your domain to deliver to your
catch-all inbox:
*@yourdomain.com → catch-all@yourdomain.com
Hostinger users: enable catch-all under hPanel → Email → Default
Address. New to Hostinger? Get started here
(affiliate link) — their hPanel makes IMAP catch-all setup
straightforward even for beginners.
Server Cron (Recommended for Reliable Fetching)
WordPress cron only fires when your site receives traffic. For consistent
email delivery, add a real server cron job in cPanel → Cron Jobs:
* * * * * wget -q -O - https://yoursite.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Or using WP-CLI:
* * * * * cd /path/to/wordpress && wp cron event run --due-now >/dev/null 2>&1
No. Tempmails connects directly to your own IMAP mailbox. You need a mail server with catch-all forwarding — Hostinger, any cPanel-based host, or any standard IMAP server works.
The imap, mbstring, and json extensions must be enabled on your
server. Most shared hosting providers include these by default. The plugin
will display a clear error and refuse to activate if any are missing.
Yes. Go to Tempmails → Settings → Domains and add one domain per line. All listed domains must route their catch-all to your IMAP mailbox.
Tempmails uses soft delete. When a user deletes a message, the
to_address field is changed to an internal tombstone value rather than
removing the database row. Deleted messages never appear in inbox queries.
This behavior is permanent and guaranteed across all versions.
Yes. All user-facing text is translation-ready and overridable via filters. The Design Panel under Tempmails → Design lets you change colors, button labels, empty state text, and border radius — with a live preview.
Register your addon using the tempmails_registered_addons filter, then
hook into any documented action or filter. Core is frozen — all new
functionality must be delivered via addons. See the Hooks section for
the full reference.
Add these two lines to wp-config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
Tempmails logs all errors to the standard WordPress debug log at
/wp-content/debug.log and to the Addon Health page in admin.
<style> echo in Design admin page — static CSS
moved to assets/css/admin.css<style> echo with a registered dummy style handle using
wp_register_style() + wp_add_inline_style() — no more unescaped output<script> in shortcode output replaced with
wp_add_inline_script('tempmails-frontend', ...)<script> in ecosystem admin block replaced with
wp_add_inline_script('tempmails-admin', ...)tempmails_email_generated fires correctly on every email creationtempmails_inbox_accessed fires on every inbox viewtempmails_message_received fires when a new message is storedtempmails_message_marked_seen fires correctly on message readtempmails_message_deleted now correctly passes $email parametertempmails_cleanup_completed now passes deleted message countadmin.js) now correctly enqueued on all Tempmails
admin pagesTempmails_Addon_Handler — wraps all addon hooks in try/catch<> characters