[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fO4Jd02ecI2JH30ZPBeRCzA-2c6S-McA0au5lpPu5z7c":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":32,"crawl_stats":29,"alternatives":38,"analysis":130,"fingerprints":292},"better-internal-link-search","Better Internal Link Search","1.3.0","Blazer Six","https:\u002F\u002Fprofiles.wordpress.org\u002Fblazersix\u002F","\u003Cp>Better Internal Link Search improves the default internal link searching feature in a number of ways, making it faster and easier to find the content you want to link up.\u003C\u002Fp>\n\u003Cp>The most basic feature limits results to posts and pages that contain your search term in the title, rather than returning every post that contains the term in the title \u003Cem>or content field\u003C\u002Fem> — this greatly reduces the number of results on sites with a lot of content and should improve accuracy.\u003C\u002Fp>\n\u003Cp>Beyond that simple change are more powerful features that can be customized for your particular site, including creating shortcuts for often-used links and even searching external sites without leaving WordPress!\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Search by post or page title when adding links to the editor or adding pages to a nav menu.\u003C\u002Fli>\n\u003Cli>Includes terms from any taxonomy in the search results so you can easily link to term archives.\u003C\u002Fli>\n\u003Cli>Scheduled posts are included in search results.\u003C\u002Fli>\n\u003Cli>Text highlighted in the editor when opening the internal link popup is searched for automatically.\u003C\u002Fli>\n\u003Cli>Adds a shortcut for quickly linking to the homepage. Just type ‘home’.\u003C\u002Fli>\n\u003Cli>Provides the ability to create custom shortcuts with a little code.\u003C\u002Fli>\n\u003Cli>Powerful modifiers included for searching additional data sources to make linking fast and easy (Wikipedia, GitHub, iTunes, Spotify, Codex).\u003C\u002Fli>\n\u003Cli>Extendable so developers can add their own sources.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Typeahead Search\u003C\u002Fh3>\n\u003Cp>Instantly see search results for pages, posts, media items or other custom post types on their Manage Posts screens. As soon as you start typing in the search field, the table instantly updates with results for whichever post type you’re viewing. Pressing enter or clicking the search button will continue to return posts using the default search algorithm (post titles and content).\u003C\u002Fp>\n\u003Ch3>Additional Resources\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fview\u002Fplugin-reviews\u002Fbetter-internal-link-search#postform\" rel=\"ugc\">Write a review\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcedaro\u002Fbetter-internal-link-search\" rel=\"nofollow ugc\">Contribute on GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fcedaroco\" rel=\"nofollow ugc\">Follow @cedaroco\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.cedaro.com\u002F?utm_source=wordpress.org&utm_medium=link&utm_content=better-internal-link-search-readme&utm_campaign=plugins\" rel=\"nofollow ugc\">Visit Cedaro\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Screencast\u003C\u002Fh3>\n\u003Cp>Eric Amundson over at \u003Ca href=\"https:\u002F\u002Fivycat.com\u002F\" rel=\"nofollow ugc\">Ivy Cat\u003C\u002Fa> recorded this great overview of the plugin’s features:\u003C\u002Fp>\n\u003Cp>\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\u002FWfyTiVTdEX8?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>\u003C\u002Fp>\n","Improve the internal link popup manager with time-saving enhancements and features.",1000,56143,100,25,"2016-12-02T07:13:00.000Z","4.8.28","4.4","",[20,21,22,23,24],"editor","internal-links","links","nav-menus","search","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbetter-internal-link-search\u002F?utm_source=wordpress-plugin&utm_medium=link&utm_content=better-internal-link-search-plugin-uri&utm_campaign=plugins","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbetter-internal-link-search.1.3.0.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":11,"avg_security_score":27,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"blazersix",1,30,84,"2026-04-04T03:53:50.200Z",[39,59,83,99,117],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":28,"num_ratings":28,"last_updated":18,"tested_up_to":49,"requires_at_least":50,"requires_php":51,"tags":52,"homepage":18,"download_link":57,"security_score":13,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":58},"hgw-better-internal-link-search-for-block-editor","HGW Better internal link search for Block editor","1.0.2","Asadiyan","https:\u002F\u002Fprofiles.wordpress.org\u002Fasadiy4n\u002F","\u003Cp>\u003Cstrong>HGW Better internal link search for Block editor\u003C\u002Fstrong> improves the default internal link search inside the block editor by adding a \u003Cstrong>post type or category selector\u003C\u002Fstrong> to the link popup.\u003Cbr \u002F>\nThis allows editors to narrow down search results to specific post types such as \u003Cem>Posts, Pages, or custom post types\u003C\u002Fem>.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Adds a clean “post type and category filter” dropdown above Block editor link search results.\u003C\u002Fli>\n\u003Cli>Works with all REST-visible and publicly queryable post types.\u003C\u002Fli>\n\u003Cli>No database queries or custom endpoints — fully uses WordPress core APIs.\u003C\u002Fli>\n\u003Cli>Loads only inside the editor, never on the front-end.\u003C\u002Fli>\n\u003Cli>Lightweight, fast, and compatible with all major themes and plugins.\u003C\u002Fli>\n\u003C\u002Ful>\n","Improved internal link search in the block editor linkControl popup by adding an option to search by post type and taxonomy.",10,262,"6.9.4","6.0","7.4",[53,54,21,55,56],"block-editor","internal-linking","link-search","seo","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fhgw-better-internal-link-search-for-block-editor.1.0.2.zip","2026-03-15T10:48:56.248Z",{"slug":60,"name":61,"version":62,"author":63,"author_profile":64,"description":65,"short_description":66,"active_installs":67,"downloaded":68,"rating":69,"num_ratings":70,"last_updated":71,"tested_up_to":72,"requires_at_least":73,"requires_php":51,"tags":74,"homepage":78,"download_link":79,"security_score":80,"vuln_count":81,"unpatched_count":28,"last_vuln_date":82,"fetched_at":30},"seo-automated-link-building","Internal Links Manager","3.0.3","webraketen","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebraketen\u002F","\u003Ch3>What does Internal Links Manager do?\u003C\u002Fh3>\n\u003Cp>You simply provide a keyword and an URL. Whenever the keyword appears on your site, it builds links automatically to the given URL.\u003C\u002Fp>\n\u003Cp>Here is an example: You have written a blogpost on “How to learn guitar”. Now you want the URL “yourdomain.com\u002Fhow-to-learn-guitar” to be automatically linked whenever the keyword “learn guitar” appears on your website. You simply navigate to “Add link” within the menu and provide the requested parameters (mainly keyword + URL).\u003C\u002Fp>\n\u003Ch3>Why (internal) link building is so important\u003C\u002Fh3>\n\u003Cp>Improve your UX: Give your users the opportunity to discover relevant content with one click. Link important keywords with an related link. Your users stay longer on your website and get relevant information. As a side effect it improves your bounce rate, which is one of Googles ranking factors.\u003C\u002Fp>\n\u003Cp>Boost your SEO: Internal links also important for search engines. Through internal links you can spread link equity and establish your site architecture.\u003C\u002Fp>\n\u003Ch3>How to use\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Select menu item “Add link”\u003C\u002Fli>\n\u003Cli>Assign title (mainly for internal use)\u003C\u002Fli>\n\u003Cli>Optionally assign a link title (title attribute \u003Ca title=\"””\" rel=\"nofollow ugc\"> in HTML)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Assign keywords, comma separated (keyword1, keyword2, etc.)\u003C\u002Fli>\n\u003Cli>Enter URL (Where should the keyword link to?)\u003C\u002Fli>\n\u003Cli>Optionally increase the number (How often should the link appear on a page?)\u003C\u002Fli>\n\u003Cli>Optionally set link nofollow (Should searchengine follow this link?)\u003C\u002Fli>\n\u003Cli>Choose link target (Open link in same tab or in new tab)\u003C\u002Fli>\n\u003Cli>Click save\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The specified keywords on your website are now provided with the corresponding link and settings.\u003C\u002Fp>\n","Boost your SEO and get better rankings with our automated link building plugin. With this plugin you can link any keyword to any URL - internal or ext &hellip;",10000,199201,96,33,"2025-10-28T16:08:00.000Z","6.8.5","5.0",[21,75,76,56,77],"link-building","search-engine-optimization","user-experience","https:\u002F\u002Finternal-links-manager.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fseo-automated-link-building.3.0.3.zip",97,3,"2025-09-19 00:00:00",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":91,"downloaded":92,"rating":28,"num_ratings":28,"last_updated":93,"tested_up_to":49,"requires_at_least":73,"requires_php":51,"tags":94,"homepage":18,"download_link":98,"security_score":13,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"seojuice","SEOJuice","2.0.14","Calm North Labs - SEOJuice Team","https:\u002F\u002Fprofiles.wordpress.org\u002Fseojuice\u002F","\u003Cp>SEOJuice helps you monitor and improve your website visibility across traditional search engines and AI platforms. Track your presence in ChatGPT, Claude, Gemini, and Perplexity while automating on-page SEO optimization.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Version 2.0:\u003C\u002Fstrong> Enhanced performance with improved optimization delivery and AI platform tracking.\u003C\u002Fp>\n\u003Ch4>Core Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>AI Visibility Tracking\u003C\u002Fstrong>\u003Cbr \u002F>\n* Monitor your presence in ChatGPT, Claude, Gemini, and Perplexity\u003Cbr \u002F>\n* Track AI citations and mentions\u003Cbr \u002F>\n* Real-time prompt analysis\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Search Engine Visibility\u003C\u002Fstrong>\u003Cbr \u002F>\n* Google Search Console integration\u003Cbr \u002F>\n* Traffic and ranking monitoring\u003Cbr \u002F>\n* Performance benchmarks\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Automated On-Page SEO\u003C\u002Fstrong>\u003Cbr \u002F>\n* Smart internal linking with contextual suggestions\u003Cbr \u002F>\n* Meta tags and structured data optimization\u003Cbr \u002F>\n* AI-generated image alt text\u003Cbr \u002F>\n* 95+ language support\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Technical SEO Audits\u003C\u002Fstrong>\u003Cbr \u002F>\n* Core Web Vitals monitoring\u003Cbr \u002F>\n* Broken link detection\u003Cbr \u002F>\n* Comprehensive site analysis\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Analytics & Reports\u003C\u002Fstrong>\u003Cbr \u002F>\n* Detailed visibility metrics\u003Cbr \u002F>\n* PDF reports with whitelabel support\u003Cbr \u002F>\n* Competitor tracking\u003C\u002Fp>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Connect your WordPress site to SEOJuice\u003C\u002Fli>\n\u003Cli>Automatic analysis of your content and optimization opportunities\u003C\u002Fli>\n\u003Cli>Monitor your visibility across search engines and AI platforms\u003C\u002Fli>\n\u003Cli>Receive actionable insights and automated improvements\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Compatibility\u003C\u002Fh4>\n\u003Cp>Works with any WordPress theme, page builders (Elementor, Divi, Beaver Builder), caching plugins (WP Rocket, LiteSpeed, SG Optimizer), and SEO plugins (Yoast, Rank Math).\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to SEOJuice services:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Services Used:\u003C\u002Fstrong>\u003Cbr \u002F>\n* API: smart.seojuice.io – SEO optimization data\u003Cbr \u002F>\n* CDN: cdn.seojuice.io – Tracking script\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Data Processing:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Page URLs sent for analysis\u003Cbr \u002F>\n* Content analyzed via crawlers\u003Cbr \u002F>\n* No personal user data collected\u003Cbr \u002F>\n* GDPR compliant\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Links:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Terms: https:\u002F\u002Fseojuice.io\u002Fterms\u003Cbr \u002F>\n* Privacy: https:\u002F\u002Fseojuice.io\u002Fprivacy-policy\u002F\u003Cbr \u002F>\n* DPA: https:\u002F\u002Fseojuice.io\u002Fdata-processing-agreement\u002F\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Need help? Contact hello@seojuice.io or visit https:\u002F\u002Fhelp.seojuice.io\u003C\u002Fp>\n\u003Cp>Built to help you increase visibility across search engines and AI platforms. Learn more at https:\u002F\u002Fseojuice.io\u003C\u002Fp>\n","Increase your website visibility across Google, ChatGPT, Claude, Gemini, and Perplexity with automated SEO optimization.",70,1763,"2026-03-03T17:37:00.000Z",[95,21,96,56,97],"ai-search","meta-tags","visibility-tracking","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fseojuice.2.0.14.zip",{"slug":100,"name":101,"version":102,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":47,"downloaded":107,"rating":13,"num_ratings":34,"last_updated":108,"tested_up_to":109,"requires_at_least":110,"requires_php":111,"tags":112,"homepage":115,"download_link":116,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"wp-subtitle-support-for-better-internal-link-search","WP Subtitle Support for Better Internal Link Search","0.1.0","mjaschen","https:\u002F\u002Fprofiles.wordpress.org\u002Fmjaschen\u002F","\u003Cp>Better Internal Link Search improves the default internal link searching feature in a number of ways. What’s missing is the support for searching subtitles which are added by the WP Subtitle plugin.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Searches subtitles added by WP Subtitle in the internal link search popup.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Additional Resources\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-subtitle-support-for-better-internal-link-search\u002F#postform\" rel=\"ugc\">Write a review\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fministryofweb\u002Fbetter-internal-link-search-wp-subtitle\" rel=\"nofollow ugc\">Contribute on GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fmjaschen\" rel=\"nofollow ugc\">Follow @mjaschen\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.marcusjaschen.de\u002F\" rel=\"nofollow ugc\">Visit Marcus Jaschen\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Adds support for the \"WP Subtitle\" plugin to the \"Better Internal Link Search\" plugin.",1863,"2018-02-09T07:43:00.000Z","4.9.29","4.6","5.3",[21,22,24,113,114],"wp-subtitle","wps","https:\u002F\u002Fgithub.com\u002Fministryofweb\u002Fbetter-internal-link-search-wp-subtitle","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-subtitle-support-for-better-internal-link-search.0.1.2.zip",{"slug":118,"name":119,"version":102,"author":120,"author_profile":121,"description":122,"short_description":123,"active_installs":28,"downloaded":124,"rating":28,"num_ratings":28,"last_updated":125,"tested_up_to":49,"requires_at_least":50,"requires_php":51,"tags":126,"homepage":128,"download_link":129,"security_score":13,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"ap-internal-linking-helper","AP Internal Linking Helper","apsystemslab","https:\u002F\u002Fprofiles.wordpress.org\u002Fapsystemslab\u002F","\u003Cp>AP Internal Linking Helper adds a focused, distraction-free sidebar to the block editor that suggests internal links while you write.\u003C\u002Fp>\n\u003Cp>It’s built for writers, bloggers, and small site owners who want better internal link coverage without running a full SEO suite or dealing with complicated setup. The plugin scans your existing posts and pages, then surfaces suggestions you can copy or open directly from the editor.\u003C\u002Fp>\n\u003Cp>It’s an editor-only helper – it doesn’t change your theme or front end. There’s no configuration screen, no settings to tune, and nothing for clients to break. Activate it and start getting link ideas on your next post.\u003C\u002Fp>\n\u003Cp>Key points:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Editor-only helper – it doesn’t change your theme or front end.\u003C\u002Fli>\n\u003Cli>No configuration required for basic use.\u003C\u002Fli>\n\u003Cli>Works alongside your existing SEO plugin or workflow.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Need more control?\u003C\u002Fp>\n\u003Cp>If you outgrow the free version, \u003Cstrong>AP Link Helper Pro\u003C\u002Fstrong> adds:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>One-click insertion into selected text.\u003C\u002Fli>\n\u003Cli>More suggestions per post for content-heavy sites.\u003C\u002Fli>\n\u003Cli>Rules and exclusions to filter what appears.\u003C\u002Fli>\n\u003Cli>Optional AI-assisted anchor ideas, generated from your own content.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Learn more and purchase Pro here:\u003Cbr \u002F>\nhttps:\u002F\u002Fnoo0oobep-eng.github.io\u002Fap-systems-lab-site\u002F\u003C\u002Fp>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Open the editor for a post or page.\u003C\u002Fli>\n\u003Cli>In the right sidebar, enable the \u003Cstrong>“AP Link Helper”\u003C\u002Fstrong> panel if it isn’t already visible.\u003C\u002Fli>\n\u003Cli>As you write, the panel shows internal link suggestions based on your existing content.\u003C\u002Fli>\n\u003Cli>Use the \u003Cstrong>Copy link\u003C\u002Fstrong> or \u003Cstrong>Open\u003C\u002Fstrong> actions to add links quickly without leaving the editor.\u003C\u002Fli>\n\u003C\u002Fol>\n","Lightweight internal linking suggestions inside the WordPress block editor.",137,"2025-12-16T11:18:00.000Z",[53,127,21,56],"content-workflow","https:\u002F\u002Fgithub.com\u002Fnoo0oobep-eng\u002Fap-internal-linking-helper","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fap-internal-linking-helper.0.1.0.zip",{"attackSurface":131,"codeSignals":244,"taintFlows":257,"riskAssessment":283,"analyzedAt":291},{"hooks":132,"ajaxHandlers":231,"restRoutes":240,"shortcodes":241,"cronEvents":242,"entryPointCount":243,"unprotectedCount":28},[133,139,142,146,149,154,158,162,166,170,174,178,181,183,188,192,196,200,204,208,212,216,220,224,228],{"type":134,"name":135,"callback":136,"file":137,"line":138},"action","plugins_loaded","load","better-internal-link-search.php",39,{"type":134,"name":140,"callback":140,"file":137,"line":141},"admin_init",74,{"type":134,"name":143,"callback":144,"file":137,"line":145},"wp_enqueue_editor","enqueue_editor_assets",77,{"type":134,"name":140,"callback":147,"file":137,"line":148},"upgrade",80,{"type":150,"name":151,"callback":152,"priority":47,"file":137,"line":153},"filter","better_internal_link_search_modifier-help","search_modifier_help",92,{"type":150,"name":155,"callback":156,"file":137,"line":157},"wp_link_query_args","unsupress_posts_search_filters",107,{"type":150,"name":159,"callback":160,"priority":47,"file":137,"line":161},"posts_search","limit_search_to_title",108,{"type":134,"name":163,"callback":164,"file":137,"line":165},"pre_get_posts","set_query_vars",109,{"type":134,"name":167,"callback":168,"priority":34,"file":137,"line":169},"after_wp_tiny_mce","print_editor_styles",334,{"type":134,"name":171,"callback":171,"file":172,"line":173},"init","includes\\posts-list-table.php",16,{"type":134,"name":175,"callback":176,"file":172,"line":177},"admin_head-edit.php","admin_head_edit",26,{"type":134,"name":179,"callback":176,"file":172,"line":180},"admin_head-upload.php",27,{"type":150,"name":159,"callback":160,"priority":47,"file":172,"line":182},124,{"type":150,"name":184,"callback":185,"priority":47,"file":186,"line":187},"better_internal_link_search_modifier_help","bils_default_modifier_help","includes\\search-modifiers.php",122,{"type":150,"name":189,"callback":190,"priority":47,"file":186,"line":191},"better_internal_link_search_modifier-codex","bils_wpcodex_search",163,{"type":150,"name":193,"callback":194,"priority":47,"file":186,"line":195},"better_internal_link_search_modifier-gists","bils_gists_search",196,{"type":150,"name":197,"callback":198,"priority":47,"file":186,"line":199},"better_internal_link_search_modifier-github","bils_github_search",238,{"type":150,"name":201,"callback":202,"priority":47,"file":186,"line":203},"better_internal_link_search_modifier-itunes","bils_itunes_search",344,{"type":150,"name":205,"callback":206,"priority":47,"file":186,"line":207},"better_internal_link_search_modifier-plugins","bils_wpplugins_search",383,{"type":150,"name":209,"callback":210,"priority":47,"file":186,"line":211},"better_internal_link_search_modifier-spotify","bils_spotify_search",432,{"type":150,"name":213,"callback":214,"priority":47,"file":186,"line":215},"better_internal_link_search_modifier-user","bils_user_search",494,{"type":150,"name":217,"callback":218,"priority":47,"file":186,"line":219},"better_internal_link_search_modifier-wikipedia","bils_wikipedia_search",538,{"type":150,"name":221,"callback":222,"priority":47,"file":186,"line":223},"better_internal_link_search_modifier-media","bils_media_search",571,{"type":150,"name":225,"callback":226,"priority":47,"file":186,"line":227},"better_internal_link_search_results","bils_convert_to_shortlinks",587,{"type":134,"name":140,"callback":229,"file":230,"line":173},"register_settings","includes\\settings.php",[232,237],{"action":233,"nopriv":234,"callback":235,"hasNonce":236,"hasCapCheck":234,"file":137,"line":91},"wp-link-ajax",false,"ajax_get_link_search_results",true,{"action":238,"nopriv":234,"callback":239,"hasNonce":236,"hasCapCheck":234,"file":172,"line":14},"bils_get_posts_list_table","ajax_get_posts_list_table",[],[],[],2,{"dangerousFunctions":245,"sqlUsage":246,"outputEscaping":248,"fileOperations":28,"externalRequests":255,"nonceChecks":243,"capabilityChecks":34,"bundledLibraries":256},[],{"prepared":243,"raw":28,"locations":247},[],{"escaped":177,"rawEcho":243,"locations":249},[250,253],{"file":137,"line":251,"context":252},220,"raw output",{"file":137,"line":254,"context":252},308,6,[],[258,275],{"entryPoint":259,"graph":260,"unsanitizedCount":28,"severity":274},"ajax_get_link_search_results (better-internal-link-search.php:197)",{"nodes":261,"edges":272},[262,267],{"id":263,"type":264,"label":265,"file":137,"line":266},"n0","source","$_POST",204,{"id":268,"type":269,"label":270,"file":137,"line":48,"wp_function":271},"n1","sink","get_results() [SQLi]","get_results",[273],{"from":263,"to":268,"sanitized":236},"low",{"entryPoint":276,"graph":277,"unsanitizedCount":28,"severity":274},"\u003Cbetter-internal-link-search> (better-internal-link-search.php:0)",{"nodes":278,"edges":281},[279,280],{"id":263,"type":264,"label":265,"file":137,"line":266},{"id":268,"type":269,"label":270,"file":137,"line":48,"wp_function":271},[282],{"from":263,"to":268,"sanitized":236},{"summary":284,"deductions":285},"The \"better-internal-link-search\" plugin v1.3.0 exhibits a generally strong security posture based on the provided static analysis. The plugin demonstrates good practices by utilizing prepared statements for all SQL queries and a high percentage of properly escaped outputs. Crucially, there are no critical or high severity taint flows, and the attack surface is relatively small, consisting of two AJAX handlers with no explicit authentication checks.  The vulnerability history is also clean, with no recorded CVEs, which is a positive indicator of the plugin's security over time.\n\nDespite these strengths, the presence of two AJAX handlers without explicit authentication checks presents a potential, albeit low, risk. While the overall taint analysis is clean, this entry point could theoretically be abused if further vulnerabilities existed within the handler's logic that were not detected by the static analysis. The plugin's reliance on WordPress's built-in nonce checks and capability checks for its two identified entry points is a mitigating factor.  However, a more robust approach would involve explicitly verifying user capabilities or implementing custom authorization within the AJAX handlers themselves, rather than relying solely on implicit checks.\n\nIn conclusion, the \"better-internal-link-search\" plugin v1.3.0 is assessed as having a good security standing. Its adherence to secure coding practices for SQL and output handling, coupled with a clear vulnerability history, are significant strengths. The primary area for minor improvement lies in explicitly securing its AJAX entry points, even in the absence of identified high-severity issues.",[286,289],{"reason":287,"points":288},"Unprotected AJAX handlers present",8,{"reason":290,"points":81},"Low percentage of properly escaped outputs","2026-03-16T18:45:24.910Z",{"wat":293,"direct":302},{"assetPaths":294,"generatorPatterns":297,"scriptPaths":298,"versionParams":299},[295,296],"\u002Fwp-content\u002Fplugins\u002Fbetter-internal-link-search\u002Fcss\u002Fbetter-internal-link-search.css","\u002Fwp-content\u002Fplugins\u002Fbetter-internal-link-search\u002Fjs\u002Fbetter-internal-link-search.js",[],[296],[300,301],"better-internal-link-search\u002Fcss\u002Fbetter-internal-link-search.css?ver=","better-internal-link-search\u002Fjs\u002Fbetter-internal-link-search.js?ver=",{"cssClasses":303,"htmlComments":304,"htmlAttributes":305,"restEndpoints":306,"jsGlobals":307,"shortcodeOutput":309},[],[],[],[],[308],"Better_Internal_Link_Search",[]]