{"id":266909,"date":"2025-12-29T14:37:59","date_gmt":"2025-12-29T14:37:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/maxtdesign-pdf-viewer\/"},"modified":"2025-12-29T14:38:02","modified_gmt":"2025-12-29T14:38:02","slug":"maxtdesign-pdf-viewer","status":"publish","type":"plugin","link":"https:\/\/os.wordpress.org\/plugins\/maxtdesign-pdf-viewer\/","author":23163067,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"6.4","requires_php":"8.1","requires_plugins":null,"header_name":"MaxtDesign PDF Viewer","header_author":"MaxtDesign","header_description":"The fastest PDF viewer for WordPress. Sub-200ms load, zero layout shift, server-side preview extraction.","assets_banners_color":"4a0c79","last_updated":"2025-12-29 14:38:02","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/github.com\/sponsors\/MaxtDesign","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/maxtdesign-pdf-viewer\/","header_author_uri":"https:\/\/maxtdesign.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":134,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"slaacr","date":"2025-12-29 14:38:02"}},"upgrade_notice":{"1.0.0":"<p>Initial release of MaxtDesign PDF Viewer.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3429163,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3429163,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3429163,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3429163,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":{"maxtdesign\/pdf-viewer":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"maxtdesign\/pdf-viewer","version":"1.0.0","title":"PDF Viewer","category":"embed","icon":"pdf","description":"Embed PDFs with instant preview and zero layout shift.","keywords":["pdf","document","embed","viewer","file"],"textdomain":"maxtdesign-pdf-viewer","attributes":{"pdfId":{"type":"number","default":0},"pdfUrl":{"type":"string","default":""},"width":{"type":"string","default":"100%"},"loadBehavior":{"type":"string","default":"click","enum":["click","visible","immediate"]},"showToolbar":{"type":"boolean","default":true},"showDownload":{"type":"boolean","default":true},"showPrint":{"type":"boolean","default":true},"showFullscreen":{"type":"boolean","default":true}},"supports":{"align":["wide","full"],"html":false,"anchor":true,"className":true,"spacing":{"margin":true,"padding":false}},"editorScript":"file:.\/build\/index.js","editorStyle":"file:.\/build\/index.css","render":"file:.\/render.php"}},"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3429163,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3429163,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3429163,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3429163,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3429163,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"PDF viewer with preview image and activation button","2":"Full interactive viewer with toolbar","3":"Gutenberg block in the editor","4":"Settings page - General tab","5":"Settings page - Server Info tab","6":"Settings page - Tools tab"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[8470,230,148076,1764,747],"plugin_category":[50,56],"plugin_contributors":[250063],"plugin_business_model":[],"class_list":["post-266909","plugin","type-plugin","status-publish","hentry","plugin_tags-document","plugin_tags-embed","plugin_tags-gutenberg","plugin_tags-pdf","plugin_tags-viewer","plugin_category-media","plugin_category-social-and-sharing","plugin_contributors-slaacr","plugin_committers-slaacr"],"banners":{"banner":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/banner-772x250.png?rev=3429163","banner_2x":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/banner-1544x500.png?rev=3429163","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/icon-128x128.png?rev=3429163","icon_2x":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/icon-256x256.png?rev=3429163","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/screenshot-1.png?rev=3429163","caption":"PDF viewer with preview image and activation button"},{"src":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/screenshot-2.png?rev=3429163","caption":"Full interactive viewer with toolbar"},{"src":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/screenshot-3.png?rev=3429163","caption":"Gutenberg block in the editor"},{"src":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/screenshot-4.png?rev=3429163","caption":"Settings page - General tab"},{"src":"https:\/\/ps.w.org\/maxtdesign-pdf-viewer\/assets\/screenshot-5.png?rev=3429163","caption":"Settings page - Server Info tab"}],"raw_content":"<!--section=description-->\n<p>MaxtDesign PDF Viewer is a performance-focused PDF embedding solution for WordPress. Unlike other PDF plugins that load heavy JavaScript libraries upfront, this plugin uses a smart lazy-loading approach that keeps your pages fast.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Instant Preview - Server-generated WebP preview images display immediately<\/li>\n<li>Zero Layout Shift - CSS aspect-ratio reserves exact space before content loads<\/li>\n<li>Lazy Loading - Full PDF.js viewer loads only when needed<\/li>\n<li>Gutenberg Block - Native block editor integration<\/li>\n<li>Shortcode Support - Works in classic editor and widgets<\/li>\n<li>Keyboard Navigation - Full keyboard and screen reader accessibility<\/li>\n<li>Mobile Optimized - Touch gestures for page navigation and zoom<\/li>\n<\/ul>\n\n<h4>Performance<\/h4>\n\n<ul>\n<li>Initial page load: &lt; 10KB JavaScript<\/li>\n<li>First paint: &lt; 200ms<\/li>\n<li>Full viewer: Loads on-demand<\/li>\n<li>Preview images: Optimized WebP format<\/li>\n<\/ul>\n\n<h4>How It Works<\/h4>\n\n<ol>\n<li>Upload a PDF to your media library<\/li>\n<li>The plugin automatically extracts the first page as a WebP preview<\/li>\n<li>Insert the PDF using the Gutenberg block or shortcode<\/li>\n<li>Visitors see an instant preview image<\/li>\n<li>Clicking \"View Document\" loads the interactive PDF.js viewer<\/li>\n<\/ol>\n\n<h4>Requirements<\/h4>\n\n<p>For automatic preview generation, your server needs one of:<\/p>\n\n<ul>\n<li>ImageMagick with PDF support (recommended)<\/li>\n<li>Ghostscript<\/li>\n<\/ul>\n\n<p>The plugin will detect available options and use the best method automatically.<\/p>\n\n<h4>Shortcode Usage<\/h4>\n\n<p>[pdf_viewer id=\"123\"]<\/p>\n\n<p>Attributes:<\/p>\n\n<ul>\n<li>id (required) - Attachment ID of the PDF<\/li>\n<li>width - CSS width value (default: 100%)<\/li>\n<li>load - When to load viewer: click, visible, immediate (default: click)<\/li>\n<li>toolbar - Show toolbar: true\/false (default: true)<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>This plugin:<\/p>\n\n<ul>\n<li>Does not collect any personal data<\/li>\n<li>Does not send data to external services<\/li>\n<li>Stores preview images locally on your server<\/li>\n<li>Uses PDF.js library loaded from your own server<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to <code>\/wp-content\/plugins\/maxtdesign-pdf-viewer\/<\/code><\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress<\/li>\n<li>Go to Settings \u2192 PDF Viewer to configure options<\/li>\n<li>Check the Server Info tab to verify your server can generate previews<\/li>\n<\/ol>\n\n<h4>From WordPress Admin<\/h4>\n\n<ol>\n<li>Go to Plugins \u2192 Add New<\/li>\n<li>Search for \"MaxtDesign PDF Viewer\"<\/li>\n<li>Click Install Now, then Activate<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='why%20aren%27t%20previews%20being%20generated%3F'><h3>Why aren't previews being generated?<\/h3><\/dt>\n<dd><p>Preview generation requires ImageMagick or Ghostscript on your server. Go to Settings \u2192 PDF Viewer \u2192 Server Info to check your server capabilities. Many shared hosts have ImageMagick pre-installed.<\/p><\/dd>\n<dt id='can%20i%20regenerate%20previews%20for%20existing%20pdfs%3F'><h3>Can I regenerate previews for existing PDFs?<\/h3><\/dt>\n<dd><p>Yes! Go to Settings \u2192 PDF Viewer \u2192 Tools and click \"Process Unprocessed PDFs\" to generate previews for all PDFs in your media library.<\/p><\/dd>\n<dt id='how%20do%20i%20change%20the%20preview%20quality%3F'><h3>How do I change the preview quality?<\/h3><\/dt>\n<dd><p>Go to Settings \u2192 PDF Viewer and change the \"Preview Quality\" setting. Higher quality means sharper previews but larger file sizes.<\/p><\/dd>\n<dt id='does%20this%20work%20with%20page%20builders%3F'><h3>Does this work with page builders?<\/h3><\/dt>\n<dd><p>Yes! Use the shortcode [pdf_viewer id=\"123\"] in any page builder that supports shortcodes. The Gutenberg block works natively in the WordPress editor.<\/p><\/dd>\n<dt id='is%20it%20accessible%3F'><h3>Is it accessible?<\/h3><\/dt>\n<dd><p>Yes! The viewer includes full keyboard navigation, ARIA labels, screen reader announcements, and respects reduced motion preferences.<\/p><\/dd>\n<dt id='can%20visitors%20download%20or%20print%20the%20pdf%3F'><h3>Can visitors download or print the PDF?<\/h3><\/dt>\n<dd><p>Yes, the toolbar includes download, print, and fullscreen buttons. You can disable these in the block settings or plugin options.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Gutenberg block for easy PDF embedding<\/li>\n<li>Shortcode support for classic editor<\/li>\n<li>Automatic WebP preview generation<\/li>\n<li>PDF.js integration for full viewing<\/li>\n<li>Keyboard navigation and accessibility<\/li>\n<li>Admin settings page<\/li>\n<li>Bulk processing tool<\/li>\n<li>Cache management<\/li>\n<\/ul>","raw_excerpt":"The fastest PDF viewer for WordPress. Sub-200ms load times, zero layout shift, and a beautiful reading experience.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/266909","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=266909"}],"author":[{"embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/slaacr"}],"wp:attachment":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=266909"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=266909"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=266909"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=266909"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=266909"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=266909"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}