[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fmtgjNQLVS2CPFXdgGLqreppIzRGkz47y2L6HY94_z9w":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":17,"download_link":24,"security_score":25,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":36,"analysis":141,"fingerprints":193},"embed-tidal","Embed Tidal","0.2.0","Bjørn Johansen","https:\u002F\u002Fprofiles.wordpress.org\u002Fbjornjohansen\u002F","\u003Cp>Supports:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Tracks\u003C\u002Fli>\n\u003Cli>Albums\u003C\u002Fli>\n\u003Cli>Playlists\u003C\u002Fli>\n\u003Cli>Videos\u003C\u002Fli>\n\u003Cli>Videos with related content\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can paste URLs – just like with YouTube videos – in any form the web player supports. E.g.:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>https:\u002F\u002Flisten.tidal.com\u002Falbum\u002F1885832\u003C\u002Fli>\n\u003Cli>https:\u002F\u002Ftidal.com\u002Ftrack\u002F64978614\u003C\u002Fli>\n\u003Cli>https:\u002F\u002Ftidal.com\u002Fvideo\u002F25025156\u003C\u002Fli>\n\u003C\u002Ful>\n","Embed the Tidal web player via pasting a URL or using a shortcode. Works well with the Shortcake shortcode UI.",40,2490,0,"2018-03-12T21:21:00.000Z","4.9.29","3.6.1","",[19,20,21,22,23],"embed","shortcake","shortcode","streaming","tidal","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fembed-tidal.0.2.0.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":25,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},"bjornjohansen",7,20470,3065,69,"2026-04-04T13:55:04.519Z",[37,55,79,100,122],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":13,"downloaded":45,"rating":13,"num_ratings":13,"last_updated":46,"tested_up_to":47,"requires_at_least":48,"requires_php":49,"tags":50,"homepage":17,"download_link":53,"security_score":54,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27},"video-embedder-for-strimly","Video Embedder for Strimly","1.1.4","Moish Kariti","https:\u002F\u002Fprofiles.wordpress.org\u002Fmkariti\u002F","\u003Cp>Video Embedder for Strimly is a powerful WordPress plugin that allows you to easily embed Strimly.io videos in your WordPress site. Whether you’re a content creator, educator, or business owner, this plugin provides seamless video integration with advanced features.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Video Library Management\u003C\u002Fstrong> – View and manage all your Strimly videos in a beautiful admin interface\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode Support\u003C\u002Fstrong> – Easy video embedding with \u003Ccode>[strimly_video]\u003C\u002Fcode> shortcode\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Quality Selector\u003C\u002Fstrong> – Manual quality control for optimal viewing experience\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Auto-embedding\u003C\u002Fstrong> – Automatically convert Strimly URLs to embeds\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Responsive Design\u003C\u002Fstrong> – Works perfectly on all devices and screen sizes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>HLS Support\u003C\u002Fstrong> – Advanced video streaming with adaptive bitrate\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Admin Interface\u003C\u002Fstrong> – Easy configuration and management\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Copy Options\u003C\u002Fstrong> – Copy both iframe embed code and shortcode\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How to Use\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Install and Activate\u003C\u002Fstrong> the plugin\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configure Settings\u003C\u002Fstrong> – Enter your Strimly.io email address\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Test Connection\u003C\u002Fstrong> – Verify your setup is working\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Embed Videos\u003C\u002Fstrong> – Use shortcodes or copy embed code\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Shortcode Usage\u003C\u002Fh4>\n\u003Cp>Use the shortcode \u003Ccode>[strimly_video]\u003C\u002Fcode> in your posts and pages:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[strimly_video id=\"your-video-id\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Parameters\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>id\u003C\u002Fcode> (required) – Your Strimly video ID\u003C\u002Fli>\n\u003Cli>\u003Ccode>width\u003C\u002Fcode> (optional) – Video width (default: 100%)\u003C\u002Fli>\n\u003Cli>\u003Ccode>height\u003C\u002Fcode> (optional) – Video height (default: 400)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>`\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>[strimly_video id=”abc123″]\u003Cbr \u002F>\n[strimly_video id=”abc123″ width=”800″ height=”450″]\u003Cbr \u002F>\n    `\u003C\u002Fp>\n\u003Ch4>Video Library\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Go to \u003Cstrong>Strimly Videos\u003C\u002Fstrong> \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> \u003Cstrong>All Videos\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>View all your videos in a beautiful grid\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Play\u003C\u002Fstrong> to preview videos directly in the card\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Copy Embed Code\u003C\u002Fstrong> or \u003Cstrong>Copy Shortcode\u003C\u002Fstrong> to get embed code\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Auto-embedding\u003C\u002Fh4>\n\u003Cp>Paste any Strimly.io video URL in your content and it will automatically be converted to an embed.\u003C\u002Fp>\n\u003Ch4>Technical Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 5.0 or higher\u003C\u002Fli>\n\u003Cli>PHP 7.4 or higher\u003C\u002Fli>\n\u003Cli>Modern web browser with HLS support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Browser Support\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Chrome 30+\u003C\u002Fli>\n\u003Cli>Firefox 23+\u003C\u002Fli>\n\u003Cli>Safari 6+\u003C\u002Fli>\n\u003Cli>Edge 12+\u003C\u002Fli>\n\u003Cli>Internet Explorer 11+\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For support and documentation, visit:\u003Cbr \u002F>\n* \u003Cstrong>Website\u003C\u002Fstrong>: https:\u002F\u002Fstrimly.io\u003Cbr \u002F>\n* \u003Cstrong>Documentation\u003C\u002Fstrong>: https:\u002F\u002Fstrimly.io\u002Fdocs\u003Cbr \u002F>\n* \u003Cstrong>Support\u003C\u002Fstrong>: https:\u002F\u002Fstrimly.io\u002Fsupport\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Video.js\u003C\u002Fstrong> – Video player library\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Strimly.io\u003C\u002Fstrong> – Video hosting platform\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WordPress\u003C\u002Fstrong> – Content management system\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily embed Strimly.io videos with shortcodes and blocks. Features secure API authentication and video library management.",178,"2025-09-15T14:17:00.000Z","6.8.5","5.0","7.4",[19,51,21,22,52],"responsive","video","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvideo-embedder-for-strimly.1.1.4.zip",100,{"slug":56,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":62,"active_installs":63,"downloaded":64,"rating":65,"num_ratings":66,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":49,"tags":70,"homepage":74,"download_link":75,"security_score":76,"vuln_count":77,"unpatched_count":13,"last_vuln_date":78,"fetched_at":27},"advanced-iframe","Advanced iFrame","2026.0","mdempfle","https:\u002F\u002Fprofiles.wordpress.org\u002Fmdempfle\u002F","\u003Cblockquote>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.advanced-iframe.com\u002F\" rel=\"nofollow ugc\">New website: advanced-iframe.com\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\n  \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fdemo-advanced-iframe-2-0\" rel=\"nofollow ugc\">Demo\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Include content the way YOU like in an iframe that can hide and modify elements, does auto height, forward parameters and does many, many more…\u003C\u002Fp>\n\u003Ch4>Main features of advanced iframe\u003C\u002Fh4>\n\u003Cp>By entering the shortcode ‘[advanced_iframe]’ you can include any webpage to any page or article.\u003C\u002Fp>\n\u003Cp>Advanced iFrame now has out of the box support for embedded 3D models using the p3d 3D viewer. Go to https:\u002F\u002Fp3d.in\u002Fb\u002F24 and download a pre-configured plugin where the model does scale already nicely on all devices. Get started for free! If you need more storage or access to the Premium features of p3d.in, you can get a 50% discount on your first payment with the coupon AIFRAME on checkout.\u003C\u002Fp>\n\u003Cp>The following cool features compared to a normal iframe are implemented:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Hide areas of the layout to give the iframe more space (see screenshot)\u003C\u002Fli>\n\u003Cli>Show only specific areas of the iframe when the iframe is on a same domain (The Pro version supports this on different domains) or include parts directly by jQuery\u003C\u002Fli>\n\u003Cli>Modify css styles in the parent and the iframe to e.g. change the width of the content area (see screen-shot)\u003C\u002Fli>\n\u003Cli>Forward parameters to the iframe\u003C\u002Fli>\n\u003Cli>Resize the iframe to the content height or width on loading, AJAX or click\u003C\u002Fli>\n\u003Cli>Responsive videos (moved from the pro to the the free version in v2022)\u003C\u002Fli>\n\u003Cli>Scroll the parent to the top when the iframe is loaded\u003C\u002Fli>\n\u003Cli>Hide the content until it is fully loaded\u003C\u002Fli>\n\u003Cli>Add a css and js file to the parent page\u003C\u002Fli>\n\u003Cli>Security code: You can only insert the shortcode with a valid security code from the administration.\u003C\u002Fli>\n\u003Cli>Many additional cool features are available the pro version – see https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fadvanced-iframe-comparison-chart\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In the free version you can update to the pro version directly or test all features in the 30 days trial!\u003C\u002Fp>\n\u003Cp>Please note: Modification inside the iframe are only possible if you are on the same domain or use a workaround like described in the settings.\u003C\u002Fp>\n\u003Cp>So please check first if the iframe page and the parent page are one the same domain. www.example.com and text.example.com are different domains! Please check in the documentation if you can use the feature you like\u003C\u002Fp>\n\u003Cp>A free iframe checker is available at\u003Cbr \u002F>\nhttps:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Ffree-iframe-checker.\u003Cbr \u002F>\nThis tool does check if a page is allowed to be included!\u003C\u002Fp>\n\u003Cp>All settings can be set with shortcode attributes as well. If you only use one iframe please use the settings in the administration because there each parameter is explained in detail and also the defaults are set there.\u003C\u002Fp>\n\u003Ch4>Limitations of the free version\u003C\u002Fh4>\n\u003Cp>The free version has no functional restrictions and is for personal and small non-commercial sites. After 10.000 views\u002Fmonth you have to opt-in to get unlimited views. If you do not opt-in the iframe is still working 100% and at the bottom of the iframe a small notice to opt-in is shown.\u003C\u002Fp>\n\u003Ch4>Upgrading to Advanced IFrame Pro\u003C\u002Fh4>\n\u003Cp>It’s quick and painless to get Advanced iFrame Pro. Simply sign up for the 30 days trail or buy directly in the plugin. You can than use the plugin on commercial, business, and professional sites and blogs. You furthermore get:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Show only specific areas of the iframe even when the iframe is on different domain\u003C\u002Fli>\n\u003Cli>Graphical content selector: https:\u002F\u002Fwww.mdempfle.de\u002Fdemos\u002Fconfigurator\u002Fadvanced-iframe-area-selector.html\u003C\u002Fli>\n\u003Cli>External workaround supports iframe modifications\u003C\u002Fli>\n\u003Cli>Widget support\u003C\u002Fli>\n\u003Cli>No view limit\u003C\u002Fli>\n\u003Cli>Hide areas of an iframe\u003C\u002Fli>\n\u003Cli>Browser detection\u003C\u002Fli>\n\u003Cli>Change link targets\u003C\u002Fli>\n\u003Cli>URL forward parameter mapping.\u003C\u002Fli>\n\u003Cli>Zoom iframe content\u003C\u002Fli>\n\u003Cli>Accordion menu\u003C\u002Fli>\n\u003Cli>jQuery help\u003C\u002Fli>\n\u003Cli>Advanced lazy load\u003C\u002Fli>\n\u003Cli>Standalone version – can be used in ANY php page!\u003C\u002Fli>\n\u003Cli>And much more…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can find the comparison chart here: https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fadvanced-iframe-comparison-chart\u003Cbr \u002F>\nSee the pro demo here:\u003Cbr \u002F>\nhttps:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fadvanced-iframe-pro-demo\u003C\u002Fp>\n\u003Ch4>Administration\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Go to Settings -> Advanced iFrame\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Quick start guide\u003C\u002Fh4>\n\u003Cp>The quickstart guide is also available as video: https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fadvanced-iframe-video-tutorials\u003C\u002Fp>\n\u003Cp>To include a webpage to your page please check the following things first:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Check if your page page is allowed to be included https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Ffree-iframe-checker!\u003C\u002Fli>\n\u003Cli>Check if the iframe page and the parent page are one the same domain. www.example.com and text.example.com are different domains!\u003C\u002Fli>\n\u003Cli>Can you modify the page that should be included?\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Most likely you have one of the following setups:\u003C\u002Fp>\n\u003Col>\n\u003Cli>iframe cannot be included:  You cannot include the content because the owner does not allow this.\u003C\u002Fli>\n\u003Cli>iframe can be included and you are on a different domain: See the feature comparison chart: https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fadvanced-iframe-comparison-chart and the feature overview https:\u002F\u002Fwww.advanced-iframe.com\u002Fadvanced-iframe\u002Fadvanced-iframe-features-availability-overview. To resize the content to the height\u002Fwidth or modify css you need to modify the remote iframe page by adding one line of Javascript to enable the provided workaround.\u003C\u002Fli>\n\u003Cli>iframe can be included and you are on the same domain: All features of the plugin can be used.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>If you mix http and https read https:\u002F\u002Fwww.advanced-iframe.com\u002Fiframe-do-not-mix-http-and-https. Parent https and iframe http does not work on all mayor browsers!\u003C\u002Fp>\n\u003Ch4>Advanced iframe attributes\u003C\u002Fh4>\n\u003Cp>Below you find all possible shortcode attributes. If you only use one iframe please use the settings in the administration because there each parameter is explained in detail and also the defaults are set there.\u003C\u002Fp>\n\u003Cp>Setting an attribute does overwrite the setting in the administration.\u003C\u002Fp>\n\u003Cp>[advanced_iframe securitykey=””   src=””\u003Cbr \u002F>\n  id=””   name=””\u003Cbr \u002F>\n  width=””   height=””\u003Cbr \u002F>\n  marginwidth=””   marginheight=””\u003Cbr \u002F>\n  scrolling=””   frameborder=””\u003Cbr \u002F>\n  class=””   style=””\u003Cbr \u002F>\n  content_id=””   content_styles=””\u003Cbr \u002F>\n  hide_elements=””   url_forward_parameter=””\u003Cbr \u002F>\n  onload=””   onload_resize=””\u003Cbr \u002F>\n  onload_scroll_top=””   onload_show_element_only=””\u003Cbr \u002F>\n  store_height_in_cookie=””   additional_height=””\u003Cbr \u002F>\n  additional_js=””   additional_css=””\u003Cbr \u002F>\n  iframe_content_id=””   iframe_content_styles=””\u003Cbr \u002F>\n  iframe_hide_elements=””  hide_page_until_loaded=””\u003Cbr \u002F>\n  include_hide_page_until_loaded=””\u003Cbr \u002F>\n  include_url=”” include_content=””\u003Cbr \u002F>\n  include_height=””  include_fade=””\u003Cbr \u002F>\n  onload_resize_width=””   resize_on_ajax=””\u003Cbr \u002F>\n  resize_on_ajax_jquery=””   resize_on_click=””\u003Cbr \u002F>\n  resize_on_click_elements=””   use_shortcode_attributes_only=””\u003Cbr \u002F>\n  onload_resize_delay=””\u003Cbr \u002F>\n  ]\u003C\u002Fp>\n","Include content the way YOU like in an iframe that can hide and modify elements, does auto-height, forward parameters and does many, many more...",40000,2370567,86,55,"2026-03-05T21:11:00.000Z","6.9.4","5.5",[19,71,72,73,21],"iframe","modify-css","resize","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadvanced-iframe\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadvanced-iframe.2026.0.zip",95,12,"2026-01-19 00:00:00",{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":63,"downloaded":87,"rating":88,"num_ratings":89,"last_updated":90,"tested_up_to":68,"requires_at_least":91,"requires_php":17,"tags":92,"homepage":95,"download_link":96,"security_score":97,"vuln_count":98,"unpatched_count":13,"last_vuln_date":99,"fetched_at":27},"insert-pages","Insert Pages","3.11.2","Paul Ryan","https:\u002F\u002Fprofiles.wordpress.org\u002Ffigureone\u002F","\u003Cp>Insert Pages lets you embed any WordPress content (e.g., pages, posts, custom post types) into other WordPress content using the Shortcode API. It also includes a widget for inserting pages into any widget area.\u003C\u002Fp>\n\u003Cp>The real power of Insert Pages comes when you start creating custom post types, either \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FPost_Types\" rel=\"nofollow ugc\">programmatically in your theme\u003C\u002Fa>, or using another plugin like \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcustom-post-type-ui\u002F\" rel=\"ugc\">Custom Post Type UI\u003C\u002Fa>. You can then abstract away common data types (like videos, quizzes, due dates) into their own custom post types, and then show those pieces of content within your normal pages and posts by Inserting them as a shortcode.\u003C\u002Fp>\n\u003Ch3>Advanced Tutorial\u003C\u002Fh3>\n\u003Cp>Contributor Wes Modes has graciously written an updated tutorial for the Gutenberg era, focused on creating a custom post type with custom fields and a custom template for rendering content. Read it here: \u003Ca href=\"https:\u002F\u002Fmedium.com\u002F@wesmodes\u002Fusing-wordpress-insert-pages-plugin-with-your-custom-post-types-and-custom-templates-535c141f9635\" rel=\"nofollow ugc\">https:\u002F\u002Fmedium.com\u002F@wesmodes\u002Fusing-wordpress-insert-pages-plugin-with-your-custom-post-types-and-custom-templates-535c141f9635\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Example: Normal Use Case\u003C\u002Fh3>\n\u003Cp>Say you teach a course and you’re constantly referring to an assignment due date in your course website. The next semester the due date changes, and you have to go change all of the locations you referred to it. Instead, you’d rather just change the date once! With Insert Pages, you can do the following:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Create a custom post type called \u003Cstrong>Due Date\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Create a new \u003Cem>Due Date\u003C\u002Fem> called \u003Cstrong>Assignment 1 Due Date\u003C\u002Fstrong> with \u003Cstrong>Fri Nov 22, 2013\u003C\u002Fstrong> as its content.\u003C\u002Fli>\n\u003Cli>Edit all the pages where the due date occurs and use the \u003Cem>Insert Pages\u003C\u002Fem> toolbar button to insert a reference to the \u003Cem>Due Date\u003C\u002Fem> you just created. Be sure to set the \u003Cem>Display\u003C\u002Fem> to \u003Cstrong>Content\u003C\u002Fstrong> so \u003Cem>Fri Nov 22, 2013\u003C\u002Fem> shows wherever you insert it. The shortcode you just created should look something like this: \u003Ccode>[insert page='assignment-1-due-date' display='content']\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>That’s it! Now, when you want to change the due date, just edit the \u003Cem>Assignment 1 Due Date\u003C\u002Fem> custom post you created, and it will automatically be updated on all the pages you inserted it on.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Example: Advanced Use Case\u003C\u002Fh3>\n\u003Cp>Say your site has a lot of video content, and you want to include video transcripts and video lengths along with the videos wherever you show them. You could just paste the transcripts into the page content under the video, but then you’d have to do this on every page the video showed on. (It’s also just a bad idea, architecturally!) With Insert Pages, you can use a custom post type and create a custom theme template to display your videos+transcripts+lengths just the way you want!\u003C\u002Fp>\n\u003Col>\n\u003Cli>Create a custom post type called \u003Cstrong>Video\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Use a plugin like \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadvanced-custom-fields\u002F\" rel=\"ugc\">Advanced Custom Fields\u003C\u002Fa> to add extra fields to your new \u003Cem>Video\u003C\u002Fem> custom post type. Add a \u003Cstrong>Video URL\u003C\u002Fstrong> field, a \u003Cstrong>Transcript\u003C\u002Fstrong> field, and a \u003Cstrong>Video Length\u003C\u002Fstrong> field.\u003C\u002Fli>\n\u003Cli>Create a new \u003Cem>Video\u003C\u002Fem> called \u003Cstrong>My Awesome Video\u003C\u002Fstrong> with the following values in its fields:\n\u003Cul>\n\u003Cli>\u003Cem>Video URL\u003C\u002Fem>: \u003Cstrong>http:\u002F\u002Fwww.youtube.com\u002Fwatch?v=oHg5SJYRHA0\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cem>Transcript\u003C\u002Fem>: \u003Cstrong>We’re no strangers to love, You know the rules and so do I…\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cem>Video Length\u003C\u002Fem>: \u003Cstrong>3:34\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Create a template in your theme so we can display the video content as we want. I won’t cover this step here since it’s pretty involved, but you can find more help in the \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FTheme_Development#Custom_Page_Templates\" rel=\"nofollow ugc\">WordPress Codex\u003C\u002Fa>. Let’s assume you created a template called \u003Cstrong>Video with transcript\u003C\u002Fstrong> (video-with-transcript.php) that shows the youtube video in a \u003Ca href=\"http:\u002F\u002Ffancybox.net\u002F\" rel=\"nofollow ugc\">fancybox\u003C\u002Fa>, and includes a button that shows the text transcript when a user clicks on it.\u003C\u002Fli>\n\u003Cli>Edit the pages where you want the video to show up and use the \u003Cem>Insert Pages\u003C\u002Fem> toolbar button to insert a reference to the \u003Cem>Video\u003C\u002Fem> you just created. Be sure to set the \u003Cem>Display\u003C\u002Fem> to \u003Cstrong>Use a custom template\u003C\u002Fstrong>, and select your new template \u003Cstrong>Video with transcript\u003C\u002Fstrong>. The shortcode you just created should look something like this: \u003Ccode>[insert page='my-awesome-video' display='video-with-transcript.php']\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>That’s it! Now you can create all sorts of video content and know that it’s being tracked cleanly in the database as its own custom post type, and you can place videos all over your site and not worry about lots of duplicate content.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The possibilities are endless!\u003C\u002Fp>\n","Insert Pages lets you embed any WordPress content (e.g., pages, posts, custom post types) into other WordPress content using the Shortcode API.",1008854,96,71,"2026-01-20T23:38:00.000Z","3.3.0",[19,93,94,21],"insert","pages","https:\u002F\u002Fgithub.com\u002Fuhm-coe\u002Finsert-pages","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Finsert-pages.3.11.2.zip",99,4,"2022-12-21 00:00:00",{"slug":101,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":110,"num_ratings":111,"last_updated":112,"tested_up_to":113,"requires_at_least":114,"requires_php":17,"tags":115,"homepage":119,"download_link":120,"security_score":121,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27},"spreaker-shortcode","Spreaker Shortcode","1.8.3","Spreaker","https:\u002F\u002Fprofiles.wordpress.org\u002Fspreaker\u002F","\u003Cp>The Spreaker shortcode plugin is an easy way to embed Spreaker audio player into your WordPress blog. It works for any Spreaker episode, show, or user. Once you install this plugin, it will work on all of your blog posts.\u003C\u002Fp>\n\u003Cp>A simple example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[spreaker type=player resource=\"episode_id=3331356\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>More Options\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Spreaker shortcode requires the resource play. It can be only of the following:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>resource=\"episode_id=X\"\u003C\u002Fcode>: id of the episode to embed.\u003C\u002Fli>\n\u003Cli>\u003Ccode>resource=\"show_id=X\"\u003C\u002Fcode>: id of the show, whose latest episode should be displayed.\u003C\u002Fli>\n\u003Cli>\u003Ccode>resource=\"show_key=X\"\u003C\u002Fcode>: private key of the show to embed.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The plugin also supports the following optional parameters:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>width\u003C\u002Fcode>: player’s width – can be in % or px (ie. \u003Ccode>100%\u003C\u002Fcode> or \u003Ccode>400px\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>\u003Ccode>height\u003C\u002Fcode>: player’s height – can be in % or px (ie. \u003Ccode>100%\u003C\u002Fcode> or \u003Ccode>400px\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>\u003Ccode>theme\u003C\u002Fcode>: player’s UI theme. Supported themes are: \u003Ccode>light\u003C\u002Fcode> (default) and \u003Ccode>dark\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Ccode>color\u003C\u002Fcode>: player’s main color. Supported fromats are short and long hex values (ie: \u003Ccode>F00\u003C\u002Fcode> or \u003Ccode>FF0000\u003C\u002Fcode>). This feature requires the podcast author to subscribe to \u003Ca href=\"https:\u002F\u002Fwww.spreaker.com\u002Fplans\" rel=\"nofollow ugc\">Station plan or above\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ccode>cover\u003C\u002Fcode>: HTTPS url of an image to display as player’s background.\u003C\u002Fli>\n\u003Cli>\u003Ccode>playlist\u003C\u002Fcode>:  configures how the playlist should be built. It can be \u003Ccode>playlist=\"false\"\u003C\u002Fcode> to disable the playlist or \u003Ccode>playlist=\"show\"\u003C\u002Fcode> to display all show’s episodes in the playlist. The default behavious depends on resource. The playlist is visible only if the player height is greater than 200px.\u003C\u002Fli>\n\u003Cli>\u003Ccode>playlist-continuous\u003C\u002Fcode>: enables or disables the playlist continuous playback. When \u003Ccode>true\u003C\u002Fcode> it continuously plays all episodes in the playlist until the end.\u003C\u002Fli>\n\u003Cli>\u003Ccode>playlist-loop\u003C\u002Fcode>: enables or disables loop playlist playback when continuous playback is enabled. When \u003Ccode>true\u003C\u002Fcode> and playlist continuous playback is enabled as well, it will loop the playlist continuously (defaults to \u003Ccode>false\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>\u003Ccode>playlist-autoupdate\u003C\u002Fcode>: enables or disables the playlist autoupdate, when a new episode is published. This feature is enabled by default.\u003C\u002Fli>\n\u003Cli>\u003Ccode>chapters-image\u003C\u002Fcode>: enables or disables the display of chapters images in the player (defaults to \u003Ccode>true\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>\u003Ccode>episode-image-position\u003C\u002Fcode>: when \u003Ccode>right\u003C\u002Fcode> or \u003Ccode>left\u003C\u002Fcode> shows the episode image on the \u003Ccode>right\u003C\u002Fcode> or \u003Ccode>left\u003C\u002Fcode> (defaults to \u003Ccode>right\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-likes\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the likes button is not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-comments\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the comments button is not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-sharing\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the share button is not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-logo\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the Spreaker logo is not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>). This feature requires the podcast author to subscribe to \u003Ca href=\"https:\u002F\u002Fwww.spreaker.com\u002Fplans\" rel=\"nofollow ugc\">Broadcaster plan or above\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-episode-description\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the button to open the description of the current episode is not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-playlist-descriptions\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the button to open the description of episodes in the playlist is not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-playlist-images\u003C\u002Fcode>: when \u003Ccode>true\u003C\u002Fcode> the images of episodes in the playlist are not displayed in the player (defaults to \u003Ccode>false\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide-download\u003C\u002Fcode>: When \u003Ccode>true\u003C\u002Fcode>, it hides the episode download button (defaults to \u003Ccode>true\u003C\u002Fcode>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>How to get the shortcode\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Play any track on \u003Ca href=\"http:\u002F\u002Fwww.spreaker.com\" rel=\"nofollow ugc\">www.spreaker.com\u003C\u002Fa> and then click on the \u003Cstrong>share button\u003C\u002Fstrong> in the player (bottom-right corner): you can customize the appearance of the player and get the shortcode to copy and paste to your WordPress blog.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Help\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you need further help, please contact us at \u003Ca href=\"http:\u002F\u002Fhelp.spreaker.com\" rel=\"nofollow ugc\">help.spreaker.com\u003C\u002Fa>.\u003C\u002Fp>\n","A simple and easy way to embed Spreaker player into your WordPress blog.",4000,97569,66,9,"2024-09-16T13:13:00.000Z","6.6.5","2.5.0",[116,19,21,117,118],"audio","spreaker","widget","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fspreaker-shortcode\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fspreaker-shortcode.1.8.3.zip",92,{"slug":123,"name":124,"version":125,"author":126,"author_profile":127,"description":128,"short_description":129,"active_installs":130,"downloaded":131,"rating":54,"num_ratings":77,"last_updated":132,"tested_up_to":68,"requires_at_least":133,"requires_php":17,"tags":134,"homepage":137,"download_link":138,"security_score":54,"vuln_count":139,"unpatched_count":13,"last_vuln_date":140,"fetched_at":27},"simple-youtube-responsive","Simple YouTube Responsive","3.2.6","Eirudo","https:\u002F\u002Fprofiles.wordpress.org\u002Feirudo\u002F","\u003Cp>A lightweight plugin to embed YouTube videos while keeping the correct aspect ratio — all with a simple shortcode.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Very simple shortcode. Use it in posts or widgets.\u003C\u002Fli>\n\u003Cli>Uses the default YouTube iframe embed, but fully responsive.\u003C\u002Fli>\n\u003Cli>Custom aspect ratio if you want a different video size.\u003C\u002Fli>\n\u003Cli>Automatically centered, so your video always looks neat in your content.\u003C\u002Fli>\n\u003Cli>Lazy load support to improve performance.\u003C\u002Fli>\n\u003Cli>100% free — no ads, no trackers, no funny business.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Arbitrary section\u003C\u002Fh3>\n\u003Ch3>A brief Markdown Example\u003C\u002Fh3>\n\u003Cp>Pros:\u003Cbr \u002F>\n1. Simple and lightweight — one shortcode per video\u003Cbr \u002F>\n2. Lazy load support\u003Cbr \u002F>\n3. Extra parameters available for advanced users\u003C\u002Fp>\n\u003Cp>Cons:\u003Cbr \u002F>\n1. Designed for simple embeds only (no playlist support, one video per shortcode)\u003C\u002Fp>\n","Easily embed responsive YouTube videos using a simple shortcode. Lazy load included.",3000,56956,"2026-02-05T06:46:00.000Z","2.5",[19,135,51,21,136],"player","youtube","https:\u002F\u002Feirudo.com\u002Fportfolios\u002Fwordpress-plugins\u002Fyoutube-responsive","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-youtube-responsive.3.2.6.zip",1,"2023-02-23 00:00:00",{"attackSurface":142,"codeSignals":175,"taintFlows":183,"riskAssessment":184,"analyzedAt":192},{"hooks":143,"ajaxHandlers":168,"restRoutes":169,"shortcodes":170,"cronEvents":174,"entryPointCount":139,"unprotectedCount":13},[144,149,152,156,159,163],{"type":145,"name":146,"callback":147,"file":148,"line":11},"action","wp_footer","enqueue_scripts","class-embed-tidal.php",{"type":145,"name":150,"callback":150,"file":148,"line":151},"admin_enqueue_scripts",41,{"type":145,"name":153,"callback":154,"file":148,"line":155},"plugins_loaded","closure",43,{"type":145,"name":157,"callback":154,"file":148,"line":158},"enqueue_shortcode_ui",52,{"type":145,"name":160,"callback":161,"file":148,"line":162},"register_shortcode_ui","embed_tidal_shortcode_ui",58,{"type":145,"name":164,"callback":165,"file":166,"line":167},"init","hooks","embed-tidal.php",31,[],[],[171],{"tag":23,"callback":172,"file":148,"line":173},"shortcode_handler",37,[],{"dangerousFunctions":176,"sqlUsage":177,"outputEscaping":179,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":182},[],{"prepared":13,"raw":13,"locations":178},[],{"escaped":180,"rawEcho":13,"locations":181},5,[],[],[],{"summary":185,"deductions":186},"The 'embed-tidal' v0.2.0 plugin demonstrates a generally strong security posture based on the provided static analysis. It correctly avoids dangerous functions, all SQL queries utilize prepared statements, and all identified outputs are properly escaped. Furthermore, there are no file operations or external HTTP requests, and no known vulnerabilities have been recorded in its history. This indicates a conscientious approach to secure coding practices.\n\nHowever, there are a few areas that warrant attention. The plugin has no nonce checks and no capability checks implemented. While the attack surface appears small (only one shortcode) and there are no unprotected entry points identified in the static analysis, the absence of these fundamental security mechanisms leaves it vulnerable to potential CSRF (Cross-Site Request Forgery) attacks if the shortcode were to perform any sensitive actions or modify data. The taint analysis showing zero flows is positive, but this is likely due to the limited scope of the analysis or the absence of complex data interactions within the plugin.\n\nIn conclusion, the plugin is built on solid foundations with good data handling. The lack of documented vulnerabilities is a significant positive. The primary concern is the missing nonces and capability checks, which are crucial for preventing unauthorized actions. If the shortcode's functionality is purely passive (e.g., just displaying embedded content), the risk might be mitigated. However, for any interactive or data-modifying shortcodes, these checks are essential.",[187,190],{"reason":188,"points":189},"Missing nonce checks",8,{"reason":191,"points":31},"Missing capability checks","2026-03-16T22:15:47.567Z",{"wat":194,"direct":201},{"assetPaths":195,"generatorPatterns":197,"scriptPaths":198,"versionParams":200},[196],"\u002Fwp-content\u002Fplugins\u002Fembed-tidal\u002Ftidal-embed-shortcode-ui.js",[],[199],"https:\u002F\u002Fembed.tidal.com\u002Ftidal-embed.js",[],{"cssClasses":202,"htmlComments":204,"htmlAttributes":212,"restEndpoints":216,"jsGlobals":217,"shortcodeOutput":218},[203],"tidal-embed",[205,206,207,208,209,210,211],"Include a script for working with the shortcode UI","Define the UI for attributes of the shortcode.","Type of embed. I.e. album, playlist, track or video","Define the Shortcode UI arguments.","How the shortcode should be labeled in the UI.","Include an icon with your shortcode.\n             * Use a dashicon, or full URL to image.","Define the UI for attributes of the shortcode.\n             *\n             * See above, to where the the assignment to the $fields variable was made.",[213,214,215],"data-type","data-id","data-related-id",[],[],[219,220,221,222,223],"\u003Cdiv class=\"tidal-embed\" data-type=\"","\" data-id=\"","\">\u003C\u002Fdiv>"," data-related-id=\"","Tidal "]