[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f6jVZ2-V4mbQNOztT9VDbAquDZM5n4Tv4T99B48bqm3k":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":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,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":37,"analysis":140,"fingerprints":252},"slug-translater","SLUG TRANSLATER","1.2.2","Isamu Takeda","https:\u002F\u002Fprofiles.wordpress.org\u002Fitmaroon\u002F","\u003Cul>\n\u003Cli>At the moment, it has a function to translate Japanese into English and replace the sanitized one.\u003C\u002Fli>\n\u003Cli>The default setting is to replace it when the post is saved.\u003C\u002Fli>\n\u003Cli>If you want to replace saved posts, you can set it on the setting screen.\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Categories, terms, and tags can also be replaced.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>English translation function\u003C\u002Fp>\n\u003Cul>\n\u003Cli>This plugin uses the API of “Minna no Jido Honyaku”.\u003C\u002Fli>\n\u003Cli>Please register as a user of \u003Ca href=\"https:\u002F\u002Fmt-auto-minhon-mlt.ucri.jgn-x.jp\u002F\" rel=\"nofollow ugc\">Minna no Jido Honyaku\u003C\u002Fa> in advance and obtain the authentication information.\u003C\u002Fli>\n\u003Cli>You can register the authentication information from the setting screen.\u003C\u002Fli>\n\u003Cli>This plugin uses the API of “Google Cloud Translation API”.\u003C\u002Fli>\n\u003Cli>Get the project ID and API key obtained by creating a project and enabling the Cloud Translation API from the \u003Ca href=\"https:\u002F\u002Fconsole.cloud.google.com\u002Fhome\u002Fdashboard\" rel=\"nofollow ugc\">Google Cloud Platform dashboard\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>You can register the authentication information from the setting screen.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Related Links\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fitmaroon\u002Fslug_translater\" rel=\"nofollow ugc\">Github\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Arbitrary section 1\u003C\u002Fh3>\n","Translate the slug generated in Japanese into English and replace it with an appropriate format.",30,1260,0,"2025-01-25T06:22:00.000Z","6.7.5","6.3","8.2.10",[19,20,21,22,23],"custom","permalink","post","slug","translate","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fslug-translater.1.2.2.zip",92,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":11,"trust_score":35,"computed_at":36},"itmaroon",9,50,99,93,"2026-04-04T15:23:11.817Z",[38,62,82,101,123],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":53,"tags":54,"homepage":58,"download_link":59,"security_score":34,"vuln_count":60,"unpatched_count":13,"last_vuln_date":61,"fetched_at":28},"remove-cpt-base","Remove CPT base","6.7","kubiq","https:\u002F\u002Fprofiles.wordpress.org\u002Fkubiq\u002F","\u003Cp>Remove custom post type base slug from url\u003C\u002Fp>\n\u003Cul>\n\u003Cli>possibility to select specific custom post type(s)\u003C\u002Fli>\n\u003Cli>auto redirect old slugs to no-base slugs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Yoast SEO specifics\u003C\u002Fh3>\n\u003Cp>If you’re using Yoast SEO plugin, after you change something in the Remove CPT base plugin, you should deactivate Yoast SEO and activate it back again to refresh its yoast_indexable database table, so it will generate correct og:url, canonical url and JSON-LD urls.\u003C\u002Fp>\n","Remove custom post type base slug from url",10000,96204,100,33,"2025-12-01T22:03:00.000Z","6.9.4","3.0","5.6",[55,56,20,57,22],"base","custom-post-type","remove","https:\u002F\u002Fwww.paypal.me\u002Fjakubnovaksl","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fremove-cpt-base.6.7.zip",1,"2022-05-06 13:29:00",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":48,"downloaded":70,"rating":48,"num_ratings":71,"last_updated":72,"tested_up_to":73,"requires_at_least":74,"requires_php":75,"tags":76,"homepage":24,"download_link":80,"security_score":81,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"custom-permalinks-for-custom-post-types","Custom Permalinks for Custom Post Types","1.0.1","Aluka","https:\u002F\u002Fprofiles.wordpress.org\u002Fcx4djv\u002F","\u003Cp>Custom Permalinks for Custom Post Types is a plugin for WordPress which allow you change the permalink structure of Custom Post Types.\u003C\u002Fp>\n\u003Cp>It supports the following features:\u003Cbr \u002F>\n* Remove base slug of all public Custom Post Types\u003Cbr \u002F>\n* Supports multiple taxonomies for permalink\u003Cbr \u002F>\n* Supports hierarchical taxonomies for permalink\u003Cbr \u002F>\n* Allows to select primary term for permalink\u003Cbr \u002F>\n* Allows to exclude Custom Post Types from being affected by this plugin\u003C\u002Fp>\n\u003Ch3>Compatibility\u003C\u002Fh3>\n\u003Cp>This plugin is compatible with: WooCommerce, Polylang, WPML\u003C\u002Fp>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>This plugin doesn’t collect\u002Fstore any user related information.\u003C\u002Fp>\n","Remove base slug of Custom Post Types and change the permalink structure of Custom Post Types.",5100,3,"2020-04-13T09:38:00.000Z","5.4.19","4.5.0","5.3",[77,56,20,78,79],"custom-permalinks","primary-term","remove-slug","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-permalinks-for-custom-post-types.zip",85,{"slug":83,"name":84,"version":85,"author":86,"author_profile":87,"description":88,"short_description":89,"active_installs":13,"downloaded":90,"rating":13,"num_ratings":13,"last_updated":24,"tested_up_to":91,"requires_at_least":92,"requires_php":53,"tags":93,"homepage":24,"download_link":99,"security_score":48,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":100},"custom-post-type-multiroutes","Custom Post Type Multiroutes","0.1.2","arg82","https:\u002F\u002Fprofiles.wordpress.org\u002Farg82\u002F","\u003Cp>Custom Post Type Multiroutes allows you to manage, add, edit and update multiple routes for your Custom Post Types.\u003Cbr \u002F>\nMinimum configuration needed. Install it, type your routes for your posts and refresh permalinks.\u003C\u002Fp>\n\u003Ch3>Use case\u003C\u002Fh3>\n\u003Cp>Say you have a custom post type called ‘Galleries’ and you want it to appear on two archive pages:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fnews\u002Fgallery\u002F\n\u002Fmedia\u002Falbum\u002F\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>And its single pages to be: \u003Ccode>\u002Fnews\u002Fgallery\u002F\u003Cgallery-name>\u003C\u002Fcode> and \u003Ccode>\u002Fmedia\u002Falbum\u002F\u003Cgallery-name>\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>All you have to do is:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Go to Settings > CPT Multiroutes (you will se a list of your custom post types)\u003C\u002Fli>\n\u003Cli>Click on “Add Route” for your ‘Galleries’ post.\u003C\u002Fli>\n\u003Cli>Fill the new imput for that new route, in this case ‘news\u002Fgallery’\u003C\u002Fli>\n\u003Cli>Repeat 2&3 per route you want to add.\u003C\u002Fli>\n\u003Cli>Select the checkbox ‘Rewrite this post type archive to these routes’ if you want that route to be your archive page for the custom post type.\u003C\u002Fli>\n\u003Cli>Click Save Routes.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Additionally a custom Metabox will appear on each of those custom post types on its admin edit page, there you will be able to choose individually on which route you wish the post to be visible. By default it will be visible on all defined routes.\u003C\u002Fp>\n\u003Cp>If you are using WPML for multilanguage, when you add a route, an input for each acive language will appear so you can translate those new routes.\u003C\u002Fp>\n","Allows to have 'custom post types' on multiple custom routes for single\u002Farchive pages. Compatible with WPML.",1016,"5.3.21","4.9",[94,95,96,97,98],"custom-post-types","multilingual","multiroutes","routes","translate-slugs","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-post-type-multiroutes.zip","2026-03-15T10:48:56.248Z",{"slug":102,"name":103,"version":104,"author":105,"author_profile":106,"description":107,"short_description":108,"active_installs":109,"downloaded":110,"rating":111,"num_ratings":112,"last_updated":113,"tested_up_to":114,"requires_at_least":115,"requires_php":116,"tags":117,"homepage":121,"download_link":122,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"custom-post-type-permalinks","Custom Post Type Permalinks","3.5.3","Toro_Unit (Hiroshi Urabe)","https:\u002F\u002Fprofiles.wordpress.org\u002Ftoro_unit\u002F","\u003Cp>Custom Post Type Permalinks allow you edit the permalink structure of custom post type.\u003C\u002Fp>\n\u003Cp>Change custom taxonomy archive’s permalink to “example.org\u002Fpost_type\u002Ftaxonomy_name\u002Fterm_slug”. Can disable this fix.\u003C\u002Fp>\n\u003Cp>And support \u003Ccode>wp_get_archives( 'post_type=foo' )\u003C\u002Fcode> and post type date archive (ex. \u003Ccode>example.com\u002Fpost_type_slug\u002Fdate\u002F2010\u002F01\u002F01\u003C\u002Fcode> ).\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftorounit\u002Fcustom-post-type-permalinks\" rel=\"nofollow ugc\">This Plugin published on GitHub.\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Donation: Please send \u003Ca href=\"http:\u002F\u002Fwww.amazon.co.jp\u002Fregistry\u002Fwishlist\u002FCOKSXS25MVQV\" rel=\"nofollow ugc\">My Wishlist\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Fwww.paypal.me\u002Ftorounit\" rel=\"nofollow ugc\">Paypal\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Translators\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Japanese(ja) – \u003Ca href=\"http:\u002F\u002Fwww.torounit.com\u002F\" rel=\"nofollow ugc\">Toro_Unit\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>French(fr_FR) – \u003Ca href=\"http:\u002F\u002Fgeoffrey.crofte.fr\u002F\" rel=\"nofollow ugc\">Geoffrey Crofte\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Russian(ru_RU) – \u003Ca href=\"http:\u002F\u002Folart.ru\" rel=\"nofollow ugc\">Olart\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fnatali_z\" rel=\"nofollow ugc\">Natali_Z\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Also checkout\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsimple-post-type-permalinks\u002F\" rel=\"ugc\">Simple Post Type Permalinks\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Setting on Code\u003C\u002Fh3>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>register_post_type( 'foo',\n    array(\n        'public' => true,\n        'has_archive' => true,\n        'rewrite' => array(\n            \"with_front\" => true\n        ),\n        'cptp_permalink_structure' => '%post_id%'\n    )\n);\u003C\u002Fpre>\n\u003Ch4>Exclude specific post type\u003C\u002Fh4>\n\u003Cpre>add_filter(  'cptp_is_rewrite_supported_by_foo',  '__return_false' );\n\n\u002F\u002F or\n\nadd_filter(  'cptp_is_rewrite_supported', function ( $support , $post_type ) {\n    if ( 'foo' === $post_type ) {\n        return false;\n    }\n    return $support;\n}, 10, 2);\u003C\u002Fpre>\n","Edit the permalink of custom post type.",200000,1713689,96,71,"2024-10-10T06:12:00.000Z","6.6.5","6.1","7.4",[118,56,119,20,120],"address","link","url","https:\u002F\u002Fgithub.com\u002Ftorounit\u002Fcustom-post-type-permalinks","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-post-type-permalinks.3.5.3.zip",{"slug":124,"name":125,"version":126,"author":105,"author_profile":106,"description":127,"short_description":128,"active_installs":129,"downloaded":130,"rating":48,"num_ratings":131,"last_updated":132,"tested_up_to":133,"requires_at_least":134,"requires_php":75,"tags":135,"homepage":138,"download_link":139,"security_score":81,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"simple-post-type-permalinks","Simple Post Type Permalinks","2.0.5","\u003Cp>Edit the permalink structure of custom post type too easy.\u003C\u002Fp>\n\u003Cp>Simple Post Type Permalinks is Simple and Smart than \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcustom-post-type-permalinks\u002F\" rel=\"ugc\">Custom Post Type Permalinks\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Available tags are \u003Ccode>%post_id%\u003C\u002Fcode>, \u003Ccode>%postname%\u003C\u002Fcode>, \u003Ccode>%year%\u003C\u002Fcode>, \u003Ccode>%monthnum%\u003C\u002Fcode>, \u003Ccode>%day%\u003C\u002Fcode>, \u003Ccode>%hour%\u003C\u002Fcode>, \u003Ccode>%minute%\u003C\u002Fcode>, \u003Ccode>%second%\u003C\u002Fcode>, \u003Ccode>%author%\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Requires PHP version 5.3 or higher.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftorounit\u002Fsimple-post-type-permalinks\" rel=\"nofollow ugc\">This Plugin published on GitHub.\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Please Fork and Pull Request!\u003C\u002Fp>\n\u003Ch3>Setting on Code\u003C\u002Fh3>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>register_post_type( 'foo',\n    array(\n        \"public\" => true,\n        'has_archive' => true,\n        \"rewrite\" => [\n            \"with_front\" => true\n        ],\n        \"sptp_permalink_structure\" => \"foo\u002F%post_id%\"\n    )\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Easy to change Permalink of custom post type.",9000,84434,10,"2019-06-04T22:43:00.000Z","5.2.24","4.0",[136,56,20,137],"cms","permalinks","https:\u002F\u002Fgithub.com\u002Ftorounit\u002Fsimple-post-type-permalinks","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-post-type-permalinks.2.0.5.zip",{"attackSurface":141,"codeSignals":190,"taintFlows":219,"riskAssessment":245,"analyzedAt":251},{"hooks":142,"ajaxHandlers":177,"restRoutes":186,"shortcodes":187,"cronEvents":188,"entryPointCount":189,"unprotectedCount":13},[143,149,153,157,161,165,169,173],{"type":144,"name":145,"callback":146,"file":147,"line":148},"action","init","sl_trans_load_textdomain","slug_translater.php",78,{"type":144,"name":150,"callback":151,"file":147,"line":152},"admin_enqueue_scripts","sl_trans_script_init",142,{"type":144,"name":154,"callback":155,"file":147,"line":156},"admin_menu","sl_trans_add_admin_menu",229,{"type":144,"name":158,"callback":159,"file":147,"line":160},"admin_init","sl_trans_init_settings",595,{"type":144,"name":162,"callback":163,"priority":34,"file":147,"line":164},"wp_insert_post_data","sl_trans_post_data",623,{"type":144,"name":166,"callback":167,"priority":131,"file":147,"line":168},"transition_post_status","sl_trans_change_newflg",646,{"type":144,"name":170,"callback":171,"priority":131,"file":147,"line":172},"create_term","sl_trans_create_term",668,{"type":144,"name":174,"callback":175,"priority":131,"file":147,"line":176},"edited_term","sl_trans_edited_term",698,[178,184],{"action":179,"nopriv":180,"callback":181,"hasNonce":182,"hasCapCheck":180,"file":147,"line":183},"sl_trans_check_api",false,"sl_trans_check_api_ajax",true,515,{"action":179,"nopriv":182,"callback":181,"hasNonce":182,"hasCapCheck":180,"file":147,"line":185},516,[],[],[],2,{"dangerousFunctions":191,"sqlUsage":192,"outputEscaping":194,"fileOperations":13,"externalRequests":13,"nonceChecks":60,"capabilityChecks":60,"bundledLibraries":215},[],{"prepared":13,"raw":13,"locations":193},[],{"escaped":195,"rawEcho":196,"locations":197},14,8,[198,201,203,205,207,209,211,213],{"file":147,"line":199,"context":200},360,"raw output",{"file":147,"line":202,"context":200},364,{"file":147,"line":204,"context":200},371,{"file":147,"line":206,"context":200},373,{"file":147,"line":208,"context":200},465,{"file":147,"line":210,"context":200},492,{"file":147,"line":212,"context":200},511,{"file":147,"line":214,"context":200},535,[216],{"name":217,"version":27,"knownCves":218},"Guzzle",[],[220,237],{"entryPoint":221,"graph":222,"unsanitizedCount":13,"severity":236},"sl_trans_check_api_ajax (slug_translater.php:496)",{"nodes":223,"edges":234},[224,229],{"id":225,"type":226,"label":227,"file":147,"line":228},"n0","source","$_POST",500,{"id":230,"type":231,"label":232,"file":147,"line":212,"wp_function":233},"n1","sink","echo() [XSS]","echo",[235],{"from":225,"to":230,"sanitized":182},"low",{"entryPoint":238,"graph":239,"unsanitizedCount":13,"severity":236},"\u003Cslug_translater> (slug_translater.php:0)",{"nodes":240,"edges":243},[241,242],{"id":225,"type":226,"label":227,"file":147,"line":228},{"id":230,"type":231,"label":232,"file":147,"line":212,"wp_function":233},[244],{"from":225,"to":230,"sanitized":182},{"summary":246,"deductions":247},"The \"slug-translater\" plugin v1.2.2 exhibits a generally strong security posture based on the provided static analysis.  It successfully avoids dangerous functions, uses prepared statements exclusively for SQL queries, and has no recorded historical vulnerabilities.  The presence of nonce and capability checks on its two AJAX entry points is also a positive indicator, as is the absence of unsanitized taint flows.  The plugin also avoids file operations and external HTTP requests, further reducing potential attack vectors.\n\nHowever, a notable concern is the 64% rate of properly escaped output. While this is not a critical failure, it signifies that a significant portion of dynamic output within the plugin might be vulnerable to Cross-Site Scripting (XSS) attacks if user-supplied data is involved and not handled carefully.  The bundled Guzzle library, while not explicitly flagged as outdated in this data, warrants a periodic check for security patches in future analyses.  Overall, the plugin is well-built with core security practices in place, but the unescaped output presents a specific area that requires attention to fully mitigate risks.\n\nThe lack of any historical vulnerabilities or known CVEs for this plugin is a very positive sign, suggesting a history of responsible development and security awareness. This, combined with the robust use of prepared statements and authentication checks on entry points, indicates a commitment to building a secure product. The low number of total entry points and the complete absence of critical or high severity issues in the taint analysis further reinforce this positive assessment. The primary weakness identified is the moderate rate of output escaping, which could be improved to achieve a near-perfect security score.",[248],{"reason":249,"points":250},"Partial output escaping",5,"2026-03-16T22:26:07.540Z",{"wat":253,"direct":260},{"assetPaths":254,"generatorPatterns":256,"scriptPaths":257,"versionParams":258},[255],"\u002Fwp-content\u002Fplugins\u002Fslug-translater\u002Fcss\u002Ftranslater.css",[],[],[259],"slug-translater\u002Fcss\u002Ftranslater.css?ver=",{"cssClasses":261,"htmlComments":262,"htmlAttributes":263,"restEndpoints":264,"jsGlobals":265,"shortcodeOutput":266},[],[],[],[],[],[]]