{"id":265098,"date":"2025-12-06T16:22:28","date_gmt":"2025-12-06T16:22:28","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/quick-qr-generator\/"},"modified":"2025-12-06T16:58:14","modified_gmt":"2025-12-06T16:58:14","slug":"conductor-qr-generator","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/conductor-qr-generator\/","author":23410821,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.5.3","stable_tag":"1.5.3","tested":"6.9.4","requires":"5.5","requires_php":"7.4","requires_plugins":null,"header_name":"Conductor QR Generator","header_author":"Conductor Digital","header_description":"Generate QR codes for secure direct file downloads using short URLs with branding and analytics.","assets_banners_color":"335d7d","last_updated":"2025-12-06 16:58:14","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/conductordigital.dev\/conductor-qr-generator","header_author_uri":"https:\/\/conductordigital.dev","rating":0,"author_block_rating":0,"active_installs":0,"downloads":155,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.5.3":{"tag":"1.5.3","author":"conductordigital","date":"2025-12-06 16:58:14"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3413124,"resolution":"128x128","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3413124,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3413124,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.5.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3413124,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3413124,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3413124,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3413124,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3413124,"resolution":"5","location":"assets","locale":""}},"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[156433,24613,7312,1373,137],"plugin_category":[],"plugin_contributors":[251789],"plugin_business_model":[],"class_list":["post-265098","plugin","type-plugin","status-publish","hentry","plugin_tags-document-sharing","plugin_tags-file-download","plugin_tags-qr","plugin_tags-qr-code","plugin_tags-short-url","plugin_contributors-conductordigital","plugin_committers-conductordigital"],"banners":{"banner":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/banner-772x250.png?rev=3413124","banner_2x":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/banner-1544x500.png?rev=3413124","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/icon-128x128.png?rev=3413124","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/screenshot-1.png?rev=3413124","caption":""},{"src":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/screenshot-2.png?rev=3413124","caption":""},{"src":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/screenshot-3.png?rev=3413124","caption":""},{"src":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/screenshot-4.png?rev=3413124","caption":""},{"src":"https:\/\/ps.w.org\/conductor-qr-generator\/assets\/screenshot-5.png?rev=3413124","caption":""}],"raw_content":"<!--section=description-->\n<p>Conductor QR Generator allows you to upload approved files and instantly create:<\/p>\n\n<ul>\n<li>A short download URL (example: \/q\/AbC123)  <\/li>\n<li>A printable QR code image  <\/li>\n<\/ul>\n\n<p>When scanned or opened, the file is <strong>automatically downloaded<\/strong> without any preview page.<\/p>\n\n<p>This plugin is ideal for:<\/p>\n\n<ul>\n<li>Construction &amp; engineering documentation  <\/li>\n<li>Training centers &amp; institutes  <\/li>\n<li>Secure document delivery to clients or authorities  <\/li>\n<li>Any use case where you want a <strong>clean QR \u2192 instant file download<\/strong> flow<\/li>\n<\/ul>\n\n<p>A live demo of the plugin working is available here:<br \/>\nhttps:\/\/conductordigital.dev\/qr-system\/<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Frontend upload via shortcode <code>[conductor_qr_generator]<\/code><\/li>\n<li>Auto-created QR upload page at <code>\/qr-system<\/code><\/li>\n<li>Instant QR + short URL generation<\/li>\n<li>Forced file download (no preview, no extra clicks)<\/li>\n<li>Download counter per QR<\/li>\n<li>Branding options (logo + footer text under the QR)<\/li>\n<li>Admin dashboard with statistics and bulk delete<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin uses a third-party QR code API as a <strong>fallback<\/strong> when generating QR images:<\/p>\n\n<p><strong>Service<\/strong>: <code>https:\/\/api.qrserver.com\/<\/code> (GoQR \/ QR Server API)<br \/>\n<strong>Purpose<\/strong>:<br \/>\nUsed to obtain a base PNG QR code image for the short URL (<code>\/q\/&lt;token&gt;<\/code>). The plugin then optionally composites this QR with a caption and branding.<\/p>\n\n<p><strong>Data sent<\/strong>:<br \/>\nOnly the <strong>short URL<\/strong> is sent as the <code>data<\/code> parameter in the QR request, for example:<\/p>\n\n<pre><code>https:\/\/api.qrserver.com\/v1\/create-qr-code\/?size=300x300&amp;data=https%3A%2F%2Fexample.com%2Fq%2FAbC123%2F\n<\/code><\/pre>\n\n<p>No personal data or user-identifying information is transmitted.<\/p>\n\n<p><strong>Terms and Privacy<\/strong>:<\/p>\n\n<ul>\n<li>Terms: https:\/\/goqr.me\/api\/doc\/create-qr-code\/  <\/li>\n<li>Privacy: https:\/\/goqr.me\/privacy\/<\/li>\n<\/ul>\n\n<p>If the external API is unreachable, the plugin falls back to a plain QR URL and continues to function.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP via <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>, or copy the folder into <code>wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate <strong>Conductor QR Generator<\/strong> from <strong>Plugins \u2192 Installed Plugins<\/strong><\/li>\n<li><p>Visit <code>\/qr-system<\/code> on the frontend<br \/>\nOR insert this shortcode on any page:<\/p>\n\n<p>[conductor_qr_generator]<\/p><\/li>\n<li><p>Go to <strong>Conductor QR Generator \u2192 Branding Settings<\/strong> to customize your logo and footer text.<\/p><\/li>\n<li>Use the admin <strong>QR Statistics<\/strong> page to view usage and bulk-delete entries (and their files).<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='how%20does%20it%20work%3F'><h3>How does it work?<\/h3><\/dt>\n<dd><ol>\n<li>A user opens the QR upload page (e.g., <code>\/qr-system<\/code>) or any page where you placed the shortcode.  <\/li>\n<li>They upload a file (PDF, DOCX, image, etc.).  <\/li>\n<li>The plugin saves the file to a protected folder and generates:<br \/>\n\n<ul>\n<li>A random token (e.g. <code>AbC123<\/code>)  <\/li>\n<li>A short URL like <code>\/q\/AbC123<\/code>  <\/li>\n<li>A QR code that points to that URL, with your branding at the bottom  <\/li>\n<\/ul><\/li>\n<li>When someone opens the short URL or scans the QR, the plugin <strong>forces a direct download<\/strong> of the file.<\/li>\n<\/ol><\/dd>\n<dt id='which%20file%20types%20are%20allowed%3F'><h3>Which file types are allowed?<\/h3><\/dt>\n<dd><p>Allowed extensions by default:<\/p>\n\n<ul>\n<li>pdf, doc, docx, xls, xlsx, ppt, pptx  <\/li>\n<li>txt, rtf  <\/li>\n<li>jpg, jpeg, png, gif, bmp, webp  <\/li>\n<li>zip, rar, 7z  <\/li>\n<li>csv  <\/li>\n<\/ul>\n\n<p>Dangerous file types like <code>.php<\/code> or <code>.js<\/code> are blocked.<\/p><\/dd>\n<dt id='where%20are%20the%20files%20stored%3F'><h3>Where are the files stored?<\/h3><\/dt>\n<dd><p>Files are stored locally in:<\/p>\n\n<pre><code>\/wp-content\/uploads\/conductor-qr-generator\/\n<\/code><\/pre><\/dd>\n<dt id='are%20uploaded%20files%20public%3F'><h3>Are uploaded files public?<\/h3><\/dt>\n<dd><p>No. Files are only accessible through the <strong>secure short URL generated by the plugin<\/strong>. There is no public browsing of the upload directory in the plugin itself, and the file names are not predictable by URL.<\/p><\/dd>\n<dt id='can%20i%20customize%20the%20text%20under%20the%20qr%20code%3F'><h3>Can I customize the text under the QR code?<\/h3><\/dt>\n<dd><p>Yes. When generating a QR, you can choose between:<\/p>\n\n<ul>\n<li>Custom text (e.g. equipment code or document title)  <\/li>\n<li>File name  <\/li>\n<li>No caption  <\/li>\n<\/ul>\n\n<p>This caption, along with the configured footer \/ brand text, will appear under the QR.<\/p><\/dd>\n<dt id='does%20this%20plugin%20track%20or%20send%20any%20personal%20data%3F'><h3>Does this plugin track or send any personal data?<\/h3><\/dt>\n<dd><p>No. The plugin does not send any personal data to external services. It only stores:<\/p>\n\n<ul>\n<li>The file itself  <\/li>\n<li>Original file name  <\/li>\n<li>MIME type  <\/li>\n<li>File size  <\/li>\n<li>Created date\/time  <\/li>\n<li>Download count  <\/li>\n<li>Optional caption<\/li>\n<\/ul><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.3<\/h4>\n\n<ul>\n<li>Updated file storage paths to \/wp-content\/uploads\/conductor-qr-generator\/.<\/li>\n<li>Renamed remaining prefixes to match the plugin slug (conductor_qr_generator_*).<\/li>\n<li>Updated shortcode to [conductor_qr_generator] and synchronized auto-created page + docs.<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Updated plugin name to \"Conductor QR Generator\"<\/li>\n<li>Improved documentation and external service disclosure<\/li>\n<li>Refactored inline JS\/CSS to use proper enqueue methods<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Added \u201cVisit QR Page\u201d inside admin menu<\/li>\n<li>Improved onboarding usability<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Added branding settings (logo + footer text)<\/li>\n<li>Replaced hard-coded branding with dynamic options<\/li>\n<li>Renamed plugin for WordPress.org release<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Initial production release<\/li>\n<\/ul>","raw_excerpt":"Generate secure QR codes with short URLs for instant, forced file downloads with branding and admin statistics.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/265098","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=265098"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/conductordigital"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=265098"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=265098"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=265098"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=265098"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=265098"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=265098"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}