[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fuM3-_QqhtzO_7GqeElV8MS0fo_qGkRWBJsdcV1_njXA":3},{"slug":4,"display_name":5,"profile_url":6,"plugin_count":7,"total_installs":8,"avg_security_score":9,"avg_patch_time_days":10,"trust_score":11,"computed_at":12,"plugins":13},"chrmrtns","Chris Martens","https:\u002F\u002Fprofiles.wordpress.org\u002Fchrmrtns\u002F",3,50,100,30,94,"2026-04-04T08:45:37.976Z",[14,36,56],{"slug":15,"name":16,"version":17,"author":5,"author_profile":6,"description":18,"short_description":19,"active_installs":10,"downloaded":20,"rating":21,"num_ratings":21,"last_updated":22,"tested_up_to":23,"requires_at_least":24,"requires_php":25,"tags":26,"homepage":32,"download_link":33,"security_score":9,"vuln_count":21,"unpatched_count":21,"last_vuln_date":34,"fetched_at":35},"keyless-auth","Keyless Auth – Login without Passwords","3.2.4","\u003Cp>Transform your WordPress login experience with passwordless authentication. Users simply enter their email address and receive a secure magic link – click to login instantly. It’s more secure than weak passwords and infinitely more user-friendly.\u003C\u002Fp>\n\u003Ch4>Why Choose Keyless Auth?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Enhanced Security\u003C\u002Fstrong>: No more weak, reused, or compromised passwords\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Better User Experience\u003C\u002Fstrong>: One click instead of remembering complex passwords\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Reduced Support\u003C\u002Fstrong>: Eliminate “forgot password” requests\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Modern Authentication\u003C\u002Fstrong>: Enterprise-grade security used by Slack, Medium, and others\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Security Hardening\u003C\u002Fstrong>: Built-in protection against brute force attacks and username enumeration\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Quick Start\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Install and activate the plugin\u003C\u002Fli>\n\u003Cli>Create a new page and add the shortcode \u003Ccode>[keyless-auth]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Configure email templates in \u003Cstrong>Keyless Auth \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Templates\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Done! Users can now login passwordlessly\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Core Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Ready to Use\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Magic Link Authentication\u003C\u002Fstrong> – Secure, one-time login links via email\u003Cbr \u002F>\n* \u003Cstrong>Two-Factor Authentication (2FA)\u003C\u002Fstrong> – Complete TOTP support with Google Authenticator\u003Cbr \u002F>\n* \u003Cstrong>Role-Based 2FA\u003C\u002Fstrong> – Require 2FA for specific user roles (admins, editors, etc.)\u003Cbr \u002F>\n* \u003Cstrong>Custom 2FA Setup URLs\u003C\u002Fstrong> – Direct users to branded frontend 2FA setup pages\u003Cbr \u002F>\n* \u003Cstrong>SMTP Integration\u003C\u002Fstrong> – Reliable email delivery through your mail server\u003Cbr \u002F>\n* \u003Cstrong>Email Templates\u003C\u002Fstrong> – Professional, customizable login emails\u003Cbr \u002F>\n* \u003Cstrong>Mail Logging\u003C\u002Fstrong> – Track all sent emails with delivery status\u003Cbr \u002F>\n* \u003Cstrong>Custom Database Tables\u003C\u002Fstrong> – Scalable architecture with dedicated audit logs\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Advanced Security\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Token Security\u003C\u002Fstrong>: 10-minute expiration, single-use tokens\u003Cbr \u002F>\n* \u003Cstrong>Audit Logging\u003C\u002Fstrong>: IP addresses, device types, login attempts\u003Cbr \u002F>\n* \u003Cstrong>Emergency Mode\u003C\u002Fstrong>: Grace period system with admin controls\u003Cbr \u002F>\n* \u003Cstrong>Secure Storage\u003C\u002Fstrong>: SMTP credentials in wp-config.php option\u003Cbr \u002F>\n* \u003Cstrong>XML-RPC Disable\u003C\u002Fstrong>: Block brute force attacks via XML-RPC interface\u003Cbr \u002F>\n* \u003Cstrong>Application Passwords Control\u003C\u002Fstrong>: Disable programmatic authentication when not needed\u003Cbr \u002F>\n* \u003Cstrong>User Enumeration Prevention\u003C\u002Fstrong>: Block username discovery attacks\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Customization\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>WYSIWYG Email Editor\u003C\u002Fstrong>: Full HTML support with live preview\u003Cbr \u002F>\n* \u003Cstrong>Advanced Color Controls\u003C\u002Fstrong>: Hex, RGB, HSL color formats\u003Cbr \u002F>\n* \u003Cstrong>Template System\u003C\u002Fstrong>: German, English, and custom templates\u003Cbr \u002F>\n* \u003Cstrong>Branding Options\u003C\u002Fstrong>: Custom sender names and professional styling\u003C\u002Fp>\n\u003Ch4>Installation & Setup\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Basic Installation\u003C\u002Fstrong>\u003Cbr \u002F>\n1. WordPress Admin \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Plugins \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Add New\u003Cbr \u002F>\n2. Search for “Keyless Auth”\u003Cbr \u002F>\n3. Install and activate\u003Cbr \u002F>\n4. Add [keyless-auth] shortcode to any page\u003C\u002Fp>\n\u003Cp>\u003Cstrong>SMTP Configuration (Recommended)\u003C\u002Fstrong>\u003Cbr \u002F>\n1. Navigate to Keyless Auth \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> SMTP\u003Cbr \u002F>\n2. Configure your email provider (Gmail, Outlook, SendGrid, etc.)\u003Cbr \u002F>\n3. Test email delivery\u003Cbr \u002F>\n4. Save settings\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Two-Factor Authentication Setup\u003C\u002Fstrong>\u003Cbr \u002F>\n1. Go to Keyless Auth \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Options\u003Cbr \u002F>\n2. Enable “Two-Factor Authentication”\u003Cbr \u002F>\n3. Select required user roles\u003Cbr \u002F>\n4. Users scan QR code with authenticator app\u003C\u002Fp>\n\u003Ch4>Email Templates\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Template Options\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>German Professional\u003C\u002Fstrong>: Sleek German-language template\u003Cbr \u002F>\n* \u003Cstrong>English Simple\u003C\u002Fstrong>: Clean, minimalist design\u003Cbr \u002F>\n* \u003Cstrong>Custom HTML\u003C\u002Fstrong>: Create your own with WYSIWYG editor\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Customization Features\u003C\u002Fstrong>\u003Cbr \u002F>\n* Full HTML and CSS support\u003Cbr \u002F>\n* Color picker for buttons and links\u003Cbr \u002F>\n* Responsive email design\u003Cbr \u002F>\n* Live template preview\u003Cbr \u002F>\n* Placeholder system for dynamic content\u003C\u002Fp>\n\u003Ch4>Security & Compliance\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Token Security\u003C\u002Fstrong>\u003Cbr \u002F>\n* Generated using WordPress security standards\u003Cbr \u002F>\n* Based on user ID, timestamp, and wp-config.php salt\u003Cbr \u002F>\n* 10-minute expiration with single-use enforcement\u003Cbr \u002F>\n* Secure database storage with automatic cleanup\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Two-Factor Authentication\u003C\u002Fstrong>\u003Cbr \u002F>\n* TOTP-based system compatible with Google Authenticator, Authy\u003Cbr \u002F>\n* Role-based requirements for granular control\u003Cbr \u002F>\n* Grace period system for smooth user transitions\u003Cbr \u002F>\n* Custom verification forms with professional styling\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Database Architecture\u003C\u002Fstrong>\u003Cbr \u002F>\n* Custom tables for optimal performance\u003Cbr \u002F>\n* Comprehensive audit logging\u003Cbr \u002F>\n* Device tracking and IP monitoring\u003Cbr \u002F>\n* Automatic maintenance and cleanup routines\u003C\u002Fp>\n\u003Ch4>Security Hardening\u003C\u002Fh4>\n\u003Cp>Keyless Auth includes comprehensive security hardening features to protect your WordPress site from common attack vectors. All features are optional and can be enabled based on your site’s needs.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>XML-RPC Disable\u003C\u002Fstrong>\u003Cbr \u002F>\n* Prevents brute force attacks via WordPress XML-RPC interface\u003Cbr \u002F>\n* Reduces attack surface by disabling legacy API\u003Cbr \u002F>\n* Recommended for sites not using Jetpack, mobile apps, or pingbacks\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Application Passwords Control\u003C\u002Fstrong>\u003Cbr \u002F>\n* Disable REST API and XML-RPC authentication when programmatic access isn’t needed\u003Cbr \u002F>\n* Prevents unauthorized API access\u003Cbr \u002F>\n* Recommended for simple sites without third-party integrations\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User Enumeration Prevention\u003C\u002Fstrong>\u003Cbr \u002F>\n* Blocks REST API user endpoints (\u003Ccode>\u002Fwp-json\u002Fwp\u002Fv2\u002Fusers\u003C\u002Fcode>)\u003Cbr \u002F>\n* Redirects author archives and \u003Ccode>?author=N\u003C\u002Fcode> queries\u003Cbr \u002F>\n* Removes login error messages that reveal usernames\u003Cbr \u002F>\n* Strips comment author CSS classes\u003Cbr \u002F>\n* Removes author data from oEmbed responses\u003Cbr \u002F>\n* Recommended for business\u002Fcorporate sites without author profiles\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Benefits\u003C\u002Fstrong>\u003Cbr \u002F>\n* Combined protection against brute force attacks\u003Cbr \u002F>\n* Prevents username discovery for targeted attacks\u003Cbr \u002F>\n* Reduces unauthorized API access\u003Cbr \u002F>\n* Easy to configure without code or .htaccess modifications\u003Cbr \u002F>\n* All features include comprehensive documentation\u003Cbr \u002F>\n* FTP recovery available if needed\u003C\u002Fp>\n\u003Ch4>SMTP & Email Delivery\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Supported Providers\u003C\u002Fstrong>\u003Cbr \u002F>\n* Gmail \u002F Google Workspace\u003Cbr \u002F>\n* Outlook \u002F Microsoft 365\u003Cbr \u002F>\n* Mailgun, SendGrid, Amazon SES\u003Cbr \u002F>\n* Any SMTP-compatible service\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Advanced Email Features\u003C\u002Fstrong>\u003Cbr \u002F>\n* Message-ID domain alignment for deliverability\u003Cbr \u002F>\n* SPF\u002FDKIM\u002FDMARC compliance\u003Cbr \u002F>\n* Custom sender names and addresses\u003Cbr \u002F>\n* Bulk email log management\u003Cbr \u002F>\n* Delivery status tracking\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Secure Credential Storage\u003C\u002Fstrong>\u003Cbr \u002F>\nStore SMTP credentials securely in wp-config.php:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>define('CHRMRTNS_KLA_SMTP_USERNAME', 'your-email@example.com');\ndefine('CHRMRTNS_KLA_SMTP_PASSWORD', 'your-smtp-password');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>WordPress Integration\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Login Page Integration\u003C\u002Fstrong>\u003Cbr \u002F>\n* Optional magic login field on wp-login.php\u003Cbr \u002F>\n* Seamless integration with existing login flow\u003Cbr \u002F>\n* Toggle control for easy enable\u002Fdisable\u003Cbr \u002F>\n* Clean, responsive form styling\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Shortcode Usage\u003C\u002Fstrong>\u003Cbr \u002F>\nUse \u003Ccode>[keyless-auth]\u003C\u002Fcode> anywhere: pages, posts, widgets, or custom templates.\u003C\u002Fp>\n\u003Ch4>Developer Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Hooks & Filters\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Customize login redirect:\u003Cbr \u002F>\n    add_filter(‘wpa_after_login_redirect’, ‘custom_redirect_function’);\u003C\u002Fp>\n\u003Cp>Modify email headers:\u003Cbr \u002F>\n    add_filter(‘wpa_email_headers’, ‘custom_email_headers’);\u003C\u002Fp>\n\u003Cp>Change token expiration:\u003Cbr \u002F>\n    add_filter(‘wpa_change_link_expiration’, ‘custom_expiration_time’);\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Modular Architecture\u003C\u002Fstrong>\u003Cbr \u002F>\n* Clean, organized class structure\u003Cbr \u002F>\n* Separated concerns for easy maintenance\u003Cbr \u002F>\n* WordPress coding standards compliance\u003Cbr \u002F>\n* Extensive documentation and comments\u003C\u002Fp>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>WordPress\u003C\u002Fstrong>: 3.9 or higher (tested up to 6.8)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>PHP\u003C\u002Fstrong>: 7.4 or higher\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Email Delivery\u003C\u002Fstrong>: SMTP recommended for reliability\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note\u003C\u002Fstrong>: Keyless Auth complements WordPress’s default login system – it doesn’t replace it.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Developed by Chris Martens | Based on the original Passwordless Login plugin by Cozmoslabs\u003C\u002Fstrong>\u003C\u002Fp>\n","Secure, passwordless authentication for WordPress. Your users login via magic email links – no passwords to remember or forget.",1177,0,"2025-11-24T22:55:00.000Z","6.8.5","3.9","",[27,28,29,30,31],"2fa","authentication","passwordless","secure-login","smtp","https:\u002F\u002Fgithub.com\u002Fchrmrtns\u002Fkeyless-auth","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fkeyless-auth.3.2.4.zip",null,"2026-03-15T15:16:48.613Z",{"slug":37,"name":38,"version":39,"author":5,"author_profile":6,"description":40,"short_description":41,"active_installs":42,"downloaded":43,"rating":21,"num_ratings":21,"last_updated":25,"tested_up_to":44,"requires_at_least":45,"requires_php":46,"tags":47,"homepage":53,"download_link":54,"security_score":9,"vuln_count":21,"unpatched_count":21,"last_vuln_date":34,"fetched_at":55},"safefonts","SafeFonts","1.2.0","\u003Cp>\u003Cstrong>SafeFonts helps you comply with GDPR by hosting fonts locally and avoiding third-party requests, with seamless Gutenberg integration and CSS variables support.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you need to host custom fonts locally on your WordPress site for performance, privacy, or GDPR compliance, SafeFonts makes it simple with advanced security validation, automatic integration with the WordPress block editor, and CSS variables for custom CSS usage.\u003C\u002Fp>\n\u003Ch4>Compatible With\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Block Editors:\u003C\u002Fstrong>\u003Cbr \u002F>\n* WordPress Gutenberg Block Editor\u003Cbr \u002F>\n* WordPress 6.5+ Font Library\u003Cbr \u002F>\n* Full Site Editing (FSE) Themes\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Need Page Builder Integration?\u003C\u002Fstrong>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fsafefonts.com\" rel=\"nofollow ugc\">SafeFonts Pro\u003C\u002Fa> adds seamless support for 14 integrations: Elementor, Bricks, Beaver Builder, Divi, Oxygen, Brizy, Builderius, Astra, GeneratePress, Kadence, Blocksy, Kadence Blocks, Spectra, and GenerateBlocks with zero configuration.\u003C\u002Fp>\n\u003Ch4>Why Choose SafeFonts?\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>🔒 Security-First Approach\u003C\u002Fstrong>\u003Cbr \u002F>\n* Magic byte validation for all font files\u003Cbr \u002F>\n* MIME type verification\u003Cbr \u002F>\n* File hash checking\u003Cbr \u002F>\n* Configurable file size limits\u003Cbr \u002F>\n* Protection against malicious uploads\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⚡ Fast & Lightweight\u003C\u002Fstrong>\u003Cbr \u002F>\n* Custom database storage for instant queries\u003Cbr \u002F>\n* Designed to minimize impact on page load speed\u003Cbr \u002F>\n* Optimized font delivery\u003Cbr \u002F>\n* Works with any theme or page builder\u003C\u002Fp>\n\u003Cp>\u003Cstrong>✅ Gutenberg Integration\u003C\u002Fstrong>\u003Cbr \u002F>\n* Automatic integration with block editor typography\u003Cbr \u002F>\n* WordPress 6.5+ Font Library support\u003Cbr \u002F>\n* Works with all blocks that support typography\u003Cbr \u002F>\n* No configuration needed\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎨 CSS Variables Support\u003C\u002Fstrong>\u003Cbr \u002F>\n* Automatic CSS variables generation for all fonts\u003Cbr \u002F>\n* Use var(–safefonts-font-slug) in custom CSS\u003Cbr \u002F>\n* Works with any theme or builder supporting CSS custom properties\u003Cbr \u002F>\n* Dedicated CSS Reference page with comprehensive documentation\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎥 Quick Start Video\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FaktC4iLSwpI?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>Watch this quick tutorial to see how easy it is to upload and use custom fonts in WordPress.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎯 Simple Upload Process\u003C\u002Fstrong>\u003Cbr \u002F>\n* Individual font file uploads (.woff2, .woff, .ttf, .otf)\u003Cbr \u002F>\n* Specify font family, weight, and style\u003Cbr \u002F>\n* Visual font previews in admin\u003Cbr \u002F>\n* Drag-and-drop ready interface\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⚡ Performance Optimization\u003C\u002Fstrong>\u003Cbr \u002F>\n* Font preloading support for faster page loads\u003Cbr \u002F>\n* Automatic preload tag generation: \u003Ccode>\u003Clink rel=\"preload\" href=\"...\" as=\"font\">\u003C\u002Fcode>\u003Cbr \u002F>\n* User-selectable fonts for preloading (Settings tab)\u003Cbr \u002F>\n* Best practice: Preload 1-2 critical fonts only\u003Cbr \u002F>\n* Reduces flash of invisible text (FOIT)\u003Cbr \u002F>\n* Improves Core Web Vitals scores\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🌍 GDPR Compliant\u003C\u002Fstrong>\u003Cbr \u002F>\n* Local font hosting\u003Cbr \u002F>\n* No external font requests—fonts are served entirely from your WordPress installation\u003Cbr \u002F>\n* Complete data privacy\u003Cbr \u002F>\n* Suitable for GDPR-compliant sites\u003C\u002Fp>\n\u003Ch4>Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Privacy-conscious websites requiring GDPR compliance\u003C\u002Fli>\n\u003Cli>Sites that need custom or premium fonts\u003C\u002Fli>\n\u003Cli>Agencies managing multiple client sites\u003C\u002Fli>\n\u003Cli>Anyone wanting better control over typography\u003C\u002Fli>\n\u003Cli>Performance-optimized websites\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Upload Fonts\u003C\u002Fstrong>: Go to SafeFonts menu and upload your font files\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configure Details\u003C\u002Fstrong>: Set font family name, weight (100-900), and style (normal\u002Fitalic)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Use Everywhere\u003C\u002Fstrong>: Your fonts automatically appear in:\n\u003Cul>\n\u003Cli>Gutenberg block editor typography settings\u003C\u002Fli>\n\u003Cli>CSS variables for custom CSS (check CSS Reference page)\u003C\u002Fli>\n\u003Cli>WordPress 6.5+ Font Library\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>That’s It!\u003C\u002Fstrong> Fonts are served locally with optimal performance\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Getting Google Fonts\u003C\u002Fh4>\n\u003Cp>Download Google Fonts from these sources:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwebfontdownloader.safefonts.com\" rel=\"nofollow ugc\">SafeFonts Web Font Downloader\u003C\u002Fa> – convenient bulk download tool\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffonts\" rel=\"nofollow ugc\">Google Fonts GitHub\u003C\u002Fa> – official repository\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgwfh.mranftl.com\u002Ffonts\" rel=\"nofollow ugc\">Google Webfonts Helper\u003C\u002Fa> – third-party download tool\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Once downloaded, upload the font files (.woff2, .woff, .ttf, .otf) through SafeFonts > Upload tab.\u003C\u002Fp>\n\u003Cp>Need more features? SafeFonts Pro offers bulk ZIP imports, page builder integration, and advanced font management. \u003Ca href=\"https:\u002F\u002Fsafefonts.com\" rel=\"nofollow ugc\">Learn more\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Supported Font Formats\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>WOFF2\u003C\u002Fstrong> (recommended – best compression)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WOFF\u003C\u002Fstrong> (broad browser support)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>TTF\u003C\u002Fstrong> (TrueType fonts)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>OTF\u003C\u002Fstrong> (OpenType fonts)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>WordPress 6.5+ Font Library\u003C\u002Fh4>\n\u003Cp>If you’re using WordPress 6.5 or higher, SafeFonts automatically integrates with the native Font Library in the Site Editor, giving you a unified font management experience.\u003C\u002Fp>\n\u003Ch3>Developer Documentation\u003C\u002Fh3>\n\u003Ch4>Template Functions\u003C\u002Fh4>\n\u003Cp>SafeFonts provides helper functions for developers:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>safefonts() - Get the main plugin instance\nsafefonts()->font_manager->get_fonts() - Get all fonts from database\nsafefonts()->font_manager->get_fonts_by_family() - Get fonts grouped by family\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Hooks & Filters\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Filters:\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Ccode>upload_mimes\u003C\u002Fcode> – SafeFonts adds font MIME types automatically\u003C\u002Fp>\n\u003Ch4>Database Structure\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Table:\u003C\u002Fstrong> \u003Ccode>wp_chrmrtns_safefonts\u003C\u002Fcode>\u003Cbr \u002F>\n* \u003Ccode>id\u003C\u002Fcode> – Font ID\u003Cbr \u002F>\n* \u003Ccode>font_family\u003C\u002Fcode> – Font family name\u003Cbr \u002F>\n* \u003Ccode>family_slug\u003C\u002Fcode> – Sanitized family slug for folder names (v1.1.0+)\u003Cbr \u002F>\n* \u003Ccode>font_style\u003C\u002Fcode> – normal or italic\u003Cbr \u002F>\n* \u003Ccode>font_weight\u003C\u002Fcode> – 100-900\u003Cbr \u002F>\n* \u003Ccode>file_path\u003C\u002Fcode> – Relative path to font file (includes family folder v1.1.0+)\u003Cbr \u002F>\n* \u003Ccode>file_hash\u003C\u002Fcode> – SHA-256 hash for integrity\u003Cbr \u002F>\n* \u003Ccode>file_size\u003C\u002Fcode> – File size in bytes\u003Cbr \u002F>\n* \u003Ccode>mime_type\u003C\u002Fcode> – Validated MIME type\u003Cbr \u002F>\n* \u003Ccode>created_at\u003C\u002Fcode> – Upload timestamp\u003Cbr \u002F>\n* \u003Ccode>updated_at\u003C\u002Fcode> – Last update timestamp\u003C\u002Fp>\n\u003Ch4>Architecture\u003C\u002Fh4>\n\u003Cp>SafeFonts uses modern PHP namespaces and PSR-4 autoloading:\u003Cbr \u002F>\n* \u003Ccode>Chrmrtns\\SafeFonts\\Core\u003C\u002Fcode> – Main plugin class\u003Cbr \u002F>\n* \u003Ccode>Chrmrtns\\SafeFonts\\FontManager\u003C\u002Fcode> – Font validation and management\u003Cbr \u002F>\n* \u003Ccode>Chrmrtns\\SafeFonts\\Admin\\AdminInterface\u003C\u002Fcode> – Admin UI\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For support, feature requests, or bug reports, please visit:\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fchrmrtns\u002Fsafefonts\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fsafefonts.com\" rel=\"nofollow ugc\">Website\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>SafeFonts does not collect, store, or transmit any personal data. All font files are stored locally on your WordPress installation. No data is sent to external services.\u003C\u002Fp>\n","Host custom fonts locally in WordPress with advanced security validation, block editor integration, and CSS variables support.",20,465,"6.9.4","6.2","7.4",[48,49,50,51,52],"custom-fonts","fonts","google-fonts","gutenberg","typography","https:\u002F\u002Fsafefonts.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsafefonts.1.2.0.zip","2026-03-15T10:48:56.248Z",{"slug":57,"name":58,"version":59,"author":5,"author_profile":6,"description":60,"short_description":61,"active_installs":21,"downloaded":62,"rating":21,"num_ratings":21,"last_updated":25,"tested_up_to":23,"requires_at_least":63,"requires_php":46,"tags":64,"homepage":70,"download_link":71,"security_score":9,"vuln_count":21,"unpatched_count":21,"last_vuln_date":34,"fetched_at":55},"puzzlesync","PuzzleSync – Multilingual Content Manager","1.0.5","\u003Cp>\u003Cstrong>PuzzleSync helps you rank in multiple countries by properly managing multilingual content for search engines.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you run a multilingual WordPress site, you need proper hreflang implementation to tell Google which language version to show in each country. PuzzleSync makes this easy with automatic hreflang tag generation, translation management, and SEO validation – without requiring expensive translation plugins or complex configurations.\u003C\u002Fp>\n\u003Ch4>Why Choose PuzzleSync?\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>🎯 Simple Language Detection\u003C\u002Fstrong>\u003Cbr \u002F>\nJust add a category or tag to your posts (like “English” or “Deutsch”) and PuzzleSync automatically:\u003Cbr \u002F>\n* Detects the content language\u003Cbr \u002F>\n* Generates proper hreflang tags\u003Cbr \u002F>\n* Sets the correct HTML lang attribute\u003Cbr \u002F>\n* Creates JSON-LD structured data for search engines\u003C\u002Fp>\n\u003Cp>No need for complex language codes or technical setup!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🌍 Truly Multilingual\u003C\u002Fstrong>\u003Cbr \u002F>\nUnlike plugins limited to 2-3 languages, PuzzleSync supports ANY language you configure:\u003Cbr \u002F>\n* English, German, French, Spanish, Italian, Portuguese, Dutch, Polish, Russian\u003Cbr \u002F>\n* Japanese, Chinese, Korean, Arabic, Turkish, Swedish, Danish, Norwegian\u003Cbr \u002F>\n* 30+ built-in language mappings, easily add more in settings\u003Cbr \u002F>\n* Automatic locale conversion (en \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> en-US, de \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> de-DE, etc.)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⚡ Fast & Lightweight\u003C\u002Fstrong>\u003Cbr \u002F>\n* Custom database storage (not post meta) for instant queries\u003Cbr \u002F>\n* No impact on page load speed\u003Cbr \u002F>\n* Works with any theme or page builder (Gutenberg, Elementor, Bricks, etc.)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>✅ Built-in Validation\u003C\u002Fstrong>\u003Cbr \u002F>\n* Automatic detection of broken translation links\u003Cbr \u002F>\n* One-click fixes for common issues\u003Cbr \u002F>\n* Validation dashboard shows exactly what needs attention\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🔧 Flexible & Developer-Friendly\u003C\u002Fstrong>\u003Cbr \u002F>\n* Works with categories OR tags (your choice)\u003Cbr \u002F>\n* Tag naming is flexible: “english”, “English”, “en”, “english-version” all work!\u003Cbr \u002F>\n* Translation Groups for automatic linking\u003Cbr \u002F>\n* Clean, modern PHP code with namespaces\u003Cbr \u002F>\n* Shortcodes for language switchers\u003C\u002Fp>\n\u003Ch4>Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Multilingual blogs and business sites\u003C\u002Fli>\n\u003Cli>International e-commerce stores\u003C\u002Fli>\n\u003Cli>Content creators targeting multiple countries\u003C\u002Fli>\n\u003Cli>SEO professionals managing multilingual sites\u003C\u002Fli>\n\u003Cli>Agencies building sites for international clients\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Add languages\u003C\u002Fstrong> in settings (English, German, French, etc.)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Tag your content\u003C\u002Fstrong> with categories or tags (e.g., “english”, “deutsch”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Link translations\u003C\u002Fstrong> using Translation Groups or manual URLs\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Done!\u003C\u002Fstrong> PuzzleSync automatically generates all hreflang tags and SEO markup\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Language Support\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Supports ANY language\u003C\u002Fstrong> – just add it in settings! Built-in support includes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>European:\u003C\u002Fstrong> English, German, French, Spanish, Italian, Portuguese, Dutch, Polish, Russian, Czech, Hungarian, Romanian, Greek, Ukrainian, Croatian, Slovak, Bulgarian, Swedish, Danish, Norwegian, Finnish\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Asian:\u003C\u002Fstrong> Japanese, Chinese, Korean, Thai, Vietnamese, Indonesian, Hebrew\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Middle Eastern:\u003C\u002Fstrong> Arabic, Turkish\u003C\u002Fli>\n\u003Cli>\u003Cstrong>And more\u003C\u002Fstrong> – easily add any language you need!\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>PuzzleSync automatically handles proper locale formatting (en \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> en-US, de \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> de-DE, ja \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> ja-JP, etc.)\u003C\u002Fp>\n","Manage multilingual content with automatic hreflang tags, translation groups, and dynamic language detection for better SEO.",158,"5.8",[65,66,67,68,69],"hreflang","language-switcher","multilingual","seo","translation","https:\u002F\u002Fpuzzlesync.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpuzzlesync.1.0.5.zip"]