[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fvCoIP8V6faFfSGLyNjIOwcM6rQzk4adCbR609IPdwwk":3,"$fOT6EWHD3PWKvjyw68FF2WYRUxD57TMp1eLeuFKFBNwc":342,"$fK38xZ7R1fWqPbBD1GqaRcTpxSdKlkBqzGgAAyW3idbo":347},{"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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"discovery_status":29,"vulnerabilities":30,"developer":31,"crawl_stats":27,"alternatives":37,"analysis":136,"fingerprints":308},"contentside-semantic-platform","ContentSide Semantic Platform","1.6.1","ContentSide","https:\u002F\u002Fprofiles.wordpress.org\u002Fcontentside\u002F","\u003Cp>\u003Cstrong>Attention\u003C\u002Fstrong> : cette extension fonctionne exclusivement avec une clé API fournie par \u003Ca href=\"https:\u002F\u002Fwww.contentside.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">ContentSide\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>FONCTIONNALITÉS SEMANTIC PLATFORM\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Reconnaissance d’entités nommées\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>L’intelligence artificielle de l’extension Semantic Platform est capable d’identifier les entités nommées de vos articles. Une fois identifiées, elles sont contrôlées via votre dictionnaire.\u003Cbr \u002F>\nCelles qui n’en font pas partie, vous sont suggérées, afin que vous puissiez enrichir votre dictionnaire.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Recommandation de catégories\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>L’extension Semantic Platform est capable de rechercher, parmi vos catégories, celle(s) qui correspond(ent) le mieux à votre article.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Suggestion d’articles similaires\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Sur l’ensemble de votre article\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>L’extension Semantic Platform permet d’ajouter des liens vers des articles similaires suggérés par l’intelligence artificielle à partir de vos contenus.\u003C\u002Fp>\n\u003Cp>\u003Cem>Sur une portion de votre article\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>L’extension Semantic Platform vous permet de sélectionner un mot ou un ensemble de mots et de créer un lien vers un article similaire suggéré par l’intelligence artificielle..\u003C\u002Fp>\n\u003Ch3>ÉDITER FACILEMENT\u003C\u002Fh3>\n\u003Cp>✔️ Automatiser les tâches fastidieuses\u003C\u002Fp>\n\u003Cp>Parfaire la manière dont votre contenu sera visible en ligne nécessite un ensemble de tâches plutôt fastidieuses, mais pour autant essentielles. Grâce à l’intelligence artificielle, automatiser ces tâches vous permet un gain de temps et d’effort, décharge vos rédacteurs et vous assure un service de qualité experte.\u003C\u002Fp>\n\u003Cp>✔️ Limiter le taux d’erreur\u003C\u002Fp>\n\u003Cp>L’automatisation permet d’éviter un remplissage manuel erroné de données, et à l’inverse, de favoriser un résultat optimisé grâce à une vue d’ensemble de tous vos contenus.\u003C\u002Fp>\n\u003Cp>✔️ Options de personnalisation\u003C\u002Fp>\n\u003Cp>La personnalisation est un critère central pour se démarquer de vos concurrents. C’est pourquoi nous vous donnons la possibilité de choisir l’affichage des éléments que nous ajoutons à vos contenus pour les enrichir.\u003C\u002Fp>\n\u003Ch3>RENFORCER LE RÉFÉRENCEMENT\u003C\u002Fh3>\n\u003Cp>✔️ Renforcer le maillage interne\u003C\u002Fp>\n\u003Cp>Travailler le maillage de votre site web en insérant des liens pertinents entre vos articles similaires contribue fortement à l’amélioration de votre référencement.\u003C\u002Fp>\n\u003Cp>✔️ Enrichir sémantiquement vos contenus\u003C\u002Fp>\n\u003Cp>Pour que vos contenus soient bien référencés par les moteurs de recherche, ils doivent pouvoir identifier le sujet et les thématiques de vos articles.\u003C\u002Fp>\n\u003Cp>✔️ Améliorer la visibilité de vos archives\u003C\u002Fp>\n\u003Cp>Quelle qu’en soit la raison, vos contenus anciens tendent à être de moins en moins visibles sur votre site web, et par les moteurs de recherche. Pourtant, ils représentent un potentiel SEO immense pour votre site puisque votre longue traîne génère la majorité de votre trafic.\u003C\u002Fp>\n\u003Ch3>AMÉLIORER L’EXPÉRIENCE UTILISATEUR\u003C\u002Fh3>\n\u003Cp>✔️ Simplifiez-leur la vie\u003C\u002Fp>\n\u003Cp>Plus vos contenus et leur accès seront soignés, plus il sera facile pour un internaute de trouver l’information qu’il recherche sur votre site web\u003C\u002Fp>\n\u003Cp>✔️ Obtenez leur satisfaction\u003C\u002Fp>\n\u003Cp>Construire un site web dans lequel les internautes s’y retrouvent contribue largement à leur satisfaction. Proposez-leur une accessibilité optimale et fidélisez-les !\u003C\u002Fp>\n\u003Ch3>\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Attention\u003C\u002Fstrong> : l’extension Semantic Platform fonctionne si vous disposez déjà d’une taxonomie et de catégories pérennes. N’hésitez pas à nous consulter si vous avez besoin de conseils pour y parvenir au préalable.\u003C\u002Fp>\n","Améliorez le SEO, l'expérience utilisateur et simplifiez l'édition grâce à l'analyse sémantique de vos contenus !",10,2646,0,"2025-10-21T12:13:00.000Z","6.8.5","5.4.1","5.6",[19,20,21,22,23],"content-analysis","ia","semantic","seo","tag","https:\u002F\u002Fwww.contentside.com\u002Fsolutions\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.6.1.zip",100,null,"2026-04-06T09:54:40.288Z","no_bundle",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"contentside",2,30,94,"2026-08-29T15:00:33.134Z",[38,59,83,104,121],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":13,"downloaded":46,"rating":26,"num_ratings":47,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":51,"tags":52,"homepage":56,"download_link":57,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":58},"mflash-ai-seo-optimizer","mFlash AI SEO Optimizer","1.0.0","mflash1233","https:\u002F\u002Fprofiles.wordpress.org\u002Fmflash1233\u002F","\u003Cp>mFlash AI SEO Optimizer is a comprehensive SEO plugin that helps you optimize your WordPress content for better search engine rankings. The plugin provides AI-powered optimization through an external service.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>AI-Powered Optimization\u003C\u002Fstrong>: Optional integration with AI service for enhanced content optimization\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Real-time Analysis\u003C\u002Fstrong>: Get instant feedback on your SEO improvements\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Meta Tag Management\u003C\u002Fstrong>: Optimize titles, descriptions, and keywords\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Content Analysis\u003C\u002Fstrong>: Comprehensive analysis of content quality and structure\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>What makes this plugin different:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Privacy First\u003C\u002Fstrong>: All external API usage requires explicit user consent\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User-Friendly\u003C\u002Fstrong>: Clean, intuitive interface that doesn’t overwhelm\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Performance Optimized\u003C\u002Fstrong>: Minimal impact on site performance\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>External Service Integration:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>This plugin can connect to our AI service to provide enhanced SEO analysis and content optimization. The plugin provides full SEO scoring.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Data sent to external service (only with user consent):\u003C\u002Fstrong>\u003Cbr \u002F>\n* Post content and titles for AI analysis\u003Cbr \u002F>\n* Your website URL for authentication\u003Cbr \u002F>\n* SEO meta data for optimization suggestions\u003C\u002Fp>\n","AI-powered SEO optimization plugin that analyzes and optimizes posts for better search engine rankings.",299,1,"2025-10-01T21:02:00.000Z","6.4.8","5.0","7.4",[53,19,54,55,22],"artificial-intelligence","meta-tags","optimization","https:\u002F\u002Fmarkovpavel.ru\u002Fwordpress-mflash-ai-seo-optimizer","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmflash-ai-seo-optimizer.1.0.0.zip","2026-07-22T17:31:50.256Z",{"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":74,"tags":75,"homepage":80,"download_link":81,"security_score":26,"vuln_count":47,"unpatched_count":13,"last_vuln_date":82,"fetched_at":58},"media-library-helper","Media Library Helper — Bulk edit image ALT, caption & description","1.3.2","Codexin Technologies","https:\u002F\u002Fprofiles.wordpress.org\u002Fcxntech\u002F","\u003Cp>If you have a large number of images in your WordPress media library and are concerned about updating their ALT tags, captions, descriptions or titles, worry no more. This plugin allows you to easily modify, delete, or update these elements with just a few clicks directly from the media library page in your WordPress dashboard.\u003C\u002Fp>\n\u003Cp>This plugin is the perfect solution to update metadata for multiple images without visiting each edit page. Accessing the WordPress media library page lets you easily view the existing images’ alt tags, captions, descriptions and titles. The plugin also identifies the images without an assigned ALT tag, caption, or description, enabling you to update them quickly and easily with just a few clicks.\u003C\u002Fp>\n\u003Cp>On-page SEO is crucial in boosting your website’s SEO score, and assigning proper image ALT tags to every image on your website is critical. With the help of this plugin, you can quickly identify images with empty or blank ALT tags, blank captions or descriptions in your media library and update them to enhance your SEO score.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Add\u002Fedit\u002Fupdate the image titles, ALT tag, caption & description with one click directly from WordPress Media Library\u003C\u002Fli>\n\u003Cli>Search for a specific SEO keyword assigned to your images as an alt tag, caption or description.\u003C\u002Fli>\n\u003Cli>Search for blank or empty ALT tags, captions and descriptions and update\u002Fedit as needed.\u003C\u002Fli>\n\u003Cli>Sort media library images by ALT tag, image caption or image Description.\u003C\u002Fli>\n\u003Cli>Bulk edit image ALT tag or alt attribute\u003C\u002Fli>\n\u003Cli>Bulk edit image title\u003C\u002Fli>\n\u003Cli>Bulk edit image caption\u003C\u002Fli>\n\u003Cli>Bulk edit image description\u003C\u002Fli>\n\u003Cli>Improve SEO score by assigning the proper image metadata.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>How does this plugin work or How to edit image metadata\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Install the plugin “Media Library Helper by Codexin”\u003C\u002Fli>\n\u003Cli>From Dashboard, go to media –> Library –> Open the “List View”\u003C\u002Fli>\n\u003Cli>Unlock the edit mode. (You will see a button at the top, named “Edit mode is locked”)\u003C\u002Fli>\n\u003Cli>Continue updating image ALT text, caption and description as you need.\u003C\u002Fli>\n\u003Cli>Once finished, keep the edit mode Locked again.\u003C\u002Fli>\n\u003C\u002Fol>\n","Add or edit or bulk edit image ALT tag, caption & description with one click straight from the WordPress media library to improve your SEO score.",10000,156601,98,58,"2025-12-03T14:05:00.000Z","6.8.6","4.8","5.6.39",[76,77,78,79,22],"alt-tag","bulk-edit","image-caption","media-library","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmedia-library-helper\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmedia-library-helper.1.3.2.zip","2023-07-05 00:00:00",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":11,"downloaded":91,"rating":26,"num_ratings":47,"last_updated":92,"tested_up_to":93,"requires_at_least":94,"requires_php":95,"tags":96,"homepage":100,"download_link":101,"security_score":102,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":103},"gallery-media-tags","Gallery Media Tags","1.1.0","yonifre","https:\u002F\u002Fprofiles.wordpress.org\u002Fyonifre\u002F","\u003Cp>A tag gallery that allows each gallery image to tag and insert tags into pages by widgets or shortcode.\u003C\u002Fp>\n\u003Cp>Shortcode Examples:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[gallery_tags]\n\nAdvanced Options:\n\n    [gallery_tags tags=\"aaa,ttt\" desktop-cols=\"3\" img-size=thumbnail]\n\nMore Options:\n\n    order=ASC\u002FDESC\n    orderby=date\u002Ftitle ect...\n    tags=\"car,bike\"\n    desktop-cols=4\n    mobile-cols=2\n    full-size=large\n    img-size=medium\n    display=normal\u002Fmasonry\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Simple tags gallery that managed by WordPress media.",9237,"2017-12-27T06:03:00.000Z","4.9.29","3.8","",[97,84,98,99,22],"elementor","images","media","https:\u002F\u002Flenix.co.il\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgallery-media-tags.zip",85,"2026-04-16T10:56:18.058Z",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":13,"downloaded":112,"rating":13,"num_ratings":13,"last_updated":113,"tested_up_to":15,"requires_at_least":114,"requires_php":115,"tags":116,"homepage":95,"download_link":120,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":103},"effortless-custom-meta-tags","EffortLess Custom Meta Tags","1.0.8","domclic","https:\u002F\u002Fprofiles.wordpress.org\u002Fdomclic\u002F","\u003Cp>EffortLess Custom Meta Tags provides a simple interface to manage essential meta tags for your WordPress site without the bloat of larger SEO plugins.\u003C\u002Fp>\n\u003Cp>Features:\u003Cbr \u002F>\n– Meta Description: Set a custom meta description for your site.\u003Cbr \u002F>\n– Content-Security-Policy: Add CSP headers for enhanced security.\u003Cbr \u002F>\n– Open Graph Tags: Enable Facebook sharing with custom title, description, image, and URL.\u003Cbr \u002F>\n– Twitter Cards: Configure Twitter sharing with custom title, description, image, and card type.\u003Cbr \u002F>\n– Clean Interface: Simple, intuitive admin panel.\u003Cbr \u002F>\n– Lightweight: Minimal impact on site performance.\u003Cbr \u002F>\n– Conditional Loading: Social media fields are only shown when enabled.\u003C\u002Fp>\n\u003Cp>Perfect for:\u003Cbr \u002F>\n– Developers who need basic meta tag functionality.\u003Cbr \u002F>\n– Sites that don’t need a full SEO suite.\u003Cbr \u002F>\n– Projects requiring custom CSP implementation.\u003Cbr \u002F>\n– Clean, minimal WordPress installations.\u003C\u002Fp>\n","A simple and lightweight plugin to easily manage meta tags including Content-Security-Policy, description, Open Graph, and Twitter Cards.",234,"2025-09-23T04:09:00.000Z","4.7","7.0",[117,54,118,22,119],"content-security-policy","open-graph","social-media","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feffortless-custom-meta-tags.1.0.8.zip",{"slug":122,"name":123,"version":124,"author":125,"author_profile":126,"description":127,"short_description":128,"active_installs":13,"downloaded":129,"rating":13,"num_ratings":13,"last_updated":130,"tested_up_to":131,"requires_at_least":50,"requires_php":115,"tags":132,"homepage":95,"download_link":135,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"maio-ai-meta-tag-generator","MAIO AI Meta Tag Generator","2.0.9","positiomaio","https:\u002F\u002Fprofiles.wordpress.org\u002Fpositiomaio\u002F","\u003Cp>MAIO AI Meta Tag Generator connects to the MAIO AI service (maioptimizer.com) to generate optimized SEO meta tags for your posts automatically using Google Gemini.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Automatic AI-powered generation of SEO titles and meta descriptions\u003C\u002Fli>\n\u003Cli>Compatible with Yoast SEO, Rank Math and All in One SEO\u003C\u002Fli>\n\u003Cli>Bulk processing of multiple posts at once\u003C\u002Fli>\n\u003Cli>Manual editing with live character counters and Google preview\u003C\u002Fli>\n\u003Cli>Multilingual support (generates in the language of your content)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Free plan:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>5 AI generations per month for blog posts\u003C\u002Fli>\n\u003Cli>No credit card required\u003C\u002Fli>\n\u003Cli>Sign up for free at maioptimizer.com\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Paid plans\u003C\u002Fstrong> offer higher monthly limits and support for additional content types (pages, products, custom post types).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Requires:\u003C\u002Fstrong> A free MAIO account at maioptimizer.com to use AI generation.\u003C\u002Fp>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>MAIO AI Meta Tag Generator respects your privacy:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>No personal data from end users is collected\u003C\u002Fli>\n\u003Cli>Only post content (plain text) is sent to the MAIO service for AI processing\u003C\u002Fli>\n\u003Cli>Content is NOT stored permanently\u003C\u002Fli>\n\u003Cli>All communications are encrypted with SSL\u002FTLS\u003C\u002Fli>\n\u003Cli>Only anonymous usage statistics are stored (generation count per domain)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Third Party Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to external services to provide AI generation functionality. \u003Cstrong>These services are only contacted when you use the AI generation feature.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>MAIO AI Service (maioptimizer.com)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Purpose: AI-powered SEO meta tag generation and account management\u003C\u002Fli>\n\u003Cli>Data sent: Post content (plain text), domain name, API key, generation count\u003C\u002Fli>\n\u003Cli>URL: https:\u002F\u002Fmaioptimizer.com\u003C\u002Fli>\n\u003Cli>Privacy policy: https:\u002F\u002Fmaioptimizer.com\u002Fprivacy\u003C\u002Fli>\n\u003Cli>Terms of service: https:\u002F\u002Fmaioptimizer.com\u002Fterms\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Google Gemini AI\u003C\u002Fstrong> (via maioptimizer.com)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Purpose: Natural language processing for meta tag generation\u003C\u002Fli>\n\u003Cli>Data sent: Post content (plain text), via the MAIO service\u003C\u002Fli>\n\u003Cli>Privacy policy: https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fli>\n\u003Cli>Terms of service: https:\u002F\u002Fpolicies.google.com\u002Fterms\u003C\u002Fli>\n\u003C\u002Ful>\n","Generate SEO titles and meta descriptions automatically using Artificial Intelligence.",139,"2026-03-26T08:19:00.000Z","6.9.4",[133,53,134,54,22],"ai","meta-description","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmaio-ai-meta-tag-generator.2.0.9.zip",{"attackSurface":137,"codeSignals":248,"taintFlows":299,"riskAssessment":300,"analyzedAt":307},{"hooks":138,"ajaxHandlers":218,"restRoutes":239,"shortcodes":240,"cronEvents":246,"entryPointCount":11,"unprotectedCount":247},[139,145,149,152,157,160,163,165,167,169,173,175,179,182,184,187,190,193,196,199,202,205,208,211,214,216],{"type":140,"name":141,"callback":142,"file":143,"line":144},"action","rest_api_init","register_ner_actions","src\\admin\\api\\CspPluginCapabilitiesAPI.php",41,{"type":140,"name":141,"callback":146,"file":147,"line":148},"register_categorize_actions","src\\admin\\api\\CspPluginCategorizeAPI.php",38,{"type":140,"name":141,"callback":142,"file":150,"line":151},"src\\admin\\api\\CspPluginNerAPI.php",55,{"type":140,"name":153,"callback":154,"file":155,"line":156},"wp_insert_post","anonymous","src\\admin\\api\\CspPluginRelatedPostsAjaxAPI.php",74,{"type":140,"name":153,"callback":154,"file":158,"line":159},"src\\admin\\api\\CspPluginRelatedPostsAPI.php",76,{"type":140,"name":141,"callback":161,"file":162,"line":70},"register_related_posts_actions","src\\admin\\api\\CspPluginRelatedPostsRestAPI.php",{"type":140,"name":141,"callback":161,"file":164,"line":148},"src\\admin\\api\\CspPluginRelatedPostsToolbarAPI.php",{"type":140,"name":141,"callback":142,"file":166,"line":144},"src\\admin\\api\\CspPluginSettingsAPI.php",{"type":140,"name":141,"callback":146,"file":168,"line":148},"src\\admin\\api\\CspPluginSidebarAPI.php",{"type":140,"name":141,"callback":170,"file":171,"line":172},"register_sync_actions","src\\admin\\api\\CspPluginSyncAPI.php",36,{"type":140,"name":141,"callback":161,"file":174,"line":148},"src\\admin\\api\\CspPluginToolbarAPI.php",{"type":140,"name":176,"callback":154,"file":177,"line":178},"init","src\\includes\\CspPlugin.php",167,{"type":140,"name":180,"callback":154,"file":177,"line":181},"admin_enqueue_scripts",191,{"type":140,"name":180,"callback":154,"file":177,"line":183},192,{"type":140,"name":185,"callback":154,"file":177,"line":186},"admin_menu",205,{"type":140,"name":188,"callback":154,"file":177,"line":189},"plugin_action_links",208,{"type":140,"name":191,"callback":154,"file":177,"line":192},"admin_init",215,{"type":140,"name":194,"callback":154,"file":177,"line":195},"add_meta_boxes",218,{"type":140,"name":197,"callback":154,"file":177,"line":198},"csp_plugin_synchronize_all_posts",221,{"type":140,"name":200,"callback":154,"file":177,"line":201},"csp_plugin_synchronize_posts",222,{"type":140,"name":203,"callback":154,"file":177,"line":204},"csp_plugin_synchronize_post",223,{"type":140,"name":206,"callback":154,"file":177,"line":207},"csp_plugin_synchronize_all_tags",225,{"type":140,"name":209,"callback":154,"file":177,"line":210},"csp_plugin_synchronize_tags",226,{"type":140,"name":212,"callback":154,"file":177,"line":213},"wp_enqueue_scripts",240,{"type":140,"name":212,"callback":154,"file":177,"line":215},241,{"type":140,"name":176,"callback":154,"file":177,"line":217},244,[219,223,226,229,232,234,235,236,237],{"action":220,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":155,"line":222},"remove_related_post",false,64,{"action":224,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":155,"line":225},"discover_post",66,{"action":227,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":155,"line":228},"remove_all_related_posts",68,{"action":230,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":155,"line":231},"discover_for_paragraph",70,{"action":233,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":158,"line":222},"start_synchronization",{"action":220,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":158,"line":225},{"action":224,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":158,"line":228},{"action":227,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":158,"line":231},{"action":230,"nopriv":221,"callback":154,"hasNonce":221,"hasCapCheck":221,"file":158,"line":238},72,[],[241],{"tag":242,"callback":243,"file":244,"line":245},"csp_related_posts","display_related_posts_shortcode","src\\public\\CspPluginPublic.php",80,[],9,{"dangerousFunctions":249,"sqlUsage":250,"outputEscaping":252,"fileOperations":13,"externalRequests":295,"nonceChecks":296,"capabilityChecks":297,"bundledLibraries":298},[],{"prepared":13,"raw":13,"locations":251},[],{"escaped":253,"rawEcho":254,"locations":255},214,18,[256,260,261,263,265,267,269,270,272,273,276,278,281,282,285,287,290,292],{"file":257,"line":258,"context":259},"src\\admin\\CspPluginSettingsDisplayManager.php",37,"raw output",{"file":257,"line":148,"context":259},{"file":257,"line":262,"context":259},39,{"file":257,"line":264,"context":259},48,{"file":257,"line":266,"context":259},51,{"file":257,"line":268,"context":259},53,{"file":257,"line":238,"context":259},{"file":257,"line":271,"context":259},73,{"file":257,"line":156,"context":259},{"file":274,"line":275,"context":259},"src\\admin\\partials\\csp-plugin-admin-display.php",49,{"file":274,"line":277,"context":259},59,{"file":279,"line":280,"context":259},"src\\admin\\partials\\meta-box\\meta-box-content.php",24,{"file":279,"line":148,"context":259},{"file":283,"line":284,"context":259},"src\\admin\\partials\\meta-box\\related-posts\\meta-box-content.php",34,{"file":283,"line":286,"context":259},67,{"file":288,"line":289,"context":259},"src\\admin\\partials\\settings\\common\\csp-plugin-admin-boolean.php",27,{"file":291,"line":284,"context":259},"src\\admin\\partials\\settings\\ner\\csp-plugin-admin-ner-url-format-field.php",{"file":293,"line":294,"context":259},"src\\admin\\partials\\settings\\related-posts\\csp-plugin-admin-sync-button.php",52,3,7,32,[],[],{"summary":301,"deductions":302},"The \"contentside-semantic-platform\" plugin v1.6.1 exhibits a mixed security posture. On the positive side, it demonstrates good practices by exclusively using prepared statements for SQL queries, having a high percentage of properly escaped output, and no recorded vulnerabilities in its history. This suggests a generally cautious approach to security development.\n\nHowever, a significant concern arises from the substantial attack surface exposed through AJAX handlers. Out of nine AJAX handlers, none have authentication checks, making them prime targets for unauthorized access and potential manipulation. While taint analysis and code signals for dangerous functions, file operations, and raw SQL are clean, the unprotected AJAX endpoints represent a critical oversight. The plugin also makes external HTTP requests, which, if not handled securely, could introduce risks.\n\nIn conclusion, while the plugin's SQL handling and output escaping are commendable, the lack of authentication on a large number of AJAX entry points is a serious security weakness. The absence of past vulnerabilities is a positive indicator, but it does not negate the immediate risks posed by the exposed AJAX endpoints. Developers should prioritize implementing proper nonce and capability checks for all AJAX handlers.",[303,305],{"reason":304,"points":11},"9 AJAX handlers without auth checks",{"reason":306,"points":33},"3 external HTTP requests","2026-03-17T01:41:40.582Z",{"wat":309,"direct":319},{"assetPaths":310,"generatorPatterns":313,"scriptPaths":314,"versionParams":316},[311,312],"\u002Fwp-content\u002Fplugins\u002Fcontentside-semantic-platform\u002Fsrc\u002Fcss\u002Fcsp-plugin-admin.css","\u002Fwp-content\u002Fplugins\u002Fcontentside-semantic-platform\u002Fbuild\u002Findex.js",[],[315],"https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002Fselect2@4.1.0-rc.0\u002Fdist\u002Fjs\u002Fselect2.min.js",[317,318],"contentside-semantic-platform\u002Fsrc\u002Fcss\u002Fcsp-plugin-admin.css?ver=","contentside-semantic-platform\u002Fbuild\u002Findex.js?ver=",{"cssClasses":320,"htmlComments":322,"htmlAttributes":335,"restEndpoints":337,"jsGlobals":339,"shortcodeOutput":341},[321],"csp-plugin-settings-page-wrapper",[323,324,325,326,327,328,329,330,329,331,332,333,334],"\u003C!-- IMPORTANT: This file is part of the Csp_Plugin plugin. -->","\u003C!-- Plugin directory -->","\u003C!-- END Plugin directory -->","\u003C!-- THIS IS THE MAIN CONTENT -->","\u003C!-- END MAIN CONTENT -->","\u003C!-- This is the default Meta Box -->","\u003C!-- END Meta Box -->","\u003C!-- This is the Default Meta Box -->","\u003C!-- wp:csp-plugin\u002Frelated-posts -->","\u003C!-- \u002Fwp:csp-plugin\u002Frelated-posts -->","\u003C!-- wp:csp-plugin\u002Fmore-like-this -->","\u003C!-- \u002Fwp:csp-plugin\u002Fmore-like-this -->",[336],"data-csp-plugin-id",[338],"\u002Fwp-json\u002Fcsp-plugin\u002Fv1\u002Fsettings",[340],"WPURLS",[],{"error":343,"url":344,"statusCode":345,"statusMessage":346,"message":346},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fcontentside-semantic-platform\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":348,"versions":349},14,[350,355,362,369,376,383,390,396,403,410,417,424,431,437],{"version":6,"download_url":25,"svn_tag_url":351,"released_at":27,"has_diff":221,"diff_files_changed":352,"diff_lines":27,"trac_diff_url":353,"vulnerabilities":354,"is_current":343},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.6.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.6.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.6.1",[],{"version":356,"download_url":357,"svn_tag_url":358,"released_at":27,"has_diff":221,"diff_files_changed":359,"diff_lines":27,"trac_diff_url":360,"vulnerabilities":361,"is_current":221},"1.6.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.6.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.6.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.5.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.6.0",[],{"version":363,"download_url":364,"svn_tag_url":365,"released_at":27,"has_diff":221,"diff_files_changed":366,"diff_lines":27,"trac_diff_url":367,"vulnerabilities":368,"is_current":221},"1.5.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.5.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.5.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.4.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.5.0",[],{"version":370,"download_url":371,"svn_tag_url":372,"released_at":27,"has_diff":221,"diff_files_changed":373,"diff_lines":27,"trac_diff_url":374,"vulnerabilities":375,"is_current":221},"1.4.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.4.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.4.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.4&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.4.0",[],{"version":377,"download_url":378,"svn_tag_url":379,"released_at":27,"has_diff":221,"diff_files_changed":380,"diff_lines":27,"trac_diff_url":381,"vulnerabilities":382,"is_current":221},"1.3.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.3.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.3.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.3&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.4",[],{"version":384,"download_url":385,"svn_tag_url":386,"released_at":27,"has_diff":221,"diff_files_changed":387,"diff_lines":27,"trac_diff_url":388,"vulnerabilities":389,"is_current":221},"1.3.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.3.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.3.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.2&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.3",[],{"version":62,"download_url":391,"svn_tag_url":392,"released_at":27,"has_diff":221,"diff_files_changed":393,"diff_lines":27,"trac_diff_url":394,"vulnerabilities":395,"is_current":221},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.3.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.3.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.1&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.2",[],{"version":397,"download_url":398,"svn_tag_url":399,"released_at":27,"has_diff":221,"diff_files_changed":400,"diff_lines":27,"trac_diff_url":401,"vulnerabilities":402,"is_current":221},"1.3.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.3.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.3.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.1",[],{"version":404,"download_url":405,"svn_tag_url":406,"released_at":27,"has_diff":221,"diff_files_changed":407,"diff_lines":27,"trac_diff_url":408,"vulnerabilities":409,"is_current":221},"1.3.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.3.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.3.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.2.2&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.3.0",[],{"version":411,"download_url":412,"svn_tag_url":413,"released_at":27,"has_diff":221,"diff_files_changed":414,"diff_lines":27,"trac_diff_url":415,"vulnerabilities":416,"is_current":221},"1.2.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.2.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.2.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.2.1&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.2.2",[],{"version":418,"download_url":419,"svn_tag_url":420,"released_at":27,"has_diff":221,"diff_files_changed":421,"diff_lines":27,"trac_diff_url":422,"vulnerabilities":423,"is_current":221},"1.2.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.2.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.2.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.2.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.2.1",[],{"version":425,"download_url":426,"svn_tag_url":427,"released_at":27,"has_diff":221,"diff_files_changed":428,"diff_lines":27,"trac_diff_url":429,"vulnerabilities":430,"is_current":221},"1.2.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.2.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.2.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.1.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.2.0",[],{"version":86,"download_url":432,"svn_tag_url":433,"released_at":27,"has_diff":221,"diff_files_changed":434,"diff_lines":27,"trac_diff_url":435,"vulnerabilities":436,"is_current":221},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.1.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcontentside-semantic-platform%2Ftags%2F1.0.0&new_path=%2Fcontentside-semantic-platform%2Ftags%2F1.1.0",[],{"version":41,"download_url":438,"svn_tag_url":439,"released_at":27,"has_diff":221,"diff_files_changed":440,"diff_lines":27,"trac_diff_url":27,"vulnerabilities":441,"is_current":221},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontentside-semantic-platform.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcontentside-semantic-platform\u002Ftags\u002F1.0.0\u002F",[],[]]