{"id":386582,"date":"2026-10-29T06:49:31","date_gmt":"2026-10-29T06:49:31","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/usp-form-builder\/"},"modified":"2026-10-29T06:48:58","modified_gmt":"2026-10-29T06:48:58","slug":"techsolution-form-studio","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/techsolution-form-studio\/","author":23585434,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.3.0","stable_tag":"2.3.0","tested":"7.1.4","requires":"6.3","requires_php":"7.4","requires_plugins":null,"header_name":"TechSolution Form Studio","header_author":"usptechsolution","header_description":"Drag-and-drop form builder with conditional logic, multi-step forms, file uploads, ratings, entries management, exports, email notifications and spam protection.","assets_banners_color":"8466ed","last_updated":"2026-10-29 06:48:58","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/usptechsolution.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":65,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.3.0":{"tag":"2.3.0","author":"usptechsolution","date":"2026-10-29 06:48:58","revision":3772217}},"upgrade_notice":{"2.3.0":"<p>Adds a visual editor to Section blocks, so notes can have headings, lists, links and quotes. Existing notes keep their text and paragraphs.<\/p>","2.2.0":"<p>Adds form width presets (up to full width) and alignment, and keeps fields consistent on any theme. Existing forms keep their current width until you choose a new one.<\/p>","2.1.0":"<p>Fixes &quot;Security verification failed&quot; on cached sites, plus wider admin screens and a redesigned Settings page. No changes to your forms or entries.<\/p>","2.0.1":"<p>New name and shortcode: replace <code>[usp_form id=&amp;quot;\u2026&amp;quot;]<\/code> with <code>[tsfs_form id=&amp;quot;\u2026&amp;quot;]<\/code>. Forms, entries and settings are migrated automatically.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3772284,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3772284,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3772284,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3772284,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"techsolution-form-studio\/form":{"name":"techsolution-form-studio\/form","title":"Form Studio Form"}},"tagged_versions":["2.3.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3772284,"resolution":"1","location":"assets","locale":"","width":688,"height":541},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3772284,"resolution":"2","location":"assets","locale":"","width":688,"height":541},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3772284,"resolution":"3","location":"assets","locale":"","width":812,"height":570},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3772284,"resolution":"4","location":"assets","locale":"","width":700,"height":517},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3772284,"resolution":"5","location":"assets","locale":"","width":692,"height":487}},"screenshots":{"1":"Visual builder with field palette, canvas and field settings.","2":"Entries screen with filters, bulk actions and the entry viewer.","3":"Settings: spam protection, rate limiting, uploads and privacy."}},"plugin_section":[],"plugin_tags":[130308,358,5887,2253,30663],"plugin_category":[],"plugin_contributors":[289385],"plugin_business_model":[],"class_list":["post-386582","plugin","type-plugin","status-publish","hentry","plugin_tags-conditional-logic","plugin_tags-contact-form","plugin_tags-file-upload","plugin_tags-form-builder","plugin_tags-multi-step-form","plugin_contributors-usptechsolution","plugin_committers-usptechsolution"],"banners":{"banner":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/banner-772x250.png?rev=3772284","banner_2x":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/banner-1544x500.png?rev=3772284","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/icon-128x128.png?rev=3772284","icon_2x":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/icon-256x256.png?rev=3772284","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/screenshot-1.png?rev=3772284","caption":"Visual builder with field palette, canvas and field settings."},{"src":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/screenshot-2.png?rev=3772284","caption":"Entries screen with filters, bulk actions and the entry viewer."},{"src":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/screenshot-3.png?rev=3772284","caption":"Settings: spam protection, rate limiting, uploads and privacy."},{"src":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/screenshot-4.png?rev=3772284","caption":""},{"src":"https:\/\/ps.w.org\/techsolution-form-studio\/assets\/screenshot-5.png?rev=3772284","caption":""}],"raw_content":"<!--section=description-->\n<p>TechSolution Form Studio lets you build contact forms, job applications, surveys, registrations and feedback forms in a visual builder, then manage every submission from your dashboard. Every feature described here is included in this plugin and works without a license key.<\/p>\n\n<h4>Builder<\/h4>\n\n<ul>\n<li>Drag-and-drop canvas with live preview at desktop, tablet and mobile widths.<\/li>\n<li>Undo \/ redo, a searchable form outline, field duplication and keyboard save (Ctrl\/Cmd + S).<\/li>\n<li>Starter templates: contact, job application with CV upload, feedback &amp; rating, and event RSVP with conditional questions.<\/li>\n<li>Theme presets plus controls for colors, sizes, spacing, corner radius, shadows and button alignment.<\/li>\n<li>Import and export forms as JSON.<\/li>\n<\/ul>\n\n<h4>Fields<\/h4>\n\n<ul>\n<li>Text, email, paragraph, number, phone, date, time, website, hidden and CNIC \/ Form-B fields.<\/li>\n<li>Dropdown, radio buttons, checkboxes, and a searchable country \/ nationality list (249 countries and territories).<\/li>\n<li>File upload with allowed extensions and size limits. Files get random names, are blocked from direct access and are downloaded by administrators from the entry screen.<\/li>\n<li>Star rating (3, 5, 7 or 10 stars), rating slider and a terms \/ privacy consent checkbox.<\/li>\n<li>Headings, paragraphs and lists for instructions.<\/li>\n<li>Multi-step forms with a progress bar and per-step validation.<\/li>\n<\/ul>\n\n<h4>Logic and submissions<\/h4>\n\n<ul>\n<li>Conditional logic: show or hide fields when ALL or ANY rules match. Rules are checked again on the server, so hidden fields never block a submission.<\/li>\n<li>Server-side validation for every field type, including allowed options, number ranges, dates and uploads.<\/li>\n<li>Entries screen with search, date filters, read \/ unread \/ starred status, notes, bulk actions and an entry viewer.<\/li>\n<li>Export entries to CSV, Excel or a print-ready PDF report, with the columns you choose.<\/li>\n<li>Admin notifications with merge tags such as <code>{all_fields}<\/code>, <code>{form_title}<\/code>, <code>{entry_id}<\/code> and <code>{field:your_field_key}<\/code>, plus submitter auto-replies (<code>{form_title}<\/code>, <code>{entry_id}<\/code> and <code>{date}<\/code>; submitted answers are never echoed back).<\/li>\n<li>Redirect after submission, submission limits, closing dates and login-only forms.<\/li>\n<li>Webhooks that send each submission as JSON to an address you choose (for example Zapier, Make or n8n), with an optional HMAC signature.<\/li>\n<\/ul>\n\n<h4>Spam protection and privacy<\/h4>\n\n<ul>\n<li>Honeypot and time-based bot checks, IP rate limiting, an IP block list and blocked keywords. These work without any external service.<\/li>\n<li>Optional Google reCAPTCHA (v2 or v3) or Cloudflare Turnstile. See \"External services\" below.<\/li>\n<li>Choose whether IP addresses and user agents are stored, and automatically delete entries after a number of days.<\/li>\n<li>Submissions are included in WordPress's Export Personal Data and Erase Personal Data tools, matched by email address.<\/li>\n<li>Suggested privacy policy text is added under Settings \u2192 Privacy.<\/li>\n<\/ul>\n\n<h4>Embedding<\/h4>\n\n<ul>\n<li>\"Form Studio Form\" block for the block editor.<\/li>\n<li>Shortcode: <code>[tsfs_form id=\"1\"]<\/code>. Add <code>title=\"false\"<\/code> to hide the form title.<\/li>\n<\/ul>\n\n<h4>Pro add-on<\/h4>\n\n<p>TechSolution Form Studio Pro is a separate plugin, sold and distributed outside WordPress.org, that adds more field types: complete address with country, province and city lists, international phone with per-country formats, digital signature, calculations, payment details and an admission application block. This plugin does not contain, install or unlock any of that code, and nothing in this plugin is limited without it.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin does not contact any external service unless you turn one on in Form Studio \u2192 Settings or in a form's settings.<\/p>\n\n<h4>Google reCAPTCHA (optional)<\/h4>\n\n<p>Used to check that a form submission comes from a person, when you select reCAPTCHA v2 or v3 as the anti-spam provider and enter your keys.<\/p>\n\n<ul>\n<li>When a page shows a form, the visitor's browser loads the reCAPTCHA script from https:\/\/www.google.com\/recaptcha\/api.js. Google receives the visitor's IP address, browser information and the interaction data Google uses for verification.<\/li>\n<li>When the form is submitted, your site sends the verification token, your secret key and the visitor's IP address to https:\/\/www.google.com\/recaptcha\/api\/siteverify.<\/li>\n<li>The service is provided by Google LLC. <a href=\"https:\/\/policies.google.com\/terms\">Terms of Service<\/a>, <a href=\"https:\/\/policies.google.com\/privacy\">Privacy Policy<\/a>.<\/li>\n<\/ul>\n\n<h4>Cloudflare Turnstile (optional)<\/h4>\n\n<p>Used to check that a form submission comes from a person, when you select Turnstile as the anti-spam provider and enter your keys.<\/p>\n\n<ul>\n<li>When a page shows a form, the visitor's browser loads the Turnstile script from https:\/\/challenges.cloudflare.com\/turnstile\/v0\/api.js. Cloudflare receives the visitor's IP address and browser information used for the challenge.<\/li>\n<li>When the form is submitted, your site sends the verification token, your secret key and the visitor's IP address to https:\/\/challenges.cloudflare.com\/turnstile\/v0\/siteverify.<\/li>\n<li>The service is provided by Cloudflare, Inc. <a href=\"https:\/\/www.cloudflare.com\/website-terms\/\">Terms of Use<\/a>, <a href=\"https:\/\/www.cloudflare.com\/privacypolicy\/\">Privacy Policy<\/a>, <a href=\"https:\/\/www.cloudflare.com\/turnstile-privacy-policy\/\">Turnstile Privacy Addendum<\/a>.<\/li>\n<\/ul>\n\n<h4>Webhooks (optional)<\/h4>\n\n<p>When you enable a webhook in a form's settings, each new submission (form title, entry ID, submitted values, submission time, and the IP address if you store it) is sent as JSON to the URL you enter. You choose this destination; its terms and privacy policy are those of the service you connect.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>In WordPress, go to Plugins \u2192 Add New, search for \"TechSolution Form Studio\", then install and activate it. You can also upload the <code>techsolution-form-studio<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Open <strong>Form Studio \u2192 Add New<\/strong> to build a form or start from a template.<\/li>\n<li>Add the <strong>Form Studio Form<\/strong> block to a page, or paste the shortcode shown in <strong>All Forms<\/strong>, for example <code>[tsfs_form id=\"1\"]<\/code>.<\/li>\n<li>Optional: configure reCAPTCHA or Turnstile, rate limits and privacy options under <strong>Form Studio \u2192 Settings<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20add%20a%20form%20to%20a%20page%3F\"><h3>How do I add a form to a page?<\/h3><\/dt>\n<dd><p>In the block editor, add the \"Form Studio Form\" block and pick the form. In other editors or widgets, use the shortcode from All Forms, for example <code>[tsfs_form id=\"1\"]<\/code>.<\/p><\/dd>\n<dt id=\"how%20does%20conditional%20logic%20work%3F\"><h3>How does conditional logic work?<\/h3><\/dt>\n<dd><p>Select a field, turn on Conditional Logic in the Field panel, and add rules based on other fields' answers. Choose whether the field is shown or hidden when all or any rules match.<\/p><\/dd>\n<dt id=\"how%20do%20i%20build%20a%20multi-step%20form%3F\"><h3>How do I build a multi-step form?<\/h3><\/dt>\n<dd><p>Add a \"Multi-Step Forms\" page break between fields. Every page break starts a new step. Visitors see a progress bar and each step is validated before moving on.<\/p><\/dd>\n<dt id=\"where%20are%20uploaded%20files%20stored%3F\"><h3>Where are uploaded files stored?<\/h3><\/dt>\n<dd><p>In <code>wp-content\/uploads\/techsolution-form-studio\/<\/code> under random file names. An <code>.htaccess<\/code> file blocks direct access on Apache and LiteSpeed (on Nginx, add an equivalent <code>deny all<\/code> rule for that folder); administrators download files from the entry screen. Executable, HTML and SVG files are always refused, and each upload is checked against the extensions you allow. Files are deleted together with their entry.<\/p><\/dd>\n<dt id=\"can%20visitors%20request%20a%20copy%20or%20deletion%20of%20their%20submissions%3F\"><h3>Can visitors request a copy or deletion of their submissions?<\/h3><\/dt>\n<dd><p>Yes. Use Tools \u2192 Export Personal Data or Tools \u2192 Erase Personal Data with the visitor's email address. Submissions containing that email address are included.<\/p><\/dd>\n<dt id=\"can%20i%20add%20custom%20css%3F\"><h3>Can I add custom CSS?<\/h3><\/dt>\n<dd><p>Use the form's Style panel for colors, sizes and layout. For anything else, add CSS in Appearance \u2192 Customize \u2192 Additional CSS (or the Site Editor's Styles panel). Each form's wrapper has the ID <code>tsfs-form-{ID}<\/code>.<\/p><\/dd>\n<dt id=\"i%20used%20%22usp%20form%20builder%22%20before.%20will%20my%20forms%20move%20over%3F\"><h3>I used \"USP Form Builder\" before. Will my forms move over?<\/h3><\/dt>\n<dd><p>Yes. On activation, forms, entries and anti-spam settings from USP Form Builder are copied into TechSolution Form Studio when its tables are still empty. Replace the old <code>[usp_form id=\"\u2026\"]<\/code> shortcodes with <code>[tsfs_form id=\"\u2026\"]<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.3.0<\/h4>\n\n<ul>\n<li>Section blocks now have a visual editor: headings, bold, italic, underline, bulleted and numbered lists, links, quotes and alignment.<\/li>\n<li>New \"Rich text only\" section type for formatted text without a heading.<\/li>\n<li>Notes written before this version keep their paragraphs and line breaks.<\/li>\n<li>Lists, headings, links and quotes in section notes keep their formatting on themes that reset list and heading styles.<\/li>\n<\/ul>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li>New Form width setting: Compact (560px), Standard (760px), Wide (960px), Extra wide (1200px), Full width, or a custom width in pixels or percent.<\/li>\n<li>New Form alignment setting: left, centre or right on the page.<\/li>\n<li>Field columns now follow the form's own width instead of the screen's, so a full-width form keeps its columns on desktop and a form in a narrow column stacks cleanly.<\/li>\n<li>Inputs, dropdowns and the country picker keep the form's own look on themes and page builders (Elementor and others) that restyle every field on the page.<\/li>\n<li>Fixed the consent text starting one line below its checkbox.<\/li>\n<li>The builder canvas and live preview show the chosen width and alignment.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>Plugin Check: all database queries are fully prepared (table names use %i placeholders), translator comments and ordered placeholders added, no direct file writes in exports, and external CAPTCHA scripts are documented as optional services.<\/li>\n<li>Fixed \"Security verification failed\" on sites with page caching (LiteSpeed Cache, WP Rocket, Cloudflare and others). Forms now fetch a fresh security token just before submitting.<\/li>\n<li>Admin screens now use the full width of the dashboard (up to 1640px), so tables show every column, including actions.<\/li>\n<li>Redesigned Settings: a section menu, clear setting rows with plain-language descriptions, a status summary and a sticky Save bar.<\/li>\n<li>Consistent page headers on Forms, Submissions and Settings.<\/li>\n<li>Builder: tablet and mobile previews now narrow the canvas correctly, even when a custom form width is set; the desktop canvas follows the form's real width.<\/li>\n<li>Settings and submission counts use correct singular and plural wording.<\/li>\n<li>The view counter only counts forms that exist.<\/li>\n<\/ul>\n\n<h4>2.0.1<\/h4>\n\n<ul>\n<li>Uploaded files get random names, are blocked from direct access and are deleted with their entry.<\/li>\n<li>HTML, SVG and XML uploads are always refused.<\/li>\n<li>Formatting of add-on content blocks is kept when the add-on is inactive.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>Renamed from USP Form Builder to TechSolution Form Studio, with a new slug, text domain and code prefix. Existing forms, entries and settings are migrated automatically.<\/li>\n<li>File upload, star rating, rating slider, consent, country \/ nationality and multi-step forms are now included for everyone.<\/li>\n<li>New \"Form Studio Form\" block.<\/li>\n<li>New privacy controls: optional IP and user agent storage, automatic entry deletion, and WordPress personal data export \/ erasure support.<\/li>\n<li>Conditional logic and choice answers are now validated on the server.<\/li>\n<li>reCAPTCHA v3 tokens are requested at submission time.<\/li>\n<li>Removed the custom CSS box. Use Additional CSS in the Customizer or Site Editor instead.<\/li>\n<li>All scripts and styles are loaded with the WordPress enqueue functions and only on pages that show a form.<\/li>\n<\/ul>","raw_excerpt":"Drag-and-drop form builder with conditional logic, multi-step forms, file uploads, ratings, entries management, exports and spam protection.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/386582","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=386582"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/usptechsolution"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=386582"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=386582"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=386582"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=386582"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=386582"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=386582"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}