Init Embed Posts – Stylish, Fast, Portable
Init Embed Posts lets you embed WordPress content externally – with beautiful cards, real-time REST API data, and zero friction. Instead of using iframes or clunky oEmbed, this plugin gives you clean + snippets, which load the post or product dynamically using WordPress REST API. Designed for speed, style, and full control – using pure JavaScript and smart caching. Prefer working in the Block Editor? The Embed Button block does exactly what the [init_embed_code] shortcode does – no shortcode needed if you’d rather insert it visually, with a live preview right in the editor. For AI agents and automated tools, embed data (title, excerpt, thumbnail, images, and — for WooCommerce products — price) is also exposed as a read-only Abilities API ability (WordPress 6.9+), the same data used to render the cards. This plugin is part of the Init Plugin Suite — a collection of minimalist, fast, and developer-focused tools for WordPress. GitHub repository: https://github.com/brokensmile2103/init-embed-posts Features: Embed any public post or WooCommerce product Works anywhere: raw HTML, CMS, blog, landing page… Block Editor block: “Embed Button”, equivalent to [init_embed_code], with a live preview in the editor Abilities API (WordPress 6.9+): read-only get-embed-data ability for post/product embed data, discoverable via wp_get_abilities() and the wp-abilities/v1 REST namespace Beautiful card layout: Site name + favicon Title, excerpt, date (for posts) Featured image, horizontal gallery (optional) Product name, price, sale price with strikethrough “Add to cart” styled button (optional) Auto dark mode, adapts to embedding site Hover effects and modern UI Skeleton loader while waiting for data JS-only, no iframe, no jQuery, no dependency Lazy-loads embed cards as they scroll into view Auto-detects embeds inserted dynamically after page load (AJAX/SPA) Modal UI to generate personalized embed code Smart switching: init-embed.js for posts init-embed-product.js for Woo products Embed attributes: data-theme="light|dark|auto" – force or auto-detect theme data-image, data-featured, data-cart – control content Cached REST API (1 year, revalidated via ETag when the post/product is updated) Price range display for WooCommerce variable products Configurable gallery image limit and default embed theme (Settings page) Developer filters to customize data and HTML What’s New in Version 2.0.0 Block Editor support: new “Embed Button” block, equivalent to the [init_embed_code] shortcode, with a live editor preview — optional, the shortcode still works exactly as before Abilities API support (WordPress 6.9+): new read-only init-embed-posts/get-embed-data ability for post/product embed data — optional and fully backward-compatible on older WordPress versions Requires at least raised from 5.5 to 6.9 to support the Abilities API. Requires PHP remains 7.4 See full details in the changelog below. Abilities API (WordPress 6.9+) On WordPress 6.9 and above, Init Embed Posts registers one read-only ability under the init-embed-posts category: init-embed-posts/get-embed-data — returns embed data (title, excerpt, thumbnail, images, and — for WooCommerce products — price) for a published post or product, given an id and type (post or product) This is discoverable and executable via PHP (wp_get_abilities()), and — for sites that opt into exposing it — the wp-abilities/v1 REST namespace, using the exact same data as the REST endpoints below. This integration is fully optional: on WordPress versions older than 6.9, it silently does nothing and the rest of the plugin is unaffected. Filters for Developers These filters give you full control over how data is rendered and returned. JS config override (highest priority): window.InitPluginSuiteEmbedPostsConfig Set this object before the page renders (e.g. via wp_add_inline_script in a theme) to override embed UI settings in JS, taking priority over the plugin’s Settings page. Currently supports: theme – "light", "dark", or "auto". Overrides the “Default embed theme” setting for the embed code generator button/modal. Example: window.InitPluginSuiteEmbedPostsConfig = { theme: ‘dark’ }; REST response filters: init_plugin_suite_embed_posts_rest_response Modify REST API response for posts. init_plugin_suite_embed_products_rest_response Modify REST API response for Woo products. init_plugin_suite_embed_posts_view_count_keys Customize the list of post meta keys used to detect view count. Supports array of meta keys, ordered by priority. init_plugin_suite_embed_posts_gallery_limit Override the gallery image limit (defaults to the Settings page value, 1–10) used for both post and product embeds. Excerpt filters: init_plugin_suite_embed_posts_excerpt Customize excerpt for posts. init_plugin_suite_embed_products_excerpt Customize excerpt for products. Image control: init_plugin_suite_embed_posts_images Filter image list for embedded post. init_plugin_suite_embed_products_images Filter image list for embedded product. init_plugin_suite_embed_posts_extracted_images Filter raw image URLs extracted from post content. Favicon: init_plugin_suite_embed_posts_favicon_url Override favicon for posts. init_plugin_suite_embed_products_favicon_url Override favicon for products. HTML output filters: init_plugin_suite_embed_posts_shortcode_html Customize HTML output of the [init_embed_code] shortcode. Allows complete control over button markup, styling, and attributes. Auto-insert locations: init_embed_insert_locations Customize or filter valid auto-insert positions (e.g., after title, before content, etc). License This plugin is licensed under the GPLv2 or later. You are free to use, modify, and distribute it under the same license.
Top keywords
- embed35×4.03%
- init20×2.30%
- posts15×1.73%
- init plugin suite13×1.50%
- suite13×1.50%
- rest12×1.38%
- suite embed12×1.38%
- post11×1.27%
- products11×1.27%
- api10×1.15%
- data10×1.15%
- embed posts10×1.15%
YouList – YouTube playlist shortcode
This plugin adds the shortcode [youlist] so you can easily embed YouTube™ playlist defined by playlist id (PL in front of the playlist id) comma seperated video ids list user favorites user uploads search query in a single YouTube™ player. Live demo New in version 1.0.6 show random playlists with the new attribute ‘randompid’ added apply_filters for output, style, class and src bug fix New in version 1.0.5 enable nocookies enable the https protocol play videos in a specific quality (fx. hd720) enable wmode to handle z-index issues. Usage Examples To embed a playlist with thumbnails [youlist pid=”PL3FF15AA7ED356D9F”] To embed three videos with thumbnails (comma seperated video id list): [youlist vid=”ZF_K8D414-Y,sFHXWoawnt0,E2uOGOqIyC4″] To embed three videos without thumbnails: [youlist vid=”ZF_K8D414-Y,sFHXWoawnt0,E2uOGOqIyC4″ showinfo=”0″] To embed a playlist from the search string “higgs boson” [youlist search=”higgs boson” width=”600″ height=”400″] To embed a random playlist [youlist randompid=”PL3FF15AA7ED356D9F, PL9AEE7FF9E83DEA62, PL2B8DB1BD4364033F”] To embed a playlist for all uploaded videos for the user “mismag822″ [youlist uid=”mismag822″ listtype=”user_uploads”] To embed a playlist for all favorite videos for the user “mismag822″ [youlist uid=”mismag822″ listtype=”user_favorites”] To embed a playlist width your own custom style [youlist pid=”PL3FF15AA7ED356D9F” style=”width:300px;height:400px;z-index:1;”] To embed a user playlist with all the supported attributes (default values shown): [youlist uid=”mismag822″ randompid=”” showinfo=”1″ width=”680″ height=”480″ class=”youlist” autohide=”2″ autoplay=”0″ disablekb=”0″ listtype=”user_uploads” theme=”dark” modestbranding=”1″ controls=”1″ color=”red” fs=”1″ rel=”1″ start=”0″ loop=”0″ iv_load_policy=”1″ version=”3″ style=”” vq=”” nocookie=”0″ https=”0″ wmode=”” parameters=”” ] Ideas for how to use this plugin You can use it to display ad-video before or after the main video You can have your own short trailer before the main video You can collect lessons/tutorials/music videos You can use it for your YouTube™ playlist You can watch your friends favourites videos You can collect videos for your kid and watch it on your site … etc … Shortcode Parameters The youList-shortcode is a wrapper for most of the YouTube™ iframe parameters described here: https://developers.google.com/youtube/player_parameters iframe parameters: width [integer] – iframe width in pixels height [integer] – iframe height in pixels class [string] – iframe css classname style [string] – iframe css custom style parameters [string] – custom source parameters (¶m1=value1&…) youtube parameters: pid [string] – YouTube playlist ID uid [string] – YouTube user ID) vid [string] – Comma seperated YouTube Videos ID list randompid [string] – YouTube random playlist ID, from a comma seperated PID’s list listtype [playlist|user_uploads|search] – YouTube listtype search [string] – YouTube search string) theme [dark|light] – Dark or light control bar modestbranding [0|1] – Prevent the YouTube logo from displaying in the control bar showinfo [0|1] – Display thumbnail images for the videos in the playlist autohide [0|1|2] – Hide the video controls automatically after a video begins playing autoplay [0|1] – The initial video will autoplay when the player loads disablekb [0|1] – Disable the player keyboard controls controls [0|1|2] – Display the video player controls color [red|white] – The color in the video progress bar fs [0|1] – Display the fullscreen button rel [0|1] – Show related videos when playback of the initial video ends start [integer] – Play the video at the given number of seconds from the start of the video loop [0|1] – Play the entire playlist and then start again at the first video iv_load_policy [1|3] – Show video annotations version [2|3] – AS player version https [0|1] – Enable the https protocol nocookie [0|1] – No cookies thank you vq [small|medium|large|hd720|hd1080] – Change video quality