Description
Formerly known as Meshr – AI Internal Linking. This plugin was rebranded to WPLink in 2026. The plugin slug (meshr-ai-internal-linking) and the original /meshr/v1/ REST API namespace are preserved for backwards compatibility; a new /wplink/v1/ namespace has been added alongside.
WPLink – AI Internal Linking is the companion WordPress plugin for the WPLink desktop app. It exposes REST API endpoints that let WPLink discover your site, extract content from supported page builders (Bricks, Elementor, WPBakery, and Beaver Builder), and safely insert internal links – including into pages that store content in page-builder metadata rather than post_content.
Unlike keyword-based linkers, WPLink uses semantic AI analysis to understand content meaning and context. Most websites miss 60%+ of their internal linking potential; WPLink finds them automatically and this plugin is what lets the AI reach content stored inside page builders.
Why WordPress Users Choose WPLink:
- Native Bricks Builder support – Reads and writes
_bricks_page_content_2so Bricks pages are fully indexed and linkable - Native Elementor support – Reads and writes the
_elementor_dataJSON tree so Elementor pages work like standard posts - Native WPBakery support – Reads and links directly inside
[vc_column_text]shortcode blocks inpost_content - Native Beaver Builder support – Reads and writes the
_fl_builder_dataPHP object graph so Beaver Builder modules are fully supported - Yoast SEO & RankMath compatible – Works alongside your existing SEO plugins
- Custom post type support – Analyzes and links all your content types
- 2-minute setup – Connect your site via Application Passwords, no coding required
- AI-powered analysis – Semantic topic clustering and context-aware link scoring (done in the WPLink desktop app)
- Automatic updates – Link changes are applied directly to your WordPress posts and pages via secure REST API
This lightweight plugin provides REST API endpoints that allow WPLink to discover your site, read content from standard posts and page-builder-built pages, and apply internal links safely using builder-native write paths.
Supported page builders:
- Bricks Builder – content in
_bricks_page_content_2 - Elementor – content in
_elementor_data - WPBakery Page Builder – content in
post_contentas shortcodes ([vc_column_text]) - Beaver Builder – content in
_fl_builder_data - Gutenberg / Classic Editor – standard
post_content
Features:
- Multi-builder support – Bricks, Elementor, WPBakery, Beaver Builder, Gutenberg, and Classic Editor
- Works with Yoast SEO & RankMath – Compatible with major WordPress SEO plugins
- AI-powered semantic linking – Understands content meaning, not just keywords (analysis runs in the WPLink desktop app)
- Custom post type support – Analyzes and links all your WordPress content types
- Bulk link management – Review and approve AI suggestions from the WPLink app
- Orphan page detection – Find and fix pages with zero internal links
- 2-minute setup – Configure entirely via WordPress Application Passwords
- REST API integration – Secure, automatic link updates without manual work
- Minimal footprint – Doesn’t store data locally
- Security-first design – Proper capability checks and sanitization
How It Works:
- Generate a WordPress Application Password in your user profile
- Configure the credentials in the WPLink desktop app
- WPLink discovers your site and reads from and writes to Bricks, Elementor, WPBakery, Beaver Builder, Gutenberg, and classic posts
- All communication happens securely via WordPress REST API with Basic Authentication
API Endpoints
All endpoints are available under both /wp-json/wplink/v1/ and /wp-json/meshr/v1/ (legacy).
Health Check
GET /wp-json/wplink/v1/check
Returns site info, plugin version, and capability flags (including which builders are detected and supported).
Get Post Content (builder-aware)
GET /wp-json/wplink/v1/posts/{post_id}/content
Returns extracted plain text and an element-level breakdown. Routes to the appropriate builder handler (Bricks, Elementor, WPBakery, Beaver Builder) or falls back to post_content for Gutenberg/classic posts.
Insert Link (builder-aware)
POST /wp-json/wplink/v1/posts/{post_id}/insert-link
Request body:
json
{
"keyword": "digital marketing",
"target_url": "https://example.com/services/digital-marketing/",
"occurrence": 1
}
For Bricks pages, finds the keyword in a text-bearing element and wraps it with an anchor inside the Bricks JSON. For Elementor, mutates the _elementor_data widget tree. For WPBakery, replaces inside [vc_column_text] blocks. For Beaver Builder, modifies _fl_builder_data module settings. Cache regeneration is triggered automatically for each builder.
Bulk Link Update (URL migration)
POST /wp-json/wplink/v1/bulk-link-update
Unchanged from 1.0.0. Used for URL-replacement migrations in standard post_content.
Webhook (Optional)
POST /wp-json/wplink/v1/webhook
Requires HMAC signature verification. Configure WPLINK_WEBHOOK_SECRET in wp-config.php. Requests include an X-WPLink-Signature header. The legacy MESHR_WEBHOOK_SECRET constant and X-Meshr-Signature header are still accepted.
Privacy Policy
This plugin does not collect, store, or transmit any personal data. All communication occurs between your WordPress site and the WPLink desktop app via REST API endpoints. No external services are contacted by the plugin itself.
Support
For support, documentation, and more information, visit:
Installation
- Upload the plugin files to the
/wp-content/plugins/meshr-ai-internal-linkingdirectory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the ‘Plugins’ menu in WordPress.
- Generate a WordPress Application Password:
- Go to Users Your Profile
- Scroll to “Application Passwords”
- Enter a name (e.g., “WPLink”) and click “Add New Application Password”
- Copy the generated username and password
- In the WPLink desktop app, enter your WordPress site URL and the Application Password credentials
- WPLink will automatically discover your site, including pages built with Bricks, Elementor, WPBakery, and Beaver Builder
FAQ
-
Does this plugin store any data?
-
No. This plugin does not store any data locally. It only provides API endpoints for WPLink to communicate with your WordPress site.
-
Do I need to configure anything in WordPress?
-
No admin UI is required. You only need to generate a WordPress Application Password in your user profile and provide it to the WPLink desktop app.
-
Is my site secure?
-
Yes. The plugin uses WordPress’s built-in authentication system (Application Passwords), proper capability checks (
current_user_can), and sanitizes all inputs. Webhook endpoints use HMAC signature verification when enabled. -
Can I test the connection?
-
Yes. Once configured, you can test the health check endpoint:
GET https://your-site.com/wp-json/wplink/v1/checkYou’ll need to authenticate using Basic Auth with your Application Password credentials.
-
How do I enable webhook support?
-
Add this constant to your
wp-config.phpfile:define( 'WPLINK_WEBHOOK_SECRET', 'your-secret-key-here' );Replace
your-secret-key-herewith a strong, random string. Webhook requests will include anX-WPLink-Signatureheader for verification.Note: the legacy constant
MESHR_WEBHOOK_SECRETis still accepted for backwards compatibility.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“WPLink – AI Internal Linking” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “WPLink – AI Internal Linking” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.2.0
- Added native Elementor support: reads and writes
_elementor_dataJSON tree - Added native WPBakery support: reads and inserts links inside
[vc_column_text]shortcode blocks - Added native Beaver Builder support: reads and writes
_fl_builder_dataPHP object graph - Capability flags in
/checknow reportsupports_wpbakery,supports_beaver,wpbakery_detected,beaver_detected - Builder detection extended: WPBakery and Beaver Builder posts are now auto-detected and routed correctly
- Plugin version bumped to 1.2.0
1.1.1
- Updated plugin icons and banner to WPLink branding
- Webhook: accept WPLINK_WEBHOOK_SECRET (preferred) alongside MESHR_WEBHOOK_SECRET (legacy)
- Webhook: accept X-WPLink-Signature header alongside legacy X-Meshr-Signature
- readme: update examples to use /wplink/v1/ namespace
1.1.0
- Renamed to WPLink – AI Internal Linking
- Added native Bricks Builder support: reads and writes
_bricks_page_content_2 - New endpoint:
GET /posts/{id}/contentreturns builder-aware extracted text - New endpoint:
POST /posts/{id}/insert-linksafely inserts a link into Bricks or standard posts - Routes now registered under both
/meshr/v1/(legacy) and/wplink/v1/(preferred) - Backwards compatible: existing integrations continue to work without changes
1.0.0
- Initial release
- Health check endpoint (
GET /meshr/v1/check) - Bulk link update endpoint (
POST /meshr/v1/bulk-link-update) - Optional webhook endpoint with HMAC verification (
POST /meshr/v1/webhook)
