{"id":384014,"date":"2026-10-18T15:44:51","date_gmt":"2026-10-18T15:44:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/nonprofit-forms\/"},"modified":"2026-10-20T09:35:51","modified_gmt":"2026-10-20T09:35:51","slug":"nonprofit-forms","status":"publish","type":"plugin","link":"https:\/\/snd.wordpress.org\/plugins\/nonprofit-forms\/","author":21181450,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.2.6","stable_tag":"0.2.6","tested":"7.1.3","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Nonprofit Forms","header_author":"Impact Connect","header_description":"Lightweight, spam-free, extendable forms for Indian nonprofits. No trackers, no CAPTCHA services, DPDP-friendly by default.","assets_banners_color":"f4faf7","last_updated":"2026-10-20 09:35:51","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":148,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.2.1":{"tag":"0.2.1","author":"silasantosh","date":"2026-10-18 15:44:18","revision":3753277},"0.2.3":{"tag":"0.2.3","author":"silasantosh","date":"2026-10-19 20:54:07","revision":3755540},"0.2.4":{"tag":"0.2.4","author":"silasantosh","date":"2026-10-20 05:31:36","revision":3755933},"0.2.5":{"tag":"0.2.5","author":"silasantosh","date":"2026-10-20 05:46:08","revision":3755944},"0.2.6":{"tag":"0.2.6","author":"silasantosh","date":"2026-10-20 09:35:51","revision":3756305}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3755540,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3755540,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3755540,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3755540,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"nonprofit-forms\/form":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"nonprofit-forms\/form","title":"Nonprofit Form","category":"widgets","icon":"feedback","description":"Show one of your Nonprofit Forms and style it.","textdomain":"nonprofit-forms","attributes":{"formId":{"type":"integer","default":0},"labelColor":{"type":"string"},"fieldBackground":{"type":"string"},"fieldText":{"type":"string"},"fieldBorder":{"type":"string"},"fieldRadius":{"type":"integer","default":4},"buttonBackground":{"type":"string"},"buttonText":{"type":"string"},"buttonStyle":{"type":"string","enum":["fill","outline"],"default":"fill"}},"supports":{"html":false,"align":["wide"],"color":{"background":true,"text":true,"link":false},"typography":{"fontSize":true,"lineHeight":true},"spacing":{"padding":true,"margin":true},"__experimentalBorder":{"color":true,"radius":true,"width":true,"style":true}},"editorScript":"file:.\/editor.js","editorStyle":"nonprofit-forms"}},"tagged_versions":["0.2.1","0.2.3","0.2.4","0.2.5","0.2.6"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"A form on a phone, using the theme's fonts and colours.","2":"Clear, accessible errors, with what the visitor typed kept.","3":"The form editor: add, reorder and require fields."}},"plugin_section":[],"plugin_tags":[358,601,2691,15130,599],"plugin_category":[42,54],"plugin_contributors":[287385],"plugin_business_model":[],"class_list":["post-384014","plugin","type-plugin","status-publish","hentry","plugin_tags-contact-form","plugin_tags-forms","plugin_tags-ngo","plugin_tags-nonprofit","plugin_tags-spam","plugin_category-contact-forms","plugin_category-security-and-spam-protection","plugin_contributors-silasantosh","plugin_committers-silasantosh"],"banners":{"banner":"https:\/\/ps.w.org\/nonprofit-forms\/assets\/banner-772x250.png?rev=3755540","banner_2x":"https:\/\/ps.w.org\/nonprofit-forms\/assets\/banner-1544x500.png?rev=3755540","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/nonprofit-forms\/assets\/icon-128x128.png?rev=3755540","icon_2x":"https:\/\/ps.w.org\/nonprofit-forms\/assets\/icon-256x256.png?rev=3755540","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Nonprofit Forms is a lean form builder made for Indian nonprofits and anyone who wants forms without extra weight.<\/p>\n\n<ul>\n<li>Build a form with text, email, phone, number, date, long text, dropdown, single choice, multiple choice and consent fields.<\/li>\n<li>Spam protection that runs on your own server: hidden field, signed timer, rate limit and link check. No reCAPTCHA, no Google or Cloudflare scripts.<\/li>\n<li>Email notification with a Reply-To set to the person who wrote to you.<\/li>\n<li>Entries saved in WordPress, with a viewer and CSV download that opens correctly in Excel (Hindi and other Indian scripts included).<\/li>\n<li>Add a form with a shortcode or the \"Nonprofit Form\" block.<\/li>\n<li>Style it in the block editor, no CSS needed: label, field and border colours, corner roundness, filled or outline submit button, plus the standard colour, font size, spacing and border controls. A contrast check warns when text would be hard to read.<\/li>\n<li>Works without JavaScript on the public page.<\/li>\n<li>Privacy friendly by default: no cookies, no IP address stored, automatic deletion of old entries, and support for WordPress personal data export and erase. Built with India's Digital Personal Data Protection Act in mind. This plugin helps; it is not legal advice.<\/li>\n<li>Developers can add field types and hook into the submission (see below).<\/li>\n<\/ul>\n\n<h4>Shortcode<\/h4>\n\n<pre><code>[nonprofit_form id=\"123\"]\n<\/code><\/pre>\n\n<h4>For developers<\/h4>\n\n<ul>\n<li>Filter <code>npfrm_field_types<\/code> to add field types.<\/li>\n<li>Filter <code>npfrm_spam_reason<\/code>, <code>npfrm_max_links<\/code>, <code>npfrm_rate_limit<\/code> to tune spam checks.<\/li>\n<li>Filter <code>npfrm_notification<\/code> to change the email. Action <code>npfrm_submitted<\/code> runs after a clean submission.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin and activate it.<\/li>\n<li>Go to Nonprofit Forms &gt; Add new, build your form and publish.<\/li>\n<li>Paste the shortcode into a page, or add the Nonprofit Form block.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20use%20recaptcha%3F\"><h3>Does it use reCAPTCHA?<\/h3><\/dt>\n<dd><p>No. Nothing is loaded from outside your site.<\/p><\/dd>\n<dt id=\"where%20are%20entries%20kept%3F\"><h3>Where are entries kept?<\/h3><\/dt>\n<dd><p>In your WordPress database. Set how long under Nonprofit Forms &gt; Settings.<\/p><\/dd>\n<dt id=\"does%20it%20support%20file%20uploads%20or%20payments%3F\"><h3>Does it support file uploads or payments?<\/h3><\/dt>\n<dd><p>Not yet. A donations plugin is planned separately.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.6<\/h4>\n\n<ul>\n<li>Fix: removed one test entry (PIN 999999, \"TEST OFFICE\", Nizamabad) from the bundled PIN data. All other State \/ District \/ PIN entries are unchanged.<\/li>\n<\/ul>\n\n<h4>0.2.5<\/h4>\n\n<ul>\n<li>New: the consent checkbox now always shows last, just above the Send button. Consent blocks that appear only after an answer (such as the under-18 guardian one) stay where you put them.<\/li>\n<li>New: the India address picker has visible labels for State \/ UT, District, Town \/ Area and PIN code, a styled town search box, and two columns on wider screens.<\/li>\n<\/ul>\n\n<h4>0.2.4<\/h4>\n\n<ul>\n<li>New: India address field - State, District, Town\/Area and PIN code in one searchable picker, from a bundled copy of the India Post PIN directory. The copy comes from a public mirror of the All India Pincode Directory (India Post data, official source: data.gov.in), not a direct download from the official site. Town search filters long district lists; PIN fills automatically when a town has one code.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>New: private analytics (views, submissions, per day, no cookies or IPs).<\/li>\n<li>New: choose who can see a form, and which roles can read its entries.<\/li>\n<li>New: plain-language privacy notice that records the wording each person saw; guardian consent block for under-18s.<\/li>\n<li>New: conditional fields, conditional email routing, auto-reply, open\/close dates and entry limits.<\/li>\n<li>New: entry search, status and private notes, bulk delete, erase a person's data.<\/li>\n<li>New: Indian mobile, PIN code and State\/UT fields.<\/li>\n<li>New: stronger spam armor: adjustable rate limit, temporary-email blocking and a blocked-words list.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Small, spam-free contact and enquiry forms for nonprofits. No trackers, no CAPTCHA services, no upsells.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/384014","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=384014"}],"author":[{"embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/silasantosh"}],"wp:attachment":[{"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=384014"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=384014"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=384014"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=384014"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=384014"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/snd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=384014"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}