{"id":326949,"date":"2026-06-19T07:41:52","date_gmt":"2026-06-19T07:41:52","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/smart-il-ai-internal-linking-seo\/"},"modified":"2026-06-26T04:45:05","modified_gmt":"2026-06-26T04:45:05","slug":"relinka","status":"publish","type":"plugin","link":"https:\/\/el.wordpress.org\/plugins\/relinka\/","author":23517208,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.9.6","stable_tag":"0.9.6","tested":"7.0","requires":"6.4","requires_php":"8.1","requires_plugins":null,"header_name":"Relinka \u2013 Internal Linking & Orphan Page Finder","header_author":"Krafts Studio","header_description":"Internal linking toolkit: visualize inbound\/outbound links, a keyword cluster graph, an internal-link health score, broken-link finder, and context-aware link suggestions you apply with one-click revert.","assets_banners_color":"d9d7d5","last_updated":"2026-06-26 04:45:05","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/relinka\/","header_author_uri":"https:\/\/profiles.wordpress.org\/krafts03\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":233,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.8.0":{"tag":"0.8.0","author":"krafts03","date":"2026-06-19 07:41:18"},"0.9.1":{"tag":"0.9.1","author":"krafts03","date":"2026-06-21 04:25:43"},"0.9.2":{"tag":"0.9.2","author":"krafts03","date":"2026-06-21 14:33:33"},"0.9.3":{"tag":"0.9.3","author":"krafts03","date":"2026-06-21 15:03:51"},"0.9.4":{"tag":"0.9.4","author":"krafts03","date":"2026-06-23 13:29:03"},"0.9.5":{"tag":"0.9.5","author":"krafts03","date":"2026-06-24 05:50:46"},"0.9.6":{"tag":"0.9.6","author":"krafts03","date":"2026-06-26 04:45:05"}},"upgrade_notice":{"0.9.5":"<p>Link suggestions now work on SQLite-based WordPress too (portable fallback when MySQL FULLTEXT isn&#039;t available). No change on standard MySQL\/MariaDB.<\/p>","0.9.4":"<p>Choose which post types to index from the first-run screen, a clearer getting-started step 3, and a fix so de-selecting a post type removes its posts from the analysis instead of leaving them behind.<\/p>","0.9.3":"<p>Listing name updated so the plugin is easier to find on WordPress.org. No functional changes.<\/p>","0.9.1":"<p>Clearer onboarding with clickable steps, plain-language tooltips across the dashboard, and better-timed review prompts.<\/p>","0.8.0":"<p>Renamed to Relinka for Internal Linking. Now a fully free toolkit that runs entirely on your server \u2014 no account, API key, or external service.<\/p>","0.7.19":"<p>More reliable card placement: suggestions re-anchor correctly after edits and never split a bulleted list. Free monthly AI cap adjusted to 15.<\/p>","0.7.18":"<p>More suggestions per article, theme-card rendering for bare internal links, and admin title-display fixes.<\/p>","0.7.17":"<p>Smarter, more natural multi-word anchors and better keyless suggestions. The plugin remains free; an optional Pro tier is now available.<\/p>","0.7.14":"<p>Theme-agnostic link cards, an internal-link health score with one-click orphan fixing, safer placement (noindex\/page-builder aware), and a refreshed, accessible admin UI.<\/p>","0.6.0":"<p>Improved suggestion quality and faster indexing.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3581103,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3581103,"resolution":"256x256","location":"assets","locale":"","width":512,"height":512}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3578190,"resolution":"1544x500","location":"assets","locale":"","width":3088,"height":1000},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3578190,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3586732,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"meta\":{\"title\":\"Relinka \\u2014 internal-link audit (demo content)\",\"description\":\"Boots a small interlinked site so Relinka's audit \\u2014 health score, orphan pages, broken links, keyword cluster graph and link suggestions \\u2014 has real data to explore.\",\"author\":\"krafts03\",\"categories\":[\"SEO\"]},\"landingPage\":\"\\\/wp-admin\\\/admin.php?page=relinka\",\"steps\":[{\"step\":\"login\",\"username\":\"admin\",\"password\":\"password\"},{\"step\":\"runPHP\",\"code\":\"<?php\\nrequire_once '\\\/wordpress\\\/wp-load.php';\\nupdate_option('blogname', 'The Houseplant Almanac');\\nupdate_option('permalink_structure', '\\\/%postname%\\\/');\\n$P = json_decode(\\\"[[\\\\\\\"watering\\\\\\\",\\\\\\\"How to Water Houseplants Without Killing Them\\\\\\\",\\\\\\\"Overwatering is the number one way to kill a houseplant. Let the top inch of soil dry before the next drink for most indoor plants.\\\\\\\",[\\\\\\\"repotting\\\\\\\",\\\\\\\"humidity\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"light\\\\\\\",\\\\\\\"Understanding Light for Indoor Plants\\\\\\\",\\\\\\\"Light is the biggest factor in how an indoor plant grows. Bright indirect light suits most popular houseplants near a window.\\\\\\\",[\\\\\\\"pests\\\\\\\",\\\\\\\"watering\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"repotting\\\\\\\",\\\\\\\"Repotting and Choosing the Right Soil\\\\\\\",\\\\\\\"Repot houseplants when roots circle the pot. Use a well draining mix of soil, bark and perlite for healthy indoor plants.\\\\\\\",[\\\\\\\"watering\\\\\\\"],\\\\\\\"soil-drainage-tips\\\\\\\"],[\\\\\\\"propagating\\\\\\\",\\\\\\\"Propagating Houseplants from Cuttings\\\\\\\",\\\\\\\"Many houseplants root easily from stem cuttings in water or moist soil. Take a cutting below a node and keep it bright.\\\\\\\",[\\\\\\\"light\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"pests\\\\\\\",\\\\\\\"Common Houseplant Pests and How to Fix Them\\\\\\\",\\\\\\\"Spider mites, fungus gnats and mealybugs attack stressed indoor plants. Isolate the plant and treat with neem oil.\\\\\\\",[\\\\\\\"watering\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"humidity\\\\\\\",\\\\\\\"Humidity Tips for Tropical Houseplants\\\\\\\",\\\\\\\"Tropical houseplants like higher humidity than most homes provide. Group plants or run a humidifier near sensitive species.\\\\\\\",[\\\\\\\"light\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"fertilizing\\\\\\\",\\\\\\\"Fertilizing Houseplants: A Simple Schedule\\\\\\\",\\\\\\\"Most houseplants only need feeding during the growing season. A balanced liquid fertilizer at half strength is plenty.\\\\\\\",[\\\\\\\"repotting\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"winter\\\\\\\",\\\\\\\"Winter Care for Indoor Plants\\\\\\\",\\\\\\\"Growth slows in winter as light drops, so indoor plants need less water and little fertilizer. Keep them from cold drafts.\\\\\\\",[],\\\\\\\"\\\\\\\"],[\\\\\\\"monstera\\\\\\\",\\\\\\\"Monstera Deliciosa Care Guide\\\\\\\",\\\\\\\"The monstera is a forgiving houseplant that wants bright indirect light, a chunky airy mix and careful watering.\\\\\\\",[\\\\\\\"light\\\\\\\",\\\\\\\"watering\\\\\\\",\\\\\\\"repotting\\\\\\\",\\\\\\\"propagating\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"snake-plant\\\\\\\",\\\\\\\"Snake Plant Care Guide\\\\\\\",\\\\\\\"The snake plant tolerates low light and infrequent watering. Its biggest risk is rot from overwatering indoor plants.\\\\\\\",[\\\\\\\"light\\\\\\\",\\\\\\\"watering\\\\\\\"],\\\\\\\"low-light-plants-list\\\\\\\"],[\\\\\\\"pothos\\\\\\\",\\\\\\\"Pothos Care Guide for Beginners\\\\\\\",\\\\\\\"Pothos is an easy trailing houseplant that roots readily from cuttings and handles a range of light and watering.\\\\\\\",[\\\\\\\"propagating\\\\\\\",\\\\\\\"watering\\\\\\\",\\\\\\\"pests\\\\\\\"],\\\\\\\"\\\\\\\"],[\\\\\\\"peace-lily\\\\\\\",\\\\\\\"Peace Lily Care Guide\\\\\\\",\\\\\\\"The peace lily tolerates lower light and droops when thirsty. It enjoys higher humidity and rewards you with white blooms.\\\\\\\",[\\\\\\\"humidity\\\\\\\",\\\\\\\"watering\\\\\\\"],\\\\\\\"\\\\\\\"]]\\\", true);\\n$ids = array();\\nforeach ($P as $p) {\\n  $existing = get_page_by_path($p[0], OBJECT, 'post');\\n  $a = array('post_title' => $p[1], 'post_name' => $p[0], 'post_status' => 'publish', 'post_type' => 'post', 'post_content' => '<p>' . $p[2] . '<\\\/p>');\\n  if ($existing) { $a['ID'] = $existing->ID; }\\n  $ids[$p[0]] = wp_insert_post($a);\\n}\\n$titles = array();\\nforeach ($P as $p) { $titles[$p[0]] = $p[1]; }\\nforeach ($P as $p) {\\n  $c = '<p>' . $p[2] . '<\\\/p>';\\n  $rel = array();\\n  foreach ($p[3] as $s) { if (isset($ids[$s])) { $rel[] = '<a href=\\\"' . get_permalink($ids[$s]) . '\\\">' . $titles[$s] . '<\\\/a>'; } }\\n  if ($p[4] !== '') { $rel[] = '<a href=\\\"' . home_url('\\\/' . $p[4] . '\\\/') . '\\\">' . str_replace('-', ' ', $p[4]) . '<\\\/a>'; }\\n  if ($rel) { $c .= '<p>See also: ' . implode(', ', $rel) . '.<\\\/p>'; }\\n  wp_update_post(array('ID' => $ids[$p[0]], 'post_content' => $c));\\n}\\n$jm = new SmartIL\\\\Jobs\\\\Job_Manager();\\nforeach ($jm->all_indexable_ids() as $id) {\\n  (new SmartIL\\\\Index\\\\Indexer())->index_post($id, true);\\n  (new SmartIL\\\\Analysis\\\\Link_Analyzer())->analyze_post($id);\\n}\\nforeach ((new SmartIL\\\\DB\\\\Stats())->post_ids('') as $id) {\\n  (new SmartIL\\\\Suggestion\\\\Suggestion_Engine())->generate_for_post($id, 'outbound');\\n}\\necho 'relinka-demo-seeded';\\n\"},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"relinka\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["0.8.0","0.9.1","0.9.2","0.9.3","0.9.4","0.9.5","0.9.6"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3578190,"resolution":"1","location":"assets","locale":"","width":2880,"height":1462},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3578190,"resolution":"2","location":"assets","locale":"","width":2880,"height":1462},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3578190,"resolution":"3","location":"assets","locale":"","width":2880,"height":1462},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3578190,"resolution":"4","location":"assets","locale":"","width":2880,"height":1462},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3578190,"resolution":"5","location":"assets","locale":"","width":2880,"height":1462},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3578190,"resolution":"6","location":"assets","locale":"","width":2880,"height":1462},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3578190,"resolution":"7","location":"assets","locale":"","width":2880,"height":1462}},"screenshots":{"1":"Internal-link health score, orphans, and broken links at a glance.","2":"Link suggestions with a one-sentence reason and a natural anchor from your own text \u2014 approve in one click.","3":"One-click undo with a before\/after snapshot \u2014 nothing changes without you.","4":"Orphaned pages surfaced so you can give them inbound links.","5":"Broken internal links, found and listed for one-click fixing.","6":"Keyword cluster graph of how your topics connect.","7":"Settings: theme-agnostic card designs, or use your theme's own."}},"plugin_section":[],"plugin_tags":[14279,19933,6681,252136,1089],"plugin_category":[55],"plugin_contributors":[267838],"plugin_business_model":[],"class_list":["post-326949","plugin","type-plugin","status-publish","hentry","plugin_tags-broken-links","plugin_tags-internal-linking","plugin_tags-internal-links","plugin_tags-orphan-pages","plugin_tags-related-posts","plugin_category-seo-and-marketing","plugin_contributors-krafts03","plugin_committers-krafts03"],"banners":{"banner":"https:\/\/ps.w.org\/relinka\/assets\/banner-772x250.png?rev=3578190","banner_2x":"https:\/\/ps.w.org\/relinka\/assets\/banner-1544x500.png?rev=3578190","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/relinka\/assets\/icon-128x128.png?rev=3581103","icon_2x":"https:\/\/ps.w.org\/relinka\/assets\/icon-256x256.png?rev=3581103","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-1.png?rev=3578190","caption":"Internal-link health score, orphans, and broken links at a glance."},{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-2.png?rev=3578190","caption":"Link suggestions with a one-sentence reason and a natural anchor from your own text \u2014 approve in one click."},{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-3.png?rev=3578190","caption":"One-click undo with a before\/after snapshot \u2014 nothing changes without you."},{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-4.png?rev=3578190","caption":"Orphaned pages surfaced so you can give them inbound links."},{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-5.png?rev=3578190","caption":"Broken internal links, found and listed for one-click fixing."},{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-6.png?rev=3578190","caption":"Keyword cluster graph of how your topics connect."},{"src":"https:\/\/ps.w.org\/relinka\/assets\/screenshot-7.png?rev=3578190","caption":"Settings: theme-agnostic card designs, or use your theme's own."}],"raw_content":"<!--section=description-->\n<p><strong>Relinka<\/strong> is an <strong>internal linking plugin<\/strong> that turns hours of manual work into a fast, visual internal-link audit. It maps how your posts link to each other, scores how well your site is interlinked, finds broken and orphaned pages, and proposes relevant internal links to related posts \u2014 each with a short reason. You stay in control: <strong>approve or undo any change in one click<\/strong>, with a full before\/after snapshot.<\/p>\n\n<p>Internal links are one of the highest-leverage, most-neglected parts of on-page SEO: they spread link equity, fix orphaned pages, and help readers (and crawlers) discover related content. Relinka makes that work fast and safe \u2014 and it's <strong>completely free and fully functional<\/strong>: no account, no API key, no locked features.<\/p>\n\n<h4>What you get<\/h4>\n\n<ul>\n<li><strong>Internal link analysis &amp; visualization<\/strong> \u2014 inbound\/outbound counts, orphaned pages, pages with no outbound links.<\/li>\n<li><strong>Internal-link health score<\/strong> \u2014 one number (0\u2013100) for how well your site is interlinked, with one-click fixing of orphaned pages.<\/li>\n<li><strong>Broken internal link finder<\/strong> \u2014 see and fix dead internal links in one list.<\/li>\n<li><strong>Keyword cluster graph<\/strong> \u2014 see how your topics connect.<\/li>\n<li><strong>Relevant link suggestions with a reason<\/strong> \u2014 context-aware suggestions, in your content's language, built from your own text (no external service).<\/li>\n<li><strong>One-click approve \/ undo<\/strong> \u2014 every applied link is a revertable snapshot. Nothing is rewritten without your say-so.<\/li>\n<li><strong>Natural placement<\/strong> \u2014 links land at sensible spots, never splitting a lead-in from its list, never inside a list, call-to-action, or summary.<\/li>\n<li><strong>Link card or inline<\/strong> \u2014 choose how new links are inserted; theme-agnostic card designs included, or defer to your theme's own card.<\/li>\n<li><strong>No lock-in, no key<\/strong> \u2014 works on any theme, Gutenberg or Classic, with nothing to sign up for.<\/li>\n<\/ul>\n\n<h4>Why Relinka<\/h4>\n\n<p>Relinka explains <em>why<\/em> each link is suggested, takes every anchor word-for-word from your real text, and lets you undo instantly. It runs entirely on your own server \u2014 your content never leaves your site, and the plugin does not phone home.<\/p>\n\n<h4>Automatic internal linking, done safely<\/h4>\n\n<p>Suggestions come with a reason, anchors are taken from your real text, and every change is one-click reversible. You decide what gets applied \u2014 nothing is auto-published without you. It does not invent links: it only suggests links to pages that already exist on your site.<\/p>\n\n<h4>Find and fix orphaned pages<\/h4>\n\n<p>Relinka surfaces orphaned content (pages with no inbound links) and pages with no outbound links, and can suggest links to fix them in one click \u2014 so link equity reaches every page.<\/p>\n\n<h4>Works with your SEO stack<\/h4>\n\n<p>Complements Yoast, Rank Math, SEOPress, The SEO Framework, and All in One SEO \u2014 and respects pages you've set to noindex. Page-builder content (Elementor, Divi, WPBakery, Beaver) is protected from card insertion.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/relinka\/<\/code> or install from the Plugins screen.<\/li>\n<li>Activate <strong>Relinka<\/strong>.<\/li>\n<li>Open <strong>Relinka<\/strong> in the admin menu and run an index. The analysis, graph and broken-link tools work immediately.<\/li>\n<li>Generate suggestions and approve the ones you like \u2014 undo any change in one click.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20need%20an%20account%20or%20api%20key%3F\"><h3>Does it need an account or API key?<\/h3><\/dt>\n<dd><p>No. Relinka is fully functional with no account and no API key. Everything runs on your own server.<\/p><\/dd>\n<dt id=\"will%20it%20change%20my%20content%20automatically%3F\"><h3>Will it change my content automatically?<\/h3><\/dt>\n<dd><p>No. Suggestions are never applied until you approve them, and every applied link can be undone with a one-click revert (a full snapshot is kept).<\/p><\/dd>\n<dt id=\"does%20it%20send%20my%20content%20anywhere%3F\"><h3>Does it send my content anywhere?<\/h3><\/dt>\n<dd><p>No. Relinka does not send your content off-site and does not phone home. All analysis and suggestion generation happen locally on your server.<\/p><\/dd>\n<dt id=\"does%20it%20make%20up%20links%20or%20anchors%3F\"><h3>Does it make up links or anchors?<\/h3><\/dt>\n<dd><p>No. It only suggests links to pages that already exist on your site, and every anchor phrase is taken word-for-word from your own content. You review and approve each suggestion \u2014 nothing is invented or auto-applied.<\/p><\/dd>\n<dt id=\"which%20page%20builders%20are%20supported%3F\"><h3>Which page builders are supported?<\/h3><\/dt>\n<dd><p>Gutenberg (block editor) and the Classic editor are supported. Page-builder posts (Elementor, Divi, WPBakery, Beaver) are detected and protected from card insertion so layouts aren't broken. Link cards are theme-agnostic and styled by the plugin, or you can defer to your theme's own card.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20my%20seo%20plugin%3F\"><h3>Is it compatible with my SEO plugin?<\/h3><\/dt>\n<dd><p>Yes. Relinka focuses on internal links and complements Yoast, Rank Math, SEOPress, The SEO Framework, and All in One SEO. Pages marked noindex in those plugins are excluded.<\/p><\/dd>\n<dt id=\"does%20it%20work%20on%20non-english%20sites%3F\"><h3>Does it work on non-English sites?<\/h3><\/dt>\n<dd><p>Yes. It suggests links in your content's language and is validated on English and Japanese sites.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20uninstall%3F\"><h3>What happens when I uninstall?<\/h3><\/dt>\n<dd><p>Uninstalling removes the plugin's data \u2014 its tables (index, suggestions, application snapshots) and settings \u2014 so nothing is left behind.<\/p><\/dd>\n<dt id=\"i%20have%20thousands%20of%20posts%20%E2%80%94%20will%20it%20slow%20down%20or%20time%20out%3F\"><h3>I have thousands of posts \u2014 will it slow down or time out?<\/h3><\/dt>\n<dd><p>Indexing and suggestion jobs run in batches with a per-run time budget, so they make progress safely on large sites rather than timing out. For very large sites, run indexing during off-peak hours.<\/p><\/dd>\n<dt id=\"does%20it%20support%20multisite%3F\"><h3>Does it support multisite?<\/h3><\/dt>\n<dd><p>Single-site installs are supported. Multisite is not yet specifically tested.<\/p><\/dd>\n<dt id=\"how%20much%20does%20it%20cost%3F\"><h3>How much does it cost?<\/h3><\/dt>\n<dd><p>Relinka is free and fully functional on WordPress.org. A separate Pro add-on (distributed from the author's site) adds AI-assisted suggestions and automation; it is optional and never required.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.9.6<\/h4>\n\n<ul>\n<li>Fix: the \"Leave a review\" button could render as terracotta underlined text instead of a button; it now renders consistently.<\/li>\n<li>Improve: the review prompt now appears after you apply a change (the Suggestions tab) rather than on the dashboard.<\/li>\n<li>Tidy: the keyword-cluster view maps by article title and notes where the optional Pro query inference would help.<\/li>\n<\/ul>\n\n<h4>0.9.5<\/h4>\n\n<ul>\n<li>New: link suggestions now also work on SQLite-based WordPress (for example, the in-browser WordPress Playground) via a portable fallback used only when MySQL FULLTEXT search isn't available. Behaviour on standard MySQL\/MariaDB is unchanged.<\/li>\n<\/ul>\n\n<h4>0.9.4<\/h4>\n\n<ul>\n<li>Fix: changing which post types are indexed now takes effect properly. Previously, de-selecting a post type and re-indexing left the old type's posts in the analysis, graph and orphan views; they are now removed when you save the setting or run a full re-index.<\/li>\n<li>New: the first-run screen now lets you choose which post types to index before the first index, so you start with the right content instead of having to fix the scope afterwards.<\/li>\n<li>Fix: the getting-started checklist no longer tells you to \"approve\" or \"review\" suggestions before any exist \u2014 its third step now guides you to generate your first suggestions.<\/li>\n<\/ul>\n\n<h4>0.9.3<\/h4>\n\n<ul>\n<li>Clearer listing name in the plugin directory (\"Internal Linking &amp; Orphan Page Finder\") so the right people can find it. No functional changes.<\/li>\n<\/ul>\n\n<h4>0.9.2<\/h4>\n\n<ul>\n<li>Clearer plugin-directory listing (tags and description) so the right people can find it. No functional changes.<\/li>\n<\/ul>\n\n<h4>0.9.1<\/h4>\n\n<ul>\n<li>Onboarding: the quick-start steps are now clickable \u2014 each jumps to (or runs) its action \u2014 and show your progress.<\/li>\n<li>New: hover tooltips that explain the dashboard metrics, the link-health factors, and suggestion details (direction, relevance) in plain language.<\/li>\n<li>The review request now appears after a few applied links, so it lands at a more natural moment.<\/li>\n<li>Fixed the in-product \"Learn about Pro\" link and added a contextual pointer in the suggestions queue.<\/li>\n<li>Small UX polish.<\/li>\n<\/ul>\n\n<h4>0.9.0<\/h4>\n\n<ul>\n<li>Onboarding: a dismissible 3-step quick-start checklist on the dashboard.<\/li>\n<li>A gentle, one-time review request after your first applied change (dismissible).<\/li>\n<li>Clearer in-product pointers and small UX polish.<\/li>\n<\/ul>\n\n<h4>0.8.0<\/h4>\n\n<ul>\n<li>Renamed to <strong>Relinka for Internal Linking<\/strong>.<\/li>\n<li>Now a fully free, fully functional internal-linking toolkit: link analysis &amp; visualization, keyword cluster graph, internal-link health score, broken-link finder, and relevant link suggestions \u2014 all running locally with no account, API key, or external service.<\/li>\n<li>Suggestions are generated on your own server from your content; nothing is sent off-site.<\/li>\n<li>Card styles are now enqueued via the standard WordPress style API.<\/li>\n<li>Hardened REST permission checks on link-data, revert, and clear-suggestions endpoints.<\/li>\n<\/ul>\n\n<h4>0.7.19<\/h4>\n\n<ul>\n<li>Fix: link-card placement is now drift-proof \u2014 if a card was added above a pending suggestion, the suggestion re-anchors to the right spot instead of landing a paragraph too high. The preview shows exactly where the card will go.<\/li>\n<li>Fix: cards are no longer inserted in the middle of a bulleted\/numbered list or between a lead-in and the list it introduces; a list at the end of a section is still a valid spot.<\/li>\n<li>Internal: placement geometry is now shared by suggestion generation, preview, and apply, so all three always agree.<\/li>\n<li>Pricing: the free monthly AI cap is now 15 (one AI run per article\/direction). Non-AI suggestions remain unlimited; Pro lifts the cap.<\/li>\n<\/ul>\n\n<h4>0.7.18<\/h4>\n\n<ul>\n<li>AI: more suggestions per article \u2014 the inbound shortlist no longer over-filters, so several genuinely relevant articles can be proposed to link to a page (up to your per-post limit), not just one.<\/li>\n<li>Cards: when \"use your theme's card\" is selected, a bare internal link no longer falls back to WordPress's default post-embed box \u2014 the theme renders its own card (or a clean link).<\/li>\n<li>Fix: titles containing apostrophes\/quotes now display correctly in the admin (no more \"&#8217;\").<\/li>\n<li>Pricing: the free monthly AI limit is enforced consistently (1\u201330); the unlimited tier is the Pro upgrade.<\/li>\n<\/ul>\n\n<h4>0.7.17<\/h4>\n\n<ul>\n<li>AI: smarter anchors \u2014 suggestions now use natural, descriptive multi-word phrases taken from your text, instead of single generic words.<\/li>\n<li>AI: more relevant keyless (no-API-key) suggestions, with a clearer shared-topic reason for each.<\/li>\n<li>Improved English-language placement guards and noindex handling for All in One SEO.<\/li>\n<li>Pricing: the free monthly AI-suggestion allowance is now 30 per month.<\/li>\n<li>Foundation for an optional Pro tier (unlimited AI). The WordPress.org build remains fully free; Pro is opt-in and never required.<\/li>\n<\/ul>\n\n<h4>0.7.14<\/h4>\n\n<ul>\n<li>New: theme-agnostic link cards \u2014 three designs plus an option to use your theme's own card, with a live preview.<\/li>\n<li>New: internal-link health score (0\u2013100) with one-click fixing of orphaned pages.<\/li>\n<li>New: keyword cluster graph, now with a smooth, non-blocking layout on large sites.<\/li>\n<li>Safety: noindex pages are excluded, and page-builder posts (Elementor, Divi, WPBakery, Beaver, etc.) are protected from card insertion.<\/li>\n<li>Safety: rel \/ nofollow and open-in-new-tab controls for inserted links.<\/li>\n<li>AI: opt-in and off by default; clear data-flow disclosure; monthly free-AI usage counter; built-in guide to get a free Google Gemini key.<\/li>\n<li>AI: automatic retry on rate limits and clearer quota\/error messages.<\/li>\n<li>Performance: faster, lighter indexing via batched embeddings.<\/li>\n<li>UX: major admin refresh \u2014 clearer dashboard, accessible tabs and dialogs, full keyboard support, plain-language labels, and a modern flat\/rounded design.<\/li>\n<\/ul>\n\n<h4>0.6.0<\/h4>\n\n<ul>\n<li>Section-aware semantic placement and link distribution.<\/li>\n<li>Batched, lower-dimension embeddings for faster, lighter indexing.<\/li>\n<li>Direction filter and refined placement guards.<\/li>\n<\/ul>","raw_excerpt":"Free internal linking plugin: visualize your link graph, score link health, fix orphaned &amp; broken links, add related links with one-click undo.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/326949","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=326949"}],"author":[{"embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/krafts03"}],"wp:attachment":[{"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=326949"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=326949"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=326949"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=326949"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=326949"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/el.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=326949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}