[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fGNWhK8EQvuKjMTZesTahOKIpdSseMXnI1873e7nX138":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"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":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":39,"analysis":120,"fingerprints":176},"bbp-gdpr","bbPress GDPR","1.0.2","Syed Balkhi","https:\u002F\u002Fprofiles.wordpress.org\u002Fsmub\u002F","\u003Cp>The GDPR requires companies and site owners to be transparent about how they collect, use, and share personal data. It also gives individuals more access and choice when it comes to how their own personal data is collected, used, and shared.\u003C\u002Fp>\n\u003Cp>bbPress GDPR plugin extends new Data Export & Data Erasure feature bundled with WordPress 4.9.6 Release.\u003C\u002Fp>\n\u003Cp>This plugin covers all bbPress native components.\u003C\u002Fp>\n\u003Col>\n\u003Cli>Forums (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>Topics (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>Replies (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>NOTE:- Activating this plugin doesn’t guarantee you fully comply with GDPR. Please, contact a GDPR law consultant.\u003C\u002Fp>\n","bbPress GDPR helps website owners to comply with European privacy regulations (GDPR).",100,4384,4,"2019-06-06T14:47:00.000Z","5.2.24","4.9.6","5.6",[19,20,21,22,23],"bbpress","data","erasure","export","gdpr","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbbp-gdpr.1.0.2.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":35,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"smub",94,23510130,91,795,73,"2026-04-03T18:39:26.892Z",[40,53,74,91,101],{"slug":41,"name":42,"version":43,"author":7,"author_profile":8,"description":44,"short_description":45,"active_installs":11,"downloaded":46,"rating":11,"num_ratings":13,"last_updated":47,"tested_up_to":48,"requires_at_least":16,"requires_php":17,"tags":49,"homepage":51,"download_link":52,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"bp-gdpr","BuddyPress GDPR","1.0.1","\u003Cp>The GDPR requires companies and site owners to be transparent about how they collect, use, and share personal data. It also gives individuals more access and choice when it comes to how their own personal data is collected, used, and shared.\u003Cbr \u002F>\nBuddyPress GDPR plugin extends new Data Export & Data Erasure feature bundled with WordPress 4.9.6 Release.\u003C\u002Fp>\n\u003Cp>This plugin covers all BuddyPress native components.\u003C\u002Fp>\n\u003Col>\n\u003Cli>Messages (Anonymous\u002FDelete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>Activity (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>XProfile (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>Groups (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>Notifications (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003Cli>Settings (Delete\u002FExport on user requests)\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>NOTE:- Activating this plugin does not guarantee you fully comply with GDPR. Please, contact a GDPR low consultant.\u003C\u002Fp>\n","BuddyPress GDPR helps website owners to comply with European privacy regulations (GDPR).",7055,"2019-06-07T06:32:00.000Z","5.1.22",[50,20,21,22,23],"buddypress","https:\u002F\u002Fwww.buddyboss.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbp-gdpr.1.0.2.zip",{"slug":54,"name":55,"version":56,"author":57,"author_profile":58,"description":59,"short_description":60,"active_installs":61,"downloaded":62,"rating":63,"num_ratings":64,"last_updated":65,"tested_up_to":66,"requires_at_least":16,"requires_php":17,"tags":67,"homepage":70,"download_link":71,"security_score":11,"vuln_count":72,"unpatched_count":27,"last_vuln_date":73,"fetched_at":29},"gdpr-data-request-form","GDPR Data Request Form","1.7","Jb Audras","https:\u002F\u002Fprofiles.wordpress.org\u002Faudrasjb\u002F","\u003Cp>This plugin uses WordPress Core tools for GDPR Compliance.\u003C\u002Fp>\n\u003Cp>Since release 4.9.6, WordPress admin has some tools to handle Privacy User Requests. Administrators are able to create Data Request for every users in order to send or erase users data. This plugin allow website administrators to display Data Request Forms in front-end, for example in your Privacy Policy Page.\u003C\u002Fp>\n\u003Cp>Easily integrate a Personal Data Request Form for your visitors\u002Fusers in front-end, with some options:\u003Cbr \u002F>\n– Personal Data Export\u003Cbr \u002F>\n– Personal Data Erasure\u003Cbr \u002F>\n– Both of them\u003C\u002Fp>\n\u003Cp>It’s easy to integrate:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Widget\u003C\u002Fstrong>\u003Cbr \u002F>\nThe widget allows to integrate Data Request Form in your theme widget areas. It comes with three options: Form Title, Form Description Paragraph and Form Type.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Gutenberg Block\u003C\u002Fstrong> (since 1.4!)\u003Cbr \u002F>\nThe Gutenberg Block makes it even easier to integrate front-end forms in your website. The block allows you to choose the type of form you need.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Shortcode\u003C\u002Fstrong>\u003Cbr \u002F>\n[gpdr-data-request] shortcode allows to integrate Data Request Form where you need. This shortcode has no parameter.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>PHP Function\u003C\u002Fstrong>\u003Cbr \u002F>\necho gdrf_data_request_form( $args ) function allows to integrate Data Request Form where you need. This function has some parameters and filters (see FAQ section below). Don’t forget to \u003Ccode>echo\u003C\u002Fcode> the function.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>GDPR Data Request Form is using AJAX to provide clean and user-friendly forms in front-end. You can integrate them in any page of your website (like your Privacy Policy Page) or in your sidebar\u002Ffooter.\u003C\u002Fp>\n\u003Cp>The email address of the Data Protection Officer (DPO) can be changed in the Privacy Settings screen (Settings > Privacy).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Data Request Workflow:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The user\u002Fvisitor use your Personal Data Request Form to ask for Personal Data Export or Erasure.\u003C\u002Fli>\n\u003Cli>A request is created in WordPress Tools > Export\u002FErase personal data.\u003C\u002Fli>\n\u003Cli>An email is sent to the user\u002Fvisitor to confirm this request.\u003C\u002Fli>\n\u003Cli>The user request is set to Confirmed in Tools > Export\u002FErase personal data.\u003C\u002Fli>\n\u003Cli>An email is sent to the website administrator to validate the request.\u003C\u002Fli>\n\u003Cli>The personal data are sent by email to the user\u002Fvisitor (as a 3-day available download link), or erased, depending on the user request type.\u003C\u002Fli>\n\u003C\u002Ful>\n","Use WordPress Core GDPR tools to build front-end Personal Data export\u002Ferasure forms (includes Widget, Gutenberg Block, shortcode & Hooks).",6000,72955,98,14,"2025-11-27T08:52:00.000Z","6.9.4",[22,23,68,69],"personal-data-request","privacy","https:\u002F\u002Fjeanbaptisteaudras.com\u002Fgdpr-data-request-form","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgdpr-data-request-form.1.7.zip",1,"2024-02-02 00:00:00",{"slug":75,"name":76,"version":6,"author":77,"author_profile":78,"description":79,"short_description":80,"active_installs":81,"downloaded":82,"rating":27,"num_ratings":27,"last_updated":24,"tested_up_to":48,"requires_at_least":16,"requires_php":83,"tags":84,"homepage":88,"download_link":89,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":90},"dismiss-privacy-nag","Dismiss Privacy Nag","luciano-croce","https:\u002F\u002Fprofiles.wordpress.org\u002Fluciano-croce\u002F","\u003Cp>Dismiss \u003Cstrong>Privacy Pointer\u003C\u002Fstrong> Nag, (added in version 4.9.6 — partially GDPR OFF) and admin notification, when it is activated, or if it is in mu-plugins directory.\u003C\u002Fp>\n\u003Cp>Development takes place at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fluciano-croce\u002Fdismiss-privacy-nag\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Ftravis-ci.org\u002Fluciano-croce\u002Fdismiss-privacy-nag\" rel=\"nofollow ugc\">Travis CI\u003C\u002Fa>. Compatible with \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fdismiss-privacy-nag\" rel=\"nofollow ugc\">GlotPress Translations\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Approved in the repository of the plugin directory on 2018-05-09\u003C\u002Fp>\n\u003Cp>\u003Cstrong>If you need to completely disable and remove all Privacy Tools, Privacy Pointers, Privacy Notifications Nag, you can use\u003C\u002Fstrong> “\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdismiss-privacy-tools\" rel=\"ugc\">Dismiss Privacy Tools\u003C\u002Fa>“.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cp>Based to the \u003Ca href=\"https:\u002F\u002Fdeveloper.wordpress.org\u002Fplugins\u002Fwordpress-org\u002Fdetailed-plugin-guidelines\u002F#11-plugins-should-not-hijack-the-admin-dashboard\" rel=\"nofollow ugc\">Detailed Guidelines 11\u003C\u002Fa> principle: should not hijack the admin dashboard.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Users prefer and expect plugins to feel like part of WordPress.\u003C\u002Fli>\n\u003Cli>Constant nags and overwhelming the admin dashboard with unnecessary alerts detract from this experience.\u003C\u002Fli>\n\u003Cli>Upgrade prompts, notices, alerts, and the like must be limited in scope and used sparingly, be that contextually or only on the plugin’s setting page.\u003C\u002Fli>\n\u003Cli>Site wide notices or embedded dashboard widgets must be dismissible or self-dismiss when resolved.\u003C\u002Fli>\n\u003Cli>Error messages and alerts must include information on how to resolve the situation, and remove themselves when completed.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Because I made this?\u003C\u002Fp>\n\u003Cp>Seem that the new privacy pointer is not totally auto dismissible when is clicked one of the any admin menu links, for example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>If one of the any admin menu links was clicked, the privacy pointer disappear.\u003C\u002Fli>\n\u003Cli>If the dasboard admin menu link was clicked, the privacy pointer not disappear, return visible, and nagging user.\u003C\u002Fli>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F44136\" rel=\"nofollow ugc\">privacy pointer covers the thing it’s pointing at\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F43961\" rel=\"nofollow ugc\">privacy pointer popup covers collapsed admin menu\u003C\u002Fa>?\u003C\u002Fli>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F43996\" rel=\"nofollow ugc\">privacy pointer is misaligned to admin menu\u003C\u002Fa> when exist other admin menu items of 3rd party?\u003C\u002Fli>\n\u003Cli>Don’t show privacy feature pointer to new users: \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F44062\" rel=\"nofollow ugc\">doesn’t add the new callback to the dismissed_wp_pointers meta\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>The suggested code to auto dismiss it seem to not working well — remove_action( ‘admin_print_footer_scripts’, array( ‘WP_Internal_Pointers’, ‘pointer_wp496_privacy’ ) );\u003C\u002Fli>\n\u003Cli>The remove_action for pointer_wp496_privacy needed to be called from the admin_enqueue_scripts action with a priority of 11.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Add an admin pointer for new privacy features in version 4.9.6:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The new features are very important for some users, because of their GDPR obligations.\u003C\u002Fli>\n\u003Cli>They’re also spread across multiple top-level menus, making them less discoverable.\u003C\u002Fli>\n\u003Cli>An admin pointer will help to ensure that users are aware of the new tools and how to find them.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Props desrosj, andreamiddleton, allendav, xkon. Fixes #43942?\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fbuild.trac.wordpress.org\u002Fbrowser\u002Fbranches\u002F4.9?rev=42988\" rel=\"nofollow ugc\">4.9.6-alpha-43159\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fbrowser\u002Fbranches\u002F4.9?rev=43159\" rel=\"nofollow ugc\">4.9.6-alpha-42959-src\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fbuild.trac.wordpress.org\u002Fbrowser\u002Ftrunk?rev=42987\" rel=\"nofollow ugc\">5.0-alpha-43158\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fbrowser\u002Ftrunk?rev=43158\" rel=\"nofollow ugc\">5.0-alpha-42970-src\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Technical References\u003C\u002Fh3>\n\u003Cp>Translators: leave all technical references in English!\u003C\u002Fp>\n\u003Cp>Dismiss all the new feature pointers.\u003C\u002Fp>\n\u003Cp>@since 3.3.0\u003C\u002Fp>\n\u003Cp>All pointers can be disabled using the following:\u003C\u002Fp>\n\u003Cp>remove_action( ‘admin_enqueue_scripts’, array( ‘WP_Internal_Pointers’, ‘enqueue_scripts’ ) ); # This work but “unfortunately” as alternative solution that remove all pointers!\u003C\u002Fp>\n\u003Cp>@param string $hook_suffix The current admin page.\u003C\u002Fp>\n\u003Cp>Dismiss a pointer for the new privacy tools.\u003C\u002Fp>\n\u003Cp>@since 4.9.6\u003C\u002Fp>\n\u003Cp>Privacy pointer can be disabled using the following:\u003C\u002Fp>\n\u003Cp>remove_action( ‘admin_print_footer_scripts’, array( ‘WP_Internal_Pointers’, ‘pointer_wp496_privacy’ ) ); # This for now not work: due a bug? Investigating… wp496_privacy ???\u003C\u002Fp>\n\u003Cp>@param string $hook_suffix The current admin page.\u003C\u002Fp>\n\u003Ch4>Credits\u003C\u002Fh4>\n\u003Cp>Issue (bug) \u003Cstrong>fixed by my brother Garrett Hyder\u003C\u002Fstrong> and tested from Pascal Birchler (swissspidy): refer to \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F45529\u002F\" rel=\"nofollow ugc\">Ticket 45529\u003C\u002Fa> opened by \u003Ca href=\"https:\u002F\u002Fprofile.wordpress.org\u002Fdaleharrison\" rel=\"nofollow ugc\">Dale Harrison\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Thanks to Ross McKay (webaware) and Stephen Edgar (netweb) to support me in New Zealander (English) translations, in some typo errors, and some minor (English) error stuff.\u003C\u002Fp>\n\u003Cp>Thanks to Fernando Tellado (fernandot) and Nilo Velez to support me in Spanish translations.\u003C\u002Fp>\n\u003Cp>Thanks to all!\u003C\u002Fp>\n\u003Ch4>Tips\u003C\u002Fh4>\n\u003Cp>A neat trick, is to put this single file dismiss-privacy-nag.php (not its parent directory) in the \u002Fwp-content\u002Fmu-plugins\u002F directory (create it if not exists) so you won’t even have to enable it, and will be loaded by default, also, since first step installation of WordPress setup!\u003C\u002Fp>\n\u003Cp>Also, for translation functionality, put all files of the single languages (dismiss-privacy-nag-en_US.mo for example) that you need (not its parent directory) in the \u002Fwp-content\u002Fmu-plugins\u002F directory (create it if not exists) and will also be loaded by default, since first step installation of WordPress setup!\u003C\u002Fp>\n\u003Cp>Note that mu-plugins functionality is available since WP 2.8+ or greater and is not present in WP 2.7+ or previous.\u003C\u002Fp>\n\u003Ch4>About it\u003C\u002Fh4>\n\u003Cp>The code of this plugin is not written with a PHP framework, but manually, with a simple PHP editor compatible UTF-8 without BOM, and Unix LF. To avoid code corruption, do not edit it with WordPress embedded editor, or with any specifications incompatible editor. This author is exonerated from any responsibility or damage (directly or indirectly) caused and due to the use of this bad practice.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>super light secure and fast plugin easy on server resources\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>About me\u003C\u002Fh4>\n\u003Cp>Dismiss Privacy Nag is developed by Luciano Croce, 13-years “officially” WordPress Plugins & Themes Developer Senior, Co-Author of plugin Classic Editor, polyglot (based on English, French, Spanish, German, Portuguese, Italian, Ligurian), GTE en_GB & en_CA, PTE for Plugins & Themes in more languages, PTE for Italian WordPress.org & Plugins & Themes Directory, Local Manager of Ligurian Language Community for WP LIJ, Validator English (UK) for WordPress.com, translator for my & other projects, book author of TRUE DOS (the dark side of its history from the dark side of its users) Code Tweaker & Bug Hunter, Security Mechanic & WPMU Lover, Freelancer & Volunteer.\u003C\u002Fp>\n\u003Ch4>Privacy\u003C\u002Fh4>\n\u003Cp>This plugin does not collect or store any user related data or personally identifying information, does not set any cookies, and it does not connect to any third-party websites. It only uses functionality that is available in WordPress. In those terms, it does not affect your website users’ privacy in any way.\u003C\u002Fp>\n\u003Ch4>GDPR\u003C\u002Fh4>\n\u003Cp>This plugin does not collect or store any user related data or personally identifying information, but does not do anything to make your site less GDPR compliant. I have done my best to ensure that is 100% GDPR compliant, but I’m not a lawyer, so can’t guarantee anything. To determine if your site is GDPR compliant, please consult a lawyer.\u003C\u002Fp>\n","dismiss privacy pointer nag and admin notification when it is activated or if it is in mu-plugins directory",10,2027,"5.2.4",[23,77,85,86,87],"personal-data-erase","personal-data-export","privacy-policy","https:\u002F\u002Fgithub.com\u002Fluciano-croce\u002Fdismiss-privacy-nag\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdismiss-privacy-nag.zip","2026-03-15T14:44:11.924Z",{"slug":92,"name":93,"version":6,"author":77,"author_profile":78,"description":94,"short_description":95,"active_installs":81,"downloaded":96,"rating":27,"num_ratings":27,"last_updated":97,"tested_up_to":48,"requires_at_least":16,"requires_php":83,"tags":98,"homepage":99,"download_link":100,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"dismiss-privacy-tools","Dismiss Privacy Tools","\u003Cp>Disable and remove \u003Cstrong>Privacy Tools\u003C\u002Fstrong>, (added in version 4.9.6 — completely GDPR OFF) and reset options to default, when it is activated, or if it is in mu-plugins directory.\u003C\u002Fp>\n\u003Cp>Development takes place at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fluciano-croce\u002Fdismiss-privacy-tools\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Ftravis-ci.org\u002Fluciano-croce\u002Fdismiss-privacy-tools\" rel=\"nofollow ugc\">Travis CI\u003C\u002Fa>. Compatible with \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fdismiss-privacy-tools\" rel=\"nofollow ugc\">GlotPress Translations\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Approved in the repository of the plugin directory on 2018-06-28\u003C\u002Fp>\n\u003Cp>\u003Cstrong>If you need to partially disable only Privacy Pointers, Privacy Notification Nag, without removing Privacy Tools, you can use\u003C\u002Fstrong> “\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdismiss-privacy-nag\" rel=\"ugc\">Dismiss Privacy Nag\u003C\u002Fa>“.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Disable Privacy Tool \u002Fwp-admin\u002Fprivacy.php\u003C\u002Fli>\n\u003Cli>Disable Erase Personal Data \u002Fwp-admin\u002Ftools.php?page=erase_personal_data\u003C\u002Fli>\n\u003Cli>Disable Export Personal Data \u002Fwp-admin\u002Ftools.php?page=export_personal_data\u003C\u002Fli>\n\u003Cli>Remove scheduled action used to delete old export files.\u003C\u002Fli>\n\u003Cli>Remove scheduled event used to delete old export files.\u003C\u002Fli>\n\u003Cli>Remove scheduled hook used to delete old export files.\u003C\u002Fli>\n\u003Cli>Short circuits the option for the privacy policy page to always return 0 to avoid unneeded database query.\u003C\u002Fli>\n\u003Cli>Delete unnecessary database options.\u003C\u002Fli>\n\u003Cli>Reset all options to default.\u003C\u002Fli>\n\u003Cli>Don’t show the privacy feature pointer to new users.\u003C\u002Fli>\n\u003Cli>The suggested code to auto dismiss it seem to not working well — remove_action( ‘admin_print_footer_scripts’, array( ‘WP_Internal_Pointers’, ‘pointer_wp496_privacy’ ) );\u003C\u002Fli>\n\u003Cli>The remove_action for pointer_wp496_privacy needed to be called from the admin_enqueue_scripts action with a priority of 11.\u003C\u002Fli>\n\u003Cli>NEW – Dismiss pointer for the new privacy tools. FIXED!\u003C\u002Fli>\n\u003Cli>NEW – Disable comments cookies opt-in and remove related option.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Because I made this?\u003C\u002Fp>\n\u003Cp>Simply because is different to the other similar plugins.\u003C\u002Fp>\n\u003Ch3>Technical References\u003C\u002Fh3>\n\u003Cp>Translators: leave all technical references in English!\u003C\u002Fp>\n\u003Cp>Dismiss all the new feature pointers.\u003C\u002Fp>\n\u003Cp>@since 3.3.0\u003C\u002Fp>\n\u003Cp>All pointers can be disabled using the following:\u003C\u002Fp>\n\u003Cp>remove_action( ‘admin_enqueue_scripts’, array( ‘WP_Internal_Pointers’, ‘enqueue_scripts’ ) ); # This work but “unfortunately” as alternative solution that remove all pointers!\u003C\u002Fp>\n\u003Cp>@param string $hook_suffix The current admin page.\u003C\u002Fp>\n\u003Cp>Dismiss a pointer for the new privacy tools.\u003C\u002Fp>\n\u003Cp>@since 4.9.6\u003C\u002Fp>\n\u003Cp>Privacy pointer can be disabled using the following:\u003C\u002Fp>\n\u003Cp>remove_action( ‘admin_print_footer_scripts’, array( ‘WP_Internal_Pointers’, ‘pointer_wp496_privacy’ ) ); # This for now not work: due a bug? Investigating… wp496_privacy ???\u003C\u002Fp>\n\u003Cp>@param string $hook_suffix The current admin page.\u003C\u002Fp>\n\u003Ch4>Credits\u003C\u002Fh4>\n\u003Cp>Issue (bug) \u003Cstrong>fixed by my brother Garrett Hyder\u003C\u002Fstrong> and tested from Pascal Birchler (swissspidy): refer to \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F45529\u002F\" rel=\"nofollow ugc\">Ticket 45529\u003C\u002Fa> opened by \u003Ca href=\"https:\u002F\u002Fprofile.wordpress.org\u002Fdaleharrison\" rel=\"nofollow ugc\">Dale Harrison\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Thanks to Ross McKay (webaware) and Stephen Edgar (netweb) to support me in New Zealander (English) translations, in some typo errors, and some minor (English) error stuff.\u003C\u002Fp>\n\u003Cp>Thanks to Fernando Tellado (fernandot) and Nilo Velez to support me in Spanish translations.\u003C\u002Fp>\n\u003Cp>Thanks to all!\u003C\u002Fp>\n\u003Ch4>Tips\u003C\u002Fh4>\n\u003Cp>A neat trick, is to put this single file dismiss-privacy-tools.php (not its parent directory) in the \u002Fwp-content\u002Fmu-plugins\u002F directory (create it if not exists) so you won’t even have to enable it, and will be loaded by default, also, since first step installation of WordPress setup!\u003C\u002Fp>\n\u003Cp>Also, for translation functionality, put all files of the single languages (dismiss-privacy-tools-en_US.mo for example) that you need (not its parent directory) in the \u002Fwp-content\u002Fmu-plugins\u002F directory (create it if not exists) and will also be loaded by default, since first step installation of WordPress setup!\u003C\u002Fp>\n\u003Cp>Note that mu-plugins functionality is available since WP 2.8+ or greater and is not present in WP 2.7+ or previous.\u003C\u002Fp>\n\u003Ch4>About it\u003C\u002Fh4>\n\u003Cp>The code of this plugin is not written with a PHP framework, but manually, with a simple PHP editor compatible UTF-8 without BOM, and Unix LF. To avoid code corruption, do not edit it with WordPress embedded editor, or with any specifications incompatible editor. This author is exonerated from any responsibility or damage (directly or indirectly) caused and due to the use of this bad practice.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>super light secure and fast plugin easy on server resources\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>About me\u003C\u002Fh4>\n\u003Cp>Dismiss Privacy Tools is developed by Luciano Croce, 13-years “officially” WordPress Plugins & Themes Developer Senior, Co-Author of plugin Classic Editor, polyglot (based on English, French, Spanish, German, Portuguese, Italian, Ligurian), GTE en_GB & en_CA, PTE for Plugins & Themes in more languages, PTE for Italian WordPress.org & Plugins & Themes Directory, Local Manager of Ligurian Language Community for WP LIJ, Validator English (UK) for WordPress.com, translator for my & other projects, book author of TRUE DOS (the dark side of its history from the dark side of its users) Code Tweaker & Bug Hunter, Security Mechanic & WPMU Lover, Freelancer & Volunteer.\u003C\u002Fp>\n\u003Ch4>Privacy\u003C\u002Fh4>\n\u003Cp>This plugin does not collect or store any user related data or personally identifying information, does not set any cookies, and it does not connect to any third-party websites. It only uses functionality that is available in WordPress. In those terms, it does not affect your website users’ privacy in any way.\u003C\u002Fp>\n\u003Ch4>GDPR\u003C\u002Fh4>\n\u003Cp>This plugin does not collect or store any user related data or personally identifying information, but does not do anything to make your site less GDPR compliant. I have done my best to ensure that is 100% GDPR compliant, but I’m not a lawyer, so can’t guarantee anything. To determine if your site is GDPR compliant, please consult a lawyer.\u003C\u002Fp>\n","disable and remove privacy tools added in 4.9.6 completely GDPR OFF reset options to default when it is activated or if it is in mu-plugins directory",2011,"2019-01-25T02:47:00.000Z",[23,77,85,86,87],"https:\u002F\u002Fgithub.com\u002Fluciano-croce\u002Fdismiss-privacy-tools\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdismiss-privacy-tools.zip",{"slug":23,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":110,"num_ratings":111,"last_updated":112,"tested_up_to":66,"requires_at_least":113,"requires_php":17,"tags":114,"homepage":118,"download_link":119,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"GDPR","2.1.2","Trew Knowledge","https:\u002F\u002Fprofiles.wordpress.org\u002Ftrewknowledge\u002F","\u003Cp>This plugin is meant to assist a Controller, Data Processor, and Data Protection Officer (DPO) with efforts to meet the obligations and rights enacted under the GDPR.\u003C\u002Fp>\n\u003Ch3>Documentation\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftrewknowledge\u002FGDPR\u002Fwiki\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Ftrewknowledge\u002FGDPR\u002Fwiki\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Collaboration\u003C\u002Fh3>\n\u003Cp>You can send your pull request at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftrewknowledge\u002Fgdpr\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Ftrewknowledge\u002Fgdpr\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Shortcodes & helper functions\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftrewknowledge\u002FGDPR\u002Fwiki\u002FFunctions-&-Shortcodes\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Ftrewknowledge\u002FGDPR\u002Fwiki\u002FFunctions-&-Shortcodes\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Consent management\u003C\u002Fli>\n\u003Cli>Privacy Preference management for Cookies with front-end preference UI & banner notifications\u003C\u002Fli>\n\u003Cli>Privacy Policy page configurations with version control and re-consent management\u003C\u002Fli>\n\u003Cli>Rights to erasure & deletion of website data with a double opt-in confirmation email\u003C\u002Fli>\n\u003Cli>Re-assignment of user data on erasure requests & pseudonymization of user website data\u003C\u002Fli>\n\u003Cli>Data Processor settings and publishing of contact information\u003C\u002Fli>\n\u003Cli>Right to access data by admin dashboard with email look up and export\u003C\u002Fli>\n\u003Cli>Right to access data by Data Subject with front-end requests button & double opt-in confirmation email\u003C\u002Fli>\n\u003Cli>Right to portability & export of data by Admin or Data Subject in XML or JSON formats\u003C\u002Fli>\n\u003Cli>Encrypted audit logs for the lifetime of Data Subject compliance activity\u003C\u002Fli>\n\u003Cli>Data Subject Secret Token for two-factor decryption and recovery of data\u003C\u002Fli>\n\u003Cli>Data breach notification logs and batch email notifications to Data Subjects\u003C\u002Fli>\n\u003Cli>Telemetry Tracker for visualizing plugins and website data\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Settings\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>General\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>From the Settings options in the dashboard, you can select the Privacy Policy page for tracking and logging consent.\u003C\u002Fp>\n\u003Cp>On login, the user must consent to the Privacy Policy outlined on the site. If the user does not consent, the user will not be registered or logged in.\u003C\u002Fp>\n\u003Cp>If the site owner updates the Privacy Policy page content, the change will be logged and flagged to the admin that they must notify users on next login to seek re-consent. Additionally, the warning message can be dismissed in the event of a minor correction or mistake.\u003C\u002Fp>\n\u003Cp>Additionally, under General Settings the Admin can set the outgoing email limitation which would set the batch notification email limit per hour in the event of a Breach Notification.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Cookie Preference Management\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Similar to consent management, users can opt in or out of cookies that are being used on the site. There are 3 formats of cookies that can be created which include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Always Active:\u003C\u002Fstrong> Cookies that are always active or are required for the site to function.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Toggled:\u003C\u002Fstrong> Cookies that can be activated or blocked based on the user preference\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Opt-Out Link:\u003C\u002Fstrong> Cookies that require configuration from a third-party source in order to opt-out\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Depending on the user preference setting, you can use the \u003Ccode>is_allowed_cookie( $cookie )\u003C\u002Fcode> function to save and set the cookies. The cookie with the user approved cookies can be found at another cookie named \u003Ccode>gdpr_approved_cookies\u003C\u002Fcode>. There’s also a helper function called \u003Ccode>is_allowed_cookie( $cookie )\u003C\u002Fcode> that you can use to prevent setting up a cookie.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Consent Management\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Consents can be registered on the settings page. They can be optional or not. By default, this plugin comes with a Privacy Policy consent that users need to agree with on registration.\u003C\u002Fp>\n\u003Cp>For optional consents, there’s a wrapper function \u003Ccode>have_consent( $consent_id )\u003C\u002Fcode> to help you display or hide something on the site depending if the user gave consent or not.\u003C\u002Fp>\n\u003Cp>Consents are logged to the user record for auditing or for access purposes.\u003C\u002Fp>\n\u003Ch3>Requests Table & Rights of Data Subject\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Right to Erasure Requests\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>The Data Subject is able to submit a request to be erased from the site using a shortcode.\u003C\u002Fli>\n\u003Cli>\n\u003Cp>When a request is made, the Data Subject will receive an email confirmation to confirm the deletion request.\u003C\u002Fp>\n\u003Col>\n\u003Cli>After email confirmation, the user request is added to the requests table for review by the Administrator. The Administrator can also add a user manually with an email look up and review.\u003C\u002Fli>\n\u003Cli>If the Data Subject has content published on the site for any post types or comments, they will be added to this table. If they do not have any content, they will receive a confirmation of erasure request and be provided a 6 digit Token for safekeeping after erasure in case of recover data needs.\u003C\u002Fli>\n\u003Cli>The requests table allows the Administrator to reassign any content to another user or delete it.\u003C\u002Fli>\n\u003Cli>In the event of comments, the Data Subject’s content would be made anonymous.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Admin can also manually add users to the erasure requests table with a manual email search\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Right to Access Data Request & User Data Portability\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>The Data Subject can place a request to download their data with the shortcode.\u003C\u002Fli>\n\u003Cli>After requesting their data, the user will receive a double opt-in confirmation email then the plugin will generate an XML or JSON file, which will be emailed to them for download with an expiration time of 48 hours.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Right to Rectify & Complaint Requests\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>The Data Subject can place a request to rectify data or file a complaint with the shortcode.\u003C\u002Fli>\n\u003Cli>After making their request, the user will receive a double opt-in confirmation email and then add them to the table for admin to handle the request.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Tools\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Access Data\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The Access Data tool allows the Admin to look up a user email and view the data of a particular user. The Admin can download and export the data in a JSON or XML format and provide to the Data Subject if manually requested.\u003C\u002Fp>\n\u003Cp>NOTE: This method should not be used without the Data Subject confirming their identity.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Audit Log\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Everything the Data Subject does from registration, providing consent to the privacy policy, terms of service and other requests are logged and encrypted in a database. Data breach notifications are also logged to all Data Subjects upon confirmation by Controller.\u003C\u002Fp>\n\u003Col>\n\u003Cli>Using the Data Subject’s email, you can look up and retrieve the user information and display it.\u003C\u002Fli>\n\u003Cli>If the Data Subject has been removed from the site, this encrypted log is deleted from the database and saved as an encrypted file inside the plugin folder.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>If in the future, the Data Subject makes a complaint or there is a need to recover the data, the user can provide their email address and the 6 digit token they received from the deletion confirmation email to decrypt and retrieve the file.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Data Breach & Notifications\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>In case of a data breach, the Admin can generate a Data Breach Notification to users by logging the information and confirm the breach through a double opt-in confirmation email. The following information would be recorded in the audit log:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Nature of the personal data breach\u003C\u002Fli>\n\u003Cli>Name and contact details of the data protection officer\u003C\u002Fli>\n\u003Cli>Likely consequences of the personal data breach\u003C\u002Fli>\n\u003Cli>Measures were taken or proposed to be taken\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Once the confirmation of the breach has been confirmed via email, the website will begin a batch email notification process to all users every hour until all users receive the notification.\u003C\u002Fp>\n\u003Ch3>Telemetry Tracker\u003C\u002Fh3>\n\u003Cp>The Telemetry Tracker feature will display all data that is being sent outside of your server to another destination. It will indicate the plugin or theme responsible, file and line where the data is being sent.\u003C\u002Fp>\n\u003Cp>WordPress Core and some plugins gather data from your install and send this data to an outside server.\u003C\u002Fp>\n\u003Cp>WordPress Plugin Repository does not allow plugins to do that, but premium plugins are able to do this because they are not bound by the Plugin repository rules. If you did not explicitly opt-in for this feature you should make a complaint.\u003C\u002Fp>\n\u003Ch3>Important!\u003C\u002Fh3>\n\u003Cp>Activating this plugin does not guarantee that an organization is successfully meeting its responsibilities and obligations of GDPR. Individual organizations should assess their unique responsibilities and ensure extra measures are taken to meet any obligations required by law and based on a data protection impact assessment (DPIA).\u003C\u002Fp>\n","This plugin is meant to assist with the GDPR obligations of a Data processor and Controller.",10000,371698,86,58,"2026-02-24T15:47:00.000Z","4.7",[115,23,116,117,69],"compliance","general-data-protection-regulation","law","https:\u002F\u002Ftrewknowledge.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgdpr.2.1.2.zip",{"attackSurface":121,"codeSignals":157,"taintFlows":164,"riskAssessment":165,"analyzedAt":175},{"hooks":122,"ajaxHandlers":153,"restRoutes":154,"shortcodes":155,"cronEvents":156,"entryPointCount":27,"unprotectedCount":27},[123,129,133,137,143,147,149,150,152],{"type":124,"name":125,"callback":126,"file":127,"line":128},"action","plugins_loaded","bbpress_gdpre_plugin_init","bbpress-gdpr.php",31,{"type":124,"name":130,"callback":130,"file":131,"line":132},"init","includes\\controller.php",197,{"type":124,"name":134,"callback":135,"file":131,"line":136},"wp_enqueue_scripts","enqueue_scripts",199,{"type":138,"name":139,"callback":140,"priority":81,"file":141,"line":142},"filter","wp_privacy_personal_data_exporters","register_exporter","includes\\gdpr\\bbp_gdpr_forums.php",23,{"type":138,"name":144,"callback":145,"priority":81,"file":141,"line":146},"wp_privacy_personal_data_erasers","erase_exporter",24,{"type":138,"name":139,"callback":140,"priority":81,"file":148,"line":142},"includes\\gdpr\\bbp_gdpr_replies.php",{"type":138,"name":144,"callback":145,"priority":81,"file":148,"line":146},{"type":138,"name":139,"callback":140,"priority":81,"file":151,"line":142},"includes\\gdpr\\bbp_gdpr_topics.php",{"type":138,"name":144,"callback":145,"priority":81,"file":151,"line":146},[],[],[],[],{"dangerousFunctions":158,"sqlUsage":159,"outputEscaping":161,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":27,"bundledLibraries":163},[],{"prepared":27,"raw":27,"locations":160},[],{"escaped":27,"rawEcho":27,"locations":162},[],[],[],{"summary":166,"deductions":167},"The static analysis of bbp-gdpr v1.0.2 indicates a strong security posture in terms of common web vulnerabilities. The absence of dangerous functions, the exclusive use of prepared statements for SQL queries, and the complete output escaping suggest good coding practices to prevent common injection attacks. Furthermore, the plugin exhibits no file operations or external HTTP requests, which are often vectors for compromise. The lack of any recorded CVEs or past vulnerabilities also points towards a mature and secure development history for this plugin.\n\nHowever, a significant concern arises from the complete absence of any identified attack surface entry points, including AJAX handlers, REST API routes, shortcodes, or cron events. While this might seem positive, it's highly unusual for a WordPress plugin, especially one designed to interact with user data for GDPR compliance, to have zero entry points. This could indicate an incomplete analysis or, more worryingly, that the plugin's functionality is somehow implemented without any detectable WordPress hooks or interaction points, which itself is a deviation from standard WordPress plugin development and could hide unforeseen security issues or limitations in the analysis.\n\nIn conclusion, bbp-gdpr v1.0.2 appears to be well-coded against traditional web vulnerabilities based on the provided static analysis. The vulnerability history is clean, which is a positive indicator. The primary, albeit speculative, concern lies in the complete lack of identified attack surface, which warrants further investigation into how the plugin integrates with WordPress and handles data, as this absence is atypical and could mask other issues.",[168,171,173],{"reason":169,"points":170},"No identified attack surface entry points",5,{"reason":172,"points":170},"No nonce checks",{"reason":174,"points":170},"No capability checks","2026-03-16T20:58:24.937Z",{"wat":177,"direct":190},{"assetPaths":178,"generatorPatterns":183,"scriptPaths":184,"versionParams":185},[179,180,181,182],"\u002Fwp-content\u002Fplugins\u002Fbbp-gdpr\u002Fassets\u002Fcss\u002Fbbp-gdpr-admin.css","\u002Fwp-content\u002Fplugins\u002Fbbp-gdpr\u002Fassets\u002Fcss\u002Fbbp-gdpr-public.css","\u002Fwp-content\u002Fplugins\u002Fbbp-gdpr\u002Fassets\u002Fjs\u002Fbbp-gdpr-admin.js","\u002Fwp-content\u002Fplugins\u002Fbbp-gdpr\u002Fassets\u002Fjs\u002Fbbp-gdpr-public.js",[],[182],[186,187,188,189],"bbp-gdpr\u002Fassets\u002Fcss\u002Fbbp-gdpr-admin.css?ver=","bbp-gdpr\u002Fassets\u002Fcss\u002Fbbp-gdpr-public.css?ver=","bbp-gdpr\u002Fassets\u002Fjs\u002Fbbp-gdpr-admin.js?ver=","bbp-gdpr\u002Fassets\u002Fjs\u002Fbbp-gdpr-public.js?ver=",{"cssClasses":191,"htmlComments":194,"htmlAttributes":195,"restEndpoints":197,"jsGlobals":198,"shortcodeOutput":200},[192,193],"bbp-gdpr-consent-notice","bbp-gdpr-consent-settings",[],[196],"data-bbp-gdpr-settings",[],[199],"window.bbp_gdpr_public_params",[201],"[bbp_gdpr_consent]"]