

The editor sidebar — internal link suggestions for the post you are writing, ranked on your own server, with the matched terms shown and one-click insertion.
Adding internal links by hand is slow — and the tools that automate it charge you by the suggestion.
Most AI internal-linking plugins meter their suggestions with credits and renew every year, so the more you link the more you pay, and your post content is sent off to someone else’s server to be scored. For a blog with hundreds of posts, “just add internal links” turns into a recurring bill.
JnK Linkweave does the whole thing on your own server. It reads your existing posts and pages and suggests contextually relevant internal links right inside the editor, ranks them with TF-IDF and BM25 in PHP, and applies keyword auto-linking rules at render time — with no external service, no per-suggestion fees, and no post content ever leaving your site. Index as many posts and create as many rules as you like; nothing is metered.
It’s built for the people who actually maintain content at scale: bloggers, SEO and content teams, agencies, and membership or course sites that want serious internal linking without a per-credit meter.
keyword → URL rules with per-post and per-site caps, case sensitivity, target="_blank", and rel="nofollow". No cap on how many rules you create or activate.save_post.<a>, <code>, <pre>, headings, and shortcodes, so existing markup is never mangled.Pro is a flat license — from $59/year (or a one-time lifetime option), with no per-suggestion metering ever. Cancel any time and the free tier keeps working forever. See pricing. Pro adds:
Bundle JnK Linkweave with Trinity Forms or EntryVault for ~20% off, or take all three for ~25% off — one checkout, one renewal, a license key per plugin.
In JnK Linkweave’s free build, relevance scoring runs entirely in PHP on your server — no post content ever leaves your site. There is no phone-home and no telemetry.
This plugin does not send your content or data to any third-party service.
The only outbound HTTP requests it makes are to your own site: the daily broken-link scanner issues a lightweight HEAD request to each internal link target (a URL on your own domain) to check whether it still resolves. These are self-requests to your site, filtered to your own home URL — no external endpoint is contacted, and nothing is transmitted off your server.
JnK Linkweave is fully open source (GPLv2-or-later) and ships entirely uncompiled
alongside its build output, so no external download is needed to read or rebuild it.
Sidebar.jsx and friends). The compiled files under editor/build/index.js and its CSS) are generated directly from that source — nothing underThe build uses @wordpress/scripts (https://www.npmjs.com/package/@wordpress/scripts),
with the source and output directories set explicitly in package.json:
npm install
npm run build (runs: wp-scripts build –webpack-src-dir=editor/src –output-path=editor/build)
Running that regenerates the build output from the source. No other build step is required.