[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fUa97Ibf2xUcGTW-q6bCAKt47-YpQqO1eUHXGdlp2nN0":3,"$f7AIBKv3OfIYbSw6-aQmS2JeUk_j1RUPMhxlKHOLSiQA":224,"$fOENzZeKBCQMCJaQ02WFGX0htrFCjJPVAXtCZERr5arc":229},{"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":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":38,"analysis":141,"fingerprints":208},"opengraph-fallback-embed","OpenGraph Fallback Embed","1.3.7","Gary Pendergast","https:\u002F\u002Fprofiles.wordpress.org\u002Fpento\u002F","\u003Cp>OpenGraph Fallback Embed adds a custom Gutenberg block and an auto-embed fallback that renders rich link cards using OpenGraph metadata from any URL.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>OpenGraph Embed block\u003C\u002Fstrong> — Paste any URL to embed it as a styled card showing the page’s title, description, image, and site name.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Auto-embed fallback\u003C\u002Fstrong> — When WordPress can’t find an oEmbed provider for a URL pasted on its own line, this plugin automatically fetches the page’s OpenGraph tags and renders a card instead of a plain link.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Graceful degradation\u003C\u002Fstrong> — Falls back to Twitter Card meta tags, then to HTML \u003Ccode>\u003Ctitle>\u003C\u002Fcode> and \u003Ccode>\u003Cmeta name=\"description\">\u003C\u002Fcode> when OpenGraph tags are missing.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Transient caching\u003C\u002Fstrong> — Fetched metadata is cached for 7 days to minimise external requests.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cp>The source code for this plugin, including unminified JavaScript and CSS, is available on GitHub:\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpento\u002Fopengraph-fallback-embed\" rel=\"nofollow ugc\">OpenGraph Fallback Embed on GitHub\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>The plugin uses \u003Ca href=\"https:\u002F\u002Fdeveloper.wordpress.org\u002Fblock-editor\u002Freference-guides\u002Fpackages\u002Fpackages-scripts\u002F\" rel=\"nofollow ugc\">@wordpress\u002Fscripts\u003C\u002Fa> for building. Source files are in the \u003Ccode>src\u002F\u003C\u002Fcode> directory. See the repository README for build instructions.\u003C\u002Fp>\n","Provides an embed block and auto-embed fallback based on a site's OpenGraph tags when no other embed handler matches the URL.",0,84,"2026-03-25T23:57:00.000Z","7.0","6.3","7.4",[18,19,20,21,22],"block","card","embed","link","opengraph","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fopengraph-fallback-embed.1.3.7.zip",100,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"pento",4,30510,89,30,86,"2026-05-19T21:14:39.169Z",[39,57,80,102,117],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":11,"downloaded":47,"rating":11,"num_ratings":11,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":16,"tags":51,"homepage":23,"download_link":55,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":56},"simple-link-embed","Simple Link Embed","1.0.1","MONOKURO DESIGN","https:\u002F\u002Fprofiles.wordpress.org\u002Fmonokurodesign\u002F","\u003Cp>Simple Link Embed automatically fetches OGP data from any URL and displays it as a beautiful blog card in your posts. Just paste a link and the plugin retrieves the title, description, image, and site name automatically.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>WordPress Block (Gutenberg) Support\u003C\u002Fstrong> – Fully compatible with modern block editor\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic OGP Fetching\u003C\u002Fstrong> – Just enter a URL to automatically retrieve OGP information\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Caching System\u003C\u002Fstrong> – 7-day cache for fast performance\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Responsive Design\u003C\u002Fstrong> – Mobile-friendly layout\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Customization\u003C\u002Fstrong> – Customize with CSS variables\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No JavaScript Library Dependencies\u003C\u002Fstrong> – Lightweight, no JavaScript libraries required\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin uses the following external services:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\n\u003Cp>\u003Cstrong>YouTube oEmbed API\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Service URL: \u003Ccode>https:\u002F\u002Fwww.youtube.com\u002Foembed\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Purpose: Retrieve metadata for YouTube URLs (title, author, thumbnail).\u003C\u002Fli>\n\u003Cli>Data sent: The selected YouTube URL.\u003C\u002Fli>\n\u003Cli>Terms of Service: https:\u002F\u002Fwww.youtube.com\u002Ft\u002Fterms\u003C\u002Fli>\n\u003Cli>Privacy Policy: https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>YouTube thumbnail image service\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Service URL: \u003Ccode>https:\u002F\u002Fi.ytimg.com\u002Fvi\u002F{video_id}\u002Fhqdefault.jpg\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Purpose: Fallback thumbnail retrieval for YouTube video cards.\u003C\u002Fli>\n\u003Cli>Data sent: Video ID extracted from the selected YouTube URL.\u003C\u002Fli>\n\u003Cli>Terms of Service: https:\u002F\u002Fwww.youtube.com\u002Ft\u002Fterms\u003C\u002Fli>\n\u003Cli>Privacy Policy: https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Google Analytics 4 (optional)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Service URL: \u003Ccode>https:\u002F\u002Fwww.google-analytics.com\u002F\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Purpose: Send link card click events when tracking is enabled in plugin settings.\u003C\u002Fli>\n\u003Cli>Data sent: \u003Ccode>link_url\u003C\u002Fcode>, \u003Ccode>card_title\u003C\u002Fcode>, \u003Ccode>link_domain\u003C\u002Fcode>, \u003Ccode>page_title\u003C\u002Fcode>, \u003Ccode>page_url\u003C\u002Fcode>, and the configured GA4 measurement ID.\u003C\u002Fli>\n\u003Cli>When sent: Only when the site owner enables tracking in this plugin and a GA4 \u003Ccode>gtag.js\u003C\u002Fcode> setup already exists on the site.\u003C\u002Fli>\n\u003Cli>Terms of Service: https:\u002F\u002Fmarketingplatform.google.com\u002Fabout\u002Fanalytics\u002Fterms\u002F\u003C\u002Fli>\n\u003Cli>Privacy Policy: https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Security\u003C\u002Fh3>\n\u003Cp>If you find a security issue, please report it privately:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Contact: contact@monokuro.design\u003C\u002Fli>\n\u003C\u002Ful>\n","Create beautiful blog cards by simply entering a URL. Automatically fetches OGP data and displays stylish link previews in the block editor.",181,"2026-03-04T05:52:00.000Z","6.9.4","5.8",[18,52,20,53,54],"blog-card","link-card","ogp","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-link-embed.1.0.1.zip","2026-03-15T15:16:48.613Z",{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":65,"downloaded":66,"rating":25,"num_ratings":67,"last_updated":68,"tested_up_to":14,"requires_at_least":69,"requires_php":70,"tags":71,"homepage":76,"download_link":77,"security_score":78,"vuln_count":67,"unpatched_count":11,"last_vuln_date":79,"fetched_at":27},"simple-blog-card","Simple Blog Card","2.38","Katsushi Kawamori","https:\u002F\u002Fprofiles.wordpress.org\u002Fkatsushi-kawamori\u002F","\u003Ch4>Blog card\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Generated with shortcode\u003C\u002Fli>\n\u003Cli>Generated with block\u003C\u002Fli>\n\u003Cli>Can specify the number of characters displayed in the description.\u003C\u002Fli>\n\u003Cli>Displays an ogp image.\u003C\u002Fli>\n\u003Cli>Can specify the size of the displayed ogp image.\u003C\u002Fli>\n\u003Cli>Can change the title and description.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Warning\u003C\u002Fh4>\n\u003Cp>A redirect loop occurs when all three of the following factors are met:\u003Cbr \u002F>\n* When two sites with different domains embed “Siｍple Blog Card” for each other on their top pages.\u003Cbr \u002F>\n* When two sites with different domains are on the same server (same IP address).\u003Cbr \u002F>\n* When the ”Simple Blog Card” caches of two sites on different domains are empty.\u003C\u002Fp>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FxTicX7DiGjU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch4>Customize\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Template files allow for flexible \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkatsushi-kawamori\u002FSimple-Blog-Card-Templates\" rel=\"nofollow ugc\">customization\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>The default template file is template\u002Fsimpleblogcard-template.php. Using this as a reference, you can specify a separate template file using the filters below.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode>\u002F** ==================================================\n * Filter for template file.\n *\n *\u002F\nadd_filter(\n    'simple_blog_card_generate_template_file',\n    function () {\n        $wp_uploads = wp_upload_dir();\n        $upload_dir = wp_normalize_path( $wp_uploads['basedir'] );\n        $upload_dir = untrailingslashit( $upload_dir );\n        return $upload_dir . '\u002Ftmp\u002Fsimpleblogcard-template.php';\n    },\n    10,\n    1\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cul>\n\u003Cli>CSS files can be set separately. Please see the filters below.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode>\u002F** ==================================================\n * Filter for CSS file.\n *\n *\u002F\nadd_filter(\n    'simple_blog_card_css_url',\n    function () {\n        $wp_uploads = wp_upload_dir();\n        $upload_url = $wp_uploads['baseurl'];\n        if ( is_ssl() ) {\n            $upload_url = str_replace( 'http:', 'https:', $upload_url );\n        }\n        $upload_url = untrailingslashit( $upload_url );\n        return $upload_url . '\u002Ftmp\u002Fsimpleblogcard.css';\n    },\n    10,\n    1\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Get OGP and display blog card.",3000,42287,3,"2026-03-29T21:54:00.000Z","6.6","8.0",[18,72,73,74,75],"blogcard","external-link","internal-link","linkcard","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsimple-blog-card\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-blog-card.2.38.zip",96,"2026-02-14 00:00:00",{"slug":81,"name":82,"version":83,"author":84,"author_profile":85,"description":86,"short_description":87,"active_installs":88,"downloaded":89,"rating":78,"num_ratings":90,"last_updated":91,"tested_up_to":92,"requires_at_least":93,"requires_php":94,"tags":95,"homepage":99,"download_link":100,"security_score":101,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"bookmark-card","Bookmark Card","2.2.1","George Mamadashvili","https:\u002F\u002Fprofiles.wordpress.org\u002Fmamaduka\u002F","\u003Cp>Bookmark Card will help you to display external links in a rich format. Just like, when you share links on Facebook or Twitter.\u003C\u002Fp>\n","Turn any URL into a beautiful preview card.",700,10787,5,"2024-07-16T10:41:00.000Z","6.6.5","6.4","5.6",[18,96,97,19,98],"blocks","bookmard","link-preview","https:\u002F\u002Fgithub.com\u002FMamaduka\u002Fbookmark-card","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbookmark-card.2.2.1.zip",92,{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":11,"downloaded":110,"rating":11,"num_ratings":11,"last_updated":111,"tested_up_to":49,"requires_at_least":112,"requires_php":16,"tags":113,"homepage":114,"download_link":115,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":116},"wwi-blogcard","WWI Blogcard","1.0.11","whywaita","https:\u002F\u002Fprofiles.wordpress.org\u002Fwhywaita\u002F","\u003Cp>WWI Blogcard is a Gutenberg block plugin that creates visually appealing blog cards from any URL. Simply paste a URL, and the plugin automatically fetches OGP (Open Graph Protocol) information to generate a rich preview card.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Easy to use\u003C\u002Fstrong>: Just paste a URL and the blog card is automatically generated\u003C\u002Fli>\n\u003Cli>\u003Cstrong>OGP support\u003C\u002Fstrong>: Fetches title, description, and images from OGP meta tags\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Responsive design\u003C\u002Fstrong>: Cards look great on any device\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Dark mode support\u003C\u002Fstrong>: Automatic dark mode based on system preferences\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Caching\u003C\u002Fstrong>: OGP data is cached for improved performance\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Security\u003C\u002Fstrong>: SSRF protection blocks requests to private IP addresses\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Add a new “Blogcard” block in the Gutenberg editor\u003C\u002Fli>\n\u003Cli>Paste the URL you want to create a card for\u003C\u002Fli>\n\u003Cli>Click “Fetch” to retrieve OGP information\u003C\u002Fli>\n\u003Cli>The blog card is automatically generated\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Source Code\u003C\u002Fh3>\n\u003Cp>The source code for this plugin, including uncompiled JavaScript and CSS files, is available on GitHub:\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwhywaita\u002Fwwi-blogcard\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Fwhywaita\u002Fwwi-blogcard\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Building from Source\u003C\u002Fh4>\n\u003Cp>To build the plugin from source, you need Node.js and npm installed. Then run the following commands:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Clone the repository: \u003Ccode>git clone https:\u002F\u002Fgithub.com\u002Fwhywaita\u002Fwwi-blogcard.git\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Navigate to the plugin directory: \u003Ccode>cd wwi-blogcard\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Install dependencies: \u003Ccode>npm install\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Build the plugin: \u003Ccode>npm run build\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The build process uses \u003Ccode>@wordpress\u002Fscripts\u003C\u002Fcode> to compile and minify the JavaScript and CSS files from the \u003Ccode>src\u002F\u003C\u002Fcode> directory to the \u003Ccode>build\u002F\u003C\u002Fcode> directory.\u003C\u002Fp>\n","A WordPress block plugin that generates beautiful blog cards from URLs using OGP information.",209,"2026-02-23T16:29:00.000Z","6.0",[72,19,20,21,54],"https:\u002F\u002Fgithub.com\u002Fwhywaita\u002Fwwi-blogcard","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwwi-blogcard.1.0.11.zip","2026-04-06T09:54:40.288Z",{"slug":118,"name":119,"version":120,"author":121,"author_profile":122,"description":123,"short_description":124,"active_installs":125,"downloaded":126,"rating":127,"num_ratings":128,"last_updated":129,"tested_up_to":49,"requires_at_least":130,"requires_php":131,"tags":132,"homepage":137,"download_link":138,"security_score":25,"vuln_count":139,"unpatched_count":11,"last_vuln_date":140,"fetched_at":27},"pdf-embedder","PDF Embedder","4.9.3","Syed Balkhi","https:\u002F\u002Fprofiles.wordpress.org\u002Fsmub\u002F","\u003Cp>Upload PDF files and embed them directly into your site’s posts and pages. It works as simple as adding images! Your PDF files will be automatically sized to their natural size and shape. You can also specify a width and the correct height will be calculated automatically. Our PDF Embedder plugin is fully responsive, so the embedded PDF will also look perfect, on any device. Additionally, the pdf embedder will automatically resize whenever the browser dimensions change.\u003C\u002Fp>\n\u003Cp>The plugin has a unique method for embedding PDF files with the immense flexibility over the appearance of your document.\u003C\u002Fp>\n\u003Cp>The PDF viewer has Next and Previous buttons to navigate the document, and zoom buttons if some areas of a PDF file are too small for your screen.\u003C\u002Fp>\n\u003Cp>Your PDF files are embedded within your existing WordPress pages so we have full control over appearance, and all Javascript and other files are served by your own server (not by Google or any other third-party who may not be able to guarantee their own reliability). This means your PDF files will load fast, without any speed penalty.\u003C\u002Fp>\n\u003Cp>Other PDF embedder plugins insert the PDF into an ‘iframe’ which means they do not get the flexibility over sizing. Ours does not and that is an incredible benefit to the overall viewing experience across all devices.\u003C\u002Fp>\n\u003Cp>In the free plugin, there is no button for users to download the PDF, but download options are available in the Premium versions along with other awesome features.\u003C\u002Fp>\n\u003Cp>Another Premium feature are Hyperlinks in your PDF being clickable. Links in the free plugin cannot be clicked.\u003C\u002Fp>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\n\u003Cp>Once installed and Activated, click Add Media from any page or post, just like adding an image, but drag and drop a PDF file instead.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>In the Classic Editor when you insert into your post, it will appear in the editor as a ‘shortcode’ as follows:\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>[pdf-embedder url=\"https:\u002F\u002Fexample.com\u002Fwp-content\u002Fuploads\u002F2024\u002F01\u002FPlan-Summary.pdf\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>You can change the default appearance – e.g. width, and toolbar position\u002Fappearance through \u003Cstrong>Settings -> PDF Embedder\u003C\u002Fstrong> and also shortcode or block attributes.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>To override your site-wide defaults on an individual embed, see the \u003Ca href=\"https:\u002F\u002Fwp-pdf.com\u002Ffree-instructions\u002F?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin\" rel=\"nofollow ugc\">Plugin Instructions\u003C\u002Fa> for information about sizing options plus other ways to customize the shortcodes.\u003C\u002Fp>\n\u003Ch4>Premium Features\u003C\u002Fh4>\n\u003Cp>Features available in the PDF Embedder Premium versions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Download button in the toolbar\u003C\u002Fli>\n\u003Cli>Continuous scroll between pages\u003C\u002Fli>\n\u003Cli>Hyperlinks are fully functional\u003C\u002Fli>\n\u003Cli>Full screen mode\u003C\u002Fli>\n\u003Cli>Edit page number to jump straight to page\u003C\u002Fli>\n\u003Cli>Track number of downloads and views\u003C\u002Fli>\n\u003Cli>Mobile-friendly\u003C\u002Fli>\n\u003Cli>Secure option – difficult to download original PDF\u003C\u002Fli>\n\u003Cli>Removes wp-pdf.com branding\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>See \u003Ca href=\"https:\u002F\u002Fwp-pdf.com\u002F?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin\" rel=\"nofollow ugc\">wp-pdf.com\u003C\u002Fa> for details!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Mobile-friendly embedding using PDF Embedder Premium\u003C\u002Fh4>\n\u003Cp>The free version will work on most mobile browsers, but cannot position the document entirely within the screen.\u003C\u002Fp>\n\u003Cp>Our \u003Cstrong>PDF Embedder Premium\u003C\u002Fstrong> plugin solves this problem with an intelligent ‘full screen’ mode.\u003C\u002Fp>\n\u003Cp>When the document is smaller than a certain width, the document displays only as a ‘thumbnail’ with a large ‘View in Full Screen’ button for the user to click when they want to study your document.\u003C\u002Fp>\n\u003Cp>This opens up the document so it has the full focus of the mobile browser, and the user can move about the document without hitting other parts of the web page by mistake. Viewers can then Click Exit to return to the regular page.\u003C\u002Fp>\n\u003Cp>The user can also swipe continuously between all pages of the PDF which is more natural than clicking the navigation buttons to navigate.\u003C\u002Fp>\n\u003Cp>See our site \u003Ca href=\"https:\u002F\u002Fwp-pdf.com\u002Fpremium\u002F?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin\" rel=\"nofollow ugc\">wp-pdf.com\u003C\u002Fa> for more details and purchase options.\u003C\u002Fp>\n\u003Ch4>Protect your PDFs with our premium document embedder version\u003C\u002Fh4>\n\u003Cp>Our \u003Cstrong>PDF Embedder Premium\u003C\u002Fstrong> plugin on its Pro plan provides the same simple but elegant viewer as the Basic version, with the added protection that it is difficult for users to download or print the original PDF document.\u003C\u002Fp>\n\u003Cp>This means that your PDF is unlikely to be shared outside your site where you have no control over who views, prints, or shares it.\u003C\u002Fp>\n\u003Cp>Optionally, add a watermark containing any text, including the logged in user’s name or email address to discourage sharing of screenshots.\u003C\u002Fp>\n\u003Cp>See our site \u003Ca href=\"https:\u002F\u002Fwp-pdf.com\u002Fsecure\u002F?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin\" rel=\"nofollow ugc\">wp-pdf.com\u003C\u002Fa> for more details and purchase options.\u003C\u002Fp>\n\u003Ch4>PDF Thumbnails\u003C\u002Fh4>\n\u003Cp>Our \u003Cstrong>PDF Thumbnails\u003C\u002Fstrong> plugin automatically generates fixed image versions of all PDF files in your Media Library, to use on your site as you wish.\u003C\u002Fp>\n\u003Cp>You can use them as featured images in posts containing an embedded version of the PDF, or as a visual clickable link to download the PDF directly.\u003Cbr \u002F>\nIt also displays the thumbnail as the “icon” for the PDF in the Media Library, making it easy for authors to locate the PDFs they need to insert in a post.\u003C\u002Fp>\n\u003Cp>See our site \u003Ca href=\"https:\u002F\u002Fwp-pdf.com\u002Fthumbnails\u002F?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin\" rel=\"nofollow ugc\">wp-pdf.com\u002Fthumbnails\u002F\u003C\u002Fa> for more details and purchase options.\u003C\u002Fp>\n\u003Cp>With thanks to the Mozilla team for developing the underlying \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmozilla\u002Fpdf.js\" rel=\"nofollow ugc\">pdf.js\u003C\u002Fa> technology used by this PDF documents viewer plugin.\u003C\u002Fp>\n","Seamlessly embed PDFs into your content, with customizations and intelligent responsive resizing, and no third-party services or iframes.",300000,5029920,94,484,"2025-12-30T11:09:00.000Z","6.1","7.2",[18,133,134,135,136],"embed-pdf","pdf","pdf-document","pdf-viewer","https:\u002F\u002Fwp-pdf.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpdf-embedder.4.9.3.zip",1,"2024-03-18 00:00:00",{"attackSurface":142,"codeSignals":189,"taintFlows":197,"riskAssessment":198,"analyzedAt":207},{"hooks":143,"ajaxHandlers":177,"restRoutes":178,"shortcodes":187,"cronEvents":188,"entryPointCount":139,"unprotectedCount":11},[144,151,156,160,165,169,173],{"type":145,"name":146,"callback":147,"priority":148,"file":149,"line":150},"filter","embed_maybe_make_link","maybe_embed",99,"class-opengraph-fallback-embed.php",35,{"type":145,"name":152,"callback":153,"priority":154,"file":149,"line":155},"rest_request_after_callbacks","intercept_oembed_proxy",10,38,{"type":145,"name":157,"callback":158,"priority":148,"file":149,"line":159},"pre_oembed_result","intercept_pre_oembed",41,{"type":161,"name":162,"callback":163,"file":149,"line":164},"action","init","register_block",44,{"type":161,"name":166,"callback":167,"file":149,"line":168},"plugins_loaded","register",447,{"type":161,"name":170,"callback":171,"file":149,"line":172},"wp_enqueue_scripts","enqueue_styles",448,{"type":161,"name":174,"callback":175,"file":149,"line":176},"rest_api_init","register_rest_route",449,[],[179],{"namespace":180,"route":181,"methods":182,"callback":184,"permissionCallback":185,"file":149,"line":186},"og-fallback-embed\u002Fv1","\u002Fpreview",[183],"GET","rest_preview","closure",216,[],[],{"dangerousFunctions":190,"sqlUsage":191,"outputEscaping":193,"fileOperations":139,"externalRequests":139,"nonceChecks":11,"capabilityChecks":139,"bundledLibraries":196},[],{"prepared":11,"raw":11,"locations":192},[],{"escaped":194,"rawEcho":11,"locations":195},13,[],[],[],{"summary":199,"deductions":200},"The \"opengraph-fallback-embed\" v1.3.7 plugin exhibits a generally strong security posture based on the provided static analysis and vulnerability history. The absence of known CVEs and a clean taint analysis report are significant positive indicators. The code adheres to several WordPress security best practices, including 100% of SQL queries using prepared statements and 100% of output being properly escaped. Furthermore, all identified entry points (REST API) are protected by permission callbacks, and there's at least one capability check present.\n\nHowever, a few areas warrant attention. The lack of nonce checks, even with a limited attack surface, is a potential concern. While there are no directly exploitable vulnerabilities indicated by the taint analysis, the presence of file operations and external HTTP requests, especially without explicit mention of sanitization or validation related to them in the provided data, could theoretically introduce risks if not handled with extreme care.\n\nOverall, the plugin appears to be well-developed from a security perspective, with no historical vulnerabilities and good adherence to core security principles. The primary areas for improvement lie in implementing nonce checks for any potential future dynamic interactions and ensuring robust validation around the file operation and external HTTP request functionalities.",[201,203,205],{"reason":202,"points":90},"Missing nonce checks on entry points",{"reason":204,"points":67},"Presence of file operations without explicit sanitization checks",{"reason":206,"points":67},"Presence of external HTTP requests without explicit sanitization checks","2026-04-16T13:47:46.424Z",{"wat":209,"direct":215},{"assetPaths":210,"generatorPatterns":212,"scriptPaths":213,"versionParams":214},[211],"\u002Fwp-content\u002Fplugins\u002Fopengraph-fallback-embed\u002Fbuild\u002Fog-embed\u002Fstyle-index.css",[],[],[],{"cssClasses":216,"htmlComments":218,"htmlAttributes":219,"restEndpoints":220,"jsGlobals":222,"shortcodeOutput":223},[217],"og-fallback-embed__error",[],[],[221],"\u002Fog-fallback-embed\u002Fv1\u002Fpreview",[],[],{"error":225,"url":226,"statusCode":227,"statusMessage":228,"message":228},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fopengraph-fallback-embed\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":139,"versions":230},[231],{"version":6,"download_url":24,"svn_tag_url":232,"released_at":26,"has_diff":233,"diff_files_changed":234,"diff_lines":26,"trac_diff_url":26,"vulnerabilities":235,"is_current":225},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fopengraph-fallback-embed\u002Ftags\u002F1.3.7\u002F",false,[],[]]