Comments – GraphComment | AI-Moderated Comment System
Hosted comments, without the usual price to pay Native WordPress comments are where discussions run aground: no live replies, no threading that scales, endless spam. And yet comments are worth fighting for — measured across the GraphComment platform, every commenter draws 21 readers who follow the discussion. That’s audience and engagement you already own, no ad budget required. Hosted comment platforms promise to fix the comment section — but usually at a hidden price: your readers get tracked and served ads, your comments end up locked in someone else’s silo, and your page speed pays for it. GraphComment 5.0 is built to fix the comment section without that price. Here is the deal, point by point — and every claim below is verifiable. 1. Spam never reaches your site. Spam bots don’t fill comment forms — they hammer WordPress’s native comment submission endpoint (wp-comments-post.php) directly, which is why the flood continues even when comments look closed. AI has made that spam cheap, fluent and endless — it no longer looks like spam. With GraphComment active, that endpoint is shut and every comment goes through a moderated pipeline instead: smart filtering, insult detection, trusted-member auto-approval — and AI Moderation Assist, included free for your first 100 AI analyses each month. The AI reads the article before judging the comment, so it catches what keyword filters can’t, then suggests a decision with its reasoning — you stay in control. 2. Actually free — and your readers are not the product. No ads next to your content, ever. No ad-tracking of your readers. The free plan is not a trial: it includes 1M data loads a month — far beyond a typical blog’s traffic — with guest commenting, media embedding, moderation tools and real-time discussions included. And because of point 3, there is no hostage scenario the day you outgrow it. 3. Your comments live in YOUR database — reviewers keep pointing this out. GraphComment continuously synchronizes every comment back into your WordPress database, author identity included — on a schedule, and instantly with the new webhook push. Deactivate the plugin tomorrow and your discussions are still there, in wp_comments, served natively. No export request, no ransom, no dead links. That’s why trying it is risk-free. 4. Your readers comment without creating an account. Guest commenting is on by default, social login is one tap, and your registered users can flow through SSO — included on every plan. Forcing readers to create yet another account is what empties a comment section — GraphComment never does. 5. Near-native performance — measured by independent tests, not just by us. An independent benchmark by Servebolt (2023, updated February 2026) found GraphComment adds as few HTTP requests as WordPress native comments. Our own Lighthouse benchmarks show the same LCP and zero main-thread blocking as a page with no comment plugin at all. 6. Make it yours — without paid add-ons. Your logo, your fonts, fine-grained themes with a beautiful dark mode, hundreds of settings — free. Even the philosophy of your discussion space is yours: Bubble Flow threading that keeps 300-comment debates readable, classic chronological, or flat — switch freely. Elsewhere, image uploads, extra spam protection or comment search come as paid add-ons; here they’re included. And the rest is there too: real-time commenting with instant reply notifications, inline images and videos, one-file import (WordPress WXR or Disqus XML, processed in the background), indexable comments with structured data for search engines, and your comments served as real HTML to the AI crawlers that don’t run JavaScript (GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot, Amazonbot and more, as of September 2026 — your discussions show up in generative engines too), a widget in 21 languages with a back-office in 10 and a fully rebuilt RTL layout, and a two-click connection with a setup wizard that ends on your next action. Hosting in Europe, under GDPR, with you as the data controller. Leaving Disqus? Do it before it costs you your community. A fact worth knowing: Disqus’s own comment export contains no commenter email addresses. The longer you stay, the more of your community’s identity stays behind when you leave. GraphComment is the opposite trade: your commenters live in your WordPress database from day one. Migration is one file: export from Disqus (custom XML) or WordPress (WXR), upload it in the plugin, and large archives are processed in the background. No ads, EU hosting, GDPR — and your community stays yours. Everything essential is in the free plan — no paid add-ons The pieces other comment plugins often sell as paid add-ons — image uploads, extra spam protection, comment search, front-end moderation — are part of GraphComment’s free plan, not a growing bill. Spam is handled at the root, too: instead of filtering comments after bots reach your site, GraphComment closes WordPress’s native comment submission endpoint so automated spam never enters your moderation queue, with AI Moderation Assist included on every plan to catch what filters miss. Already have WordPress comments? They stay exactly where they are. What’s new in GraphComment 5.x Visible in AI engines (GEO) — your discussions are served as real HTML to AI crawlers (GPTBot, ClaudeBot, PerplexityBot and more) and show up in generative answers. Structural spam shield — WordPress’s native comment submission endpoint is closed while GraphComment is active: spam bots hit a wall instead of your moderation queue. AI Moderation Assist, now with a free tier — the AI reads the article, flags risky comments and suggests a decision; free for your first 100 AI analyses each month. Connection in two clicks — a simple popup links your site to GraphComment. No more OAuth forms; new users can create their GraphComment site without leaving wp-admin. Gutenberg block — place the comment area anywhere with the GraphComment block, on block themes and classic themes alike. Shortcode & developer filters — [graphcomment] plus graphcomment_init_args / graphcomment_should_apply filters for full control from your theme (see For Developers). WooCommerce support — enable GraphComment on product pages when you want it. Instant backup sync — a secure webhook wakes the synchronization the moment a new comment arrives, instead of waiting for the next cron run. Diagnostic page — one click runs 7 health checks (connectivity, cron, sync freshness…) and produces a copy-paste report for support. Import by file — WXR and Disqus XML upload for large archives, with background processing. Domain migration (Premium) — move your site to a new domain without losing a single thread; 10,000 threads migrated in seconds. 21 languages & rebuilt RTL — plugin admin translated in 21 languages, moderation back-office in 10, with a proper right-to-left layout for Arabic, Persian and Hebrew. Free customization — logo, fonts, fine-grained themes with dark mode, and free choice of discussion layout (Bubble Flow, chronological or flat). Hardened security — site credentials encrypted at rest, signed API calls, and a modernized PHP 8-ready codebase with automated tests. Everything in the free plan: Real-time discussions — Bubble Flow threading, chronological or flat, your choice Custom logo, fonts, fine-grained themes with dark mode, hundreds of settings Guest commenting, social login, automatic registration Single Sign-On with your WordPress user base — on the free plan too Media embedding, text formatting, badges, community profiles Smart moderation, insult filtering, banning tools, multi-moderators AI Moderation Assist for your first 100 AI analyses each month — the AI suggests, you decide One-file import (WordPress WXR, Disqus XML) — and continuous sync back to your database SEO-friendly indexable comments, structured data, analytics — AI crawlers included (GEO) Sliding sidebar panel, counter & Top widgets Widget translated in 21 languages, spam protection When your community grows — Premium: Domain migration — move your site to a new domain without losing a thread (10,000 threads migrated in seconds) Higher AI Moderation Assist volume — 2,000 AI analyses/month on Starter, 10,000 on Pro (extensions available) Fully automated AI moderation (Enterprise) Editorialize & pin best discussions Live PUSH discussions mode Keyword alerts Restricted right to comment Custom sender & ban emails PUSH notification center The Basic plan is free up to 1M data loads per month. Paid plans start at $29/month (Starter, 1.5M data loads — or $25/month billed annually); Pro is $59/month (5M data loads — or $51/month billed annually). See the full pricing and feature list. Support Search our Knowledge Base for solutions to common troubleshooting questions Check out our support community, Discuss GraphComment, to see if your question has been answered Talk to our Support team at support@graphcomment.com Help translate GraphComment into your language on translate.wordpress.org For Developers GraphComment 5.0 exposes a shortcode and two filters so you can place the widget outside the native comments area and adjust its behaviour from your theme or a small companion plugin, without editing the plugin. Full developer documentation ships with the plugin in HOOKS.md. Only one comment space is rendered per page (first render wins): a second [graphcomment], or a shortcode on a page that already shows the native comments, renders nothing. Shortcode [graphcomment] Place the comment widget anywhere in your content: [graphcomment] [graphcomment uid="my-custom-thread" readonly="true"] uid (optional): custom thread identifier, defaults to the post ID. Use it to share one discussion across several URLs. readonly (optional): readonly="true" forces read-only mode for this instance; otherwise the global setting applies. The shortcode obeys the same display conditions as the native integration (bots in SEO mode, plugin activation range, WooCommerce product exclusion). Filter graphcomment_init_args Adjust the widget parameters (a nested array) before the script is generated. It covers every rendering path (native template, block theme, Gutenberg block, shortcode): add_filter('graphcomment_init_args', function ($args, $post) { $args['behaviour']['uid'] = 'my-custom-thread'; return $args; }, 10, 2); Filter graphcomment_should_apply Enable or disable the widget from code — for example, re-enable WooCommerce product pages (excluded by default): add_filter('graphcomment_should_apply', function ($should, $post) { if ($post && get_post_type($post) === 'product') return true; return $should; }, 10, 2);
OpenPorte Spam Protection
OpenPorte is a free and open-source plugin that protects WordPress forms from spam using a lightweight Proof-of-Work challenge instead of CAPTCHAs. The goal is to make spam expensive for bots while keeping the experience almost invisible for legitimate visitors and respecting their privacy. For site owners, OpenPorte offers an easy to configure and deploy modern spam protection under their control. For the site users, it offers an accessible, transparent and privacy-friendly alternative to CAPTCHAs. OpenPorte is built around the open-source ALTCHA widget. Some highlights: CAPTCHA-free spam protection Fully open source (GPL) Self-hosted – no mandatory external service Designed to be accessible and privacy-friendly Compatible with existing ALTCHA integrations Easy migration for users of ALTCHA Spam Protection v1 (≤ 1.26.3) For the list of contributors, refer to our GitHub project: Contributors. AI-assisted development AI-assisted project. Architecture, security decisions, and final review are mine; AI tools (Claude, Mistral, and others) help with drafting code, tests, translations, and documentation — without them, one person couldn’t keep this fork alive. Background The original ALTCHA Spam Protection WordPress plugin (v1) was open source (GPLv2). Its authors have since released a version 2/3 which is no longer open source. They no longer maintain the open source project and recommend that users migrate to v2/v3. See the official project at https://altcha.org for their offering. OpenPorte started as a fork and continues the v1 line as free software (GPLv2 or later) for users who want to stay on a fully open-source, self-hosted solution. It is a faithful fork: existing v1 installations can switch to OpenPorte and keep their settings (see Upgrading). Compatibility OpenPorte is backward-compatible with ALTCHA Spam Protection v1 plugin: Your existing settings are migrated automatically on activation. The [altcha] shortcode keeps working (alongside the new [openporte]). The altcha_* filters and actions keep firing as deprecated aliases. Custom API Mode has been verified against GateCHA, an open source server implementing the creation and verification of ALTCHA challenges. See the Deprecations section for the full list of compatibility aliases and what they map to. Upgrading From the original ALTCHA v1 plugin Deactivate the old ALTCHA plugin, then install and activate OpenPorte. Your existing configuration is detected and copied into the OpenPorte settings on first activation; the original ALTCHA settings are left untouched, so you can roll back to ALTCHA v1 without losing anything. Do not run both plugins at the same time. From ALTCHA v2/v3 If your site was already moved to ALTCHA v2/v3 (for example by the automatic 3.0.0 update), your original v1 settings are normally still in the database: the v2/v3 upgrade neither migrates nor removes them. Deactivate ALTCHA, then install and activate OpenPorte — it finds and imports the v1 settings, even when the v1 plugin itself has long been deleted. Settings made in v2/v3 are not read. Deprecations The following ALTCHA-era identifiers are kept as aliases for backward compatibility and are scheduled for removal in a future release: The [altcha] shortcode — use [openporte]. The altcha/v1 REST namespace — use openporte/v1. The altcha_* filters and actions — now firing through WordPress’ deprecated hook mechanism; use the openporte_* equivalents. The AltchaPlugin class and the ALTCHA_VERSION / ALTCHA_WIDGET_VERSION constants — use OpenPortePlugin and the OPENPORTE_* constants. Integrations targeting paid-only third-party plugins; affected users should migrate to the official ALTCHA v2/v3 plugin. The “Custom HTML” integration (auto-configuration of hand-written tags) — place the [openporte] shortcode instead. You can re-enable it for now under Settings → OpenPorte → Integrations. Privacy No cookies, no tracking OpenPorte prioritizes user privacy by avoiding the use of cookies and fingerprinting techniques. No external service This plugin remains fully contained within your WordPress installation, eliminating any reliance on external services. Modes of Operation OpenPorte verifies submissions in one of two modes, selected in the settings (API Mode): Self-hosted (default) — a proof-of-work challenge is issued and verified by your own WordPress site through the REST API. Fully self-contained, with no external service and no additional setup beyond enabling the integrations you need. Custom — point the Challenge URL at your own ALTCHA-compatible backend (for example a self-hosted ALTCHA Sentinel, or GateCHA). Submissions are verified with your site’s shared secret. The paid altcha.org regional SaaS classifier offered by earlier versions has been removed; both remaining modes are free and self-hostable. REST API This plugin requires the WordPress REST API. If you are using any “Disable REST API” plugins, ensure that the endpoint /altcha/v1/challenge (marked for deprecation) and /openporte/v1/challenge are allowed. Supported Integrations CoBlocks Contact Form 7 Elementor Pro Forms (deprecated — paid plugin, see Deprecations) Formidable Forms Forminator GravityForms HTML Forms wpDiscuz WPForms WordPress Login, Register, Password reset WordPress Comments WooCommerce Many other plugins and your own content (via the [openporte] shortcode, or the deprecated [altcha] alias) Source Code All source code for the plugin, and the ALTCHA widget is available on GitHub. In the repository, you’ll also find versions of non-minified JavaScript and CSS assets: Plugin: https://github.com/openporte/openporte ALTCHA Widget: https://github.com/altcha-org/altcha