{"id":377059,"date":"2026-09-28T10:19:17","date_gmt":"2026-09-28T10:19:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/heisy\/"},"modified":"2026-09-28T20:49:07","modified_gmt":"2026-09-28T20:49:07","slug":"heisy","status":"publish","type":"plugin","link":"https:\/\/zgh.wordpress.org\/plugins\/heisy\/","author":23575471,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.23.0","stable_tag":"1.23.0","tested":"7.1.2","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Heisy","header_author":"Heisy","header_description":"Turn your WooCommerce product photos into short video ads, inside WordPress, and show them on the product page. Requires a paid Heisy plan.","assets_banners_color":"3a3c3c","last_updated":"2026-09-28 20:49:07","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/heisyai.com\/woocommerce-product-video","header_author_uri":"https:\/\/heisyai.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":57,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.22.2":{"tag":"1.22.2","author":"heisyai","date":"2026-09-28 13:03:28","revision":3717221},"1.23.0":{"tag":"1.23.0","author":"heisyai","date":"2026-09-28 20:49:07","revision":3717901}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3716845,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3716845,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3716986,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3716986,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"heisy\/product-video":{"name":"heisy\/product-video","title":"Heisy product video"}},"tagged_versions":["1.22.2","1.23.0"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3716986,"resolution":"1","location":"assets","locale":"","width":1600,"height":1000},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3716986,"resolution":"2","location":"assets","locale":"","width":1600,"height":1000},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3716986,"resolution":"3","location":"assets","locale":"","width":1600,"height":1000},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3716986,"resolution":"4","location":"assets","locale":"","width":1600,"height":1000}},"screenshots":{"1":"The studio in wp-admin: pick a product or an image, choose a shape and a length, and see the cost before you start.","2":"Every render in one library, with search, filters and one-click retry.","3":"The Heisy video box on the product screen: choose the product's video and where it shows.","4":"Settings: the connection, the studio defaults, and your plan and credits at a glance."}},"plugin_section":[],"plugin_tags":[230669,18250,66211,6402,286],"plugin_category":[45],"plugin_contributors":[283156],"plugin_business_model":[],"class_list":["post-377059","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-video","plugin_tags-product-gallery","plugin_tags-product-video","plugin_tags-video-ads","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-heisyai","plugin_committers-heisyai"],"banners":{"banner":"https:\/\/ps.w.org\/heisy\/assets\/banner-772x250.png?rev=3716986","banner_2x":"https:\/\/ps.w.org\/heisy\/assets\/banner-1544x500.png?rev=3716986","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/heisy\/assets\/icon-128x128.png?rev=3716845","icon_2x":"https:\/\/ps.w.org\/heisy\/assets\/icon-256x256.png?rev=3716845","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/heisy\/assets\/screenshot-1.jpg?rev=3716986","caption":"The studio in wp-admin: pick a product or an image, choose a shape and a length, and see the cost before you start."},{"src":"https:\/\/ps.w.org\/heisy\/assets\/screenshot-2.jpg?rev=3716986","caption":"Every render in one library, with search, filters and one-click retry."},{"src":"https:\/\/ps.w.org\/heisy\/assets\/screenshot-3.jpg?rev=3716986","caption":"The Heisy video box on the product screen: choose the product's video and where it shows."},{"src":"https:\/\/ps.w.org\/heisy\/assets\/screenshot-4.jpg?rev=3716986","caption":"Settings: the connection, the studio defaults, and your plan and credits at a glance."}],"raw_content":"<!--section=description-->\n<p>WooCommerce has no field for a product video, and most stores have no video to put there. Heisy makes one from the product photo you already have.<\/p>\n\n<p>Pick a product or any image in your Media Library, choose a shape and a length, and Heisy renders a short video ad on the Heisy service. A few minutes later the finished MP4 is in your Media Library, and Heisy can show it beside the product gallery for you. No filming, no editor, no footage.<\/p>\n\n<h4>What you get<\/h4>\n\n<ul>\n<li><strong>A studio inside wp-admin.<\/strong> Start from a WooCommerce product or any image. Heisy writes the direction from the photo, or you write your own.<\/li>\n<li><strong>Every shape you post in.<\/strong> 9:16 for reels and stories, 1:1 for feeds and square galleries, 16:9 for the page.<\/li>\n<li><strong>Videos on the product page.<\/strong> Give a product its video from the product screen, and Heisy plays it as the first slide of the product gallery, above the gallery, or under the thumbnails.<\/li>\n<li><strong>Found by search engines.<\/strong> Every product page that shows a Heisy video tells Google about it with video structured data, so the video can appear in search results.<\/li>\n<li><strong>A block and a shortcode.<\/strong> The Heisy product video block and <code>[heisy_video]<\/code> for block themes, page builders and anywhere else.<\/li>\n<li><strong>Template functions for developers.<\/strong> <code>heisy_video()<\/code> and <code>heisy_video_url()<\/code> print nothing for a product without a video.<\/li>\n<li><strong>A library of every render.<\/strong> Search, filter, retry a failed render, and reuse any video.<\/li>\n<li><strong>Credits back when a render fails.<\/strong> Automatically, with nothing to report.<\/li>\n<li><strong>Team access.<\/strong> A render capability you can give to any role, not only administrators.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<p>Heisy is a connector to the Heisy video service, and the service needs a <strong>paid Heisy plan<\/strong>. The plugin itself is free to install and has no locked features, but it cannot render anything until it is connected with an API key from your Heisy account. Plans and prices are at <a href=\"https:\/\/heisyai.com\/pricing\">heisyai.com\/pricing<\/a>.<\/p>\n\n<p>WooCommerce is optional. Without it, Heisy works from any image in your Media Library.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the <strong>Heisy API<\/strong> at heisyai.com, which is run by Techpep AB (Sweden). The videos are made there; the plugin cannot render them on your own server. Nothing is sent until an administrator saves an API key.<\/p>\n\n<p>What is sent, and when:<\/p>\n\n<ul>\n<li><strong>Your API key and your site's address<\/strong>, with every request, so the service knows which account and which site the request is for.<\/li>\n<li><strong>The image you choose<\/strong>, when you start a render or ask for style suggestions.<\/li>\n<li><strong>The product's name and description<\/strong>, when you start from a WooCommerce product, so the service can write the video's direction for that product.<\/li>\n<li><strong>The direction you type and the settings you pick<\/strong> (shape, length, quality, style), when you start a render.<\/li>\n<li><strong>Your rating of a render<\/strong>, when you give one.<\/li>\n<\/ul>\n\n<p>The plugin also asks the service for your plan and credit balance to show them in the admin, and for the status of each render, and it downloads each finished video from heisyai.com into your Media Library.<\/p>\n\n<ul>\n<li>Terms of service: https:\/\/heisyai.com\/terms<\/li>\n<li>Privacy policy: https:\/\/heisyai.com\/privacy<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In wp-admin, go to <strong>Plugins \u2192 Add New<\/strong>, search for <strong>Heisy<\/strong>, and install and activate it. Or upload the <code>heisy<\/code> folder to <code>\/wp-content\/plugins\/<\/code> and activate it on the Plugins screen.<\/li>\n<li>Pick a plan at <a href=\"https:\/\/heisyai.com\/pricing\">heisyai.com\/pricing<\/a>, then create an API key in your Heisy account under <strong>Account \u2192 API keys<\/strong>.<\/li>\n<li>In wp-admin, open <strong>Heisy \u2192 Settings<\/strong>, paste the key and save.<\/li>\n<li>Open <strong>Heisy \u2192 Studio<\/strong>, choose a product or an image, and create your first video.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20heisy%20free%3F\"><h3>Is Heisy free?<\/h3><\/dt>\n<dd><p>The plugin is free to install, and nothing in it is locked. The videos are made on the Heisy service, which needs a paid plan with monthly credits; see <a href=\"https:\/\/heisyai.com\/pricing\">heisyai.com\/pricing<\/a>. A render that fails gives its credits back automatically.<\/p><\/dd>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>No. Heisy works from any image in your Media Library. With WooCommerce active, you can also start from a product and show its video on the product page.<\/p><\/dd>\n<dt id=\"where%20are%20my%20videos%20stored%3F\"><h3>Where are my videos stored?<\/h3><\/dt>\n<dd><p>In your own Media Library, as MP4 files, like any other upload. They are yours to use on the product page, on social media or in ads.<\/p><\/dd>\n<dt id=\"what%20data%20leaves%20my%20site%3F\"><h3>What data leaves my site?<\/h3><\/dt>\n<dd><p>The image you render from, the product's name and description, and the settings of each render, sent to the Heisy API at heisyai.com. See <strong>External services<\/strong> above for the full list.<\/p><\/dd>\n<dt id=\"how%20do%20i%20show%20a%20product%27s%20video%20on%20its%20page%3F\"><h3>How do I show a product's video on its page?<\/h3><\/dt>\n<dd><p>First give the product a video: on the product's edit screen, pick a render in the <strong>Heisy video<\/strong> box (or press <strong>Use on product<\/strong> on a render in Heisy \u2192 All renders).<\/p>\n\n<p>Then choose where it appears. There are four ways, and you only need one:<\/p>\n\n<ol>\n<li><strong>Automatically.<\/strong> Heisy \u2192 Settings \u2192 Store \u2192 <em>Where it shows<\/em> sets a place for every product: first in the product gallery, above the gallery and summary, or under the gallery thumbnails. A single product can choose differently in its <strong>Heisy video<\/strong> box \u2192 <em>Where it shows<\/em>. This uses WooCommerce's standard product page; themes that draw their own product page should use one of the options below instead.<\/li>\n<li><strong>A block.<\/strong> In the block editor or a block theme's product template, add the <strong>Heisy product video<\/strong> block.<\/li>\n<li><strong>A shortcode.<\/strong> Put <code>[heisy_video]<\/code> in any block, widget or template that supports shortcodes.<\/li>\n<li><strong>Your theme's code<\/strong>, with the template functions below.<\/li>\n<\/ol>\n\n<p>Each of them shows the video of the product being viewed, and prints nothing for a product without one. So the same template line can go on every product page.<\/p><\/dd>\n<dt id=\"does%20the%20video%20help%20my%20product%20show%20up%20in%20google%3F\"><h3>Does the video help my product show up in Google?<\/h3><\/dt>\n<dd><p>Yes, it can. On every product page where a Heisy video is shown, Heisy adds video structured data (a schema.org VideoObject) with the video, its preview picture, the product's name and description, and the upload date. That is what Google reads to show a video in its results. Nothing is added for a product whose video isn't on the page.<\/p>\n\n<p>If your SEO plugin already writes video markup for these pages, you can switch Heisy's off with one line in your theme's functions.php: <code>add_filter( 'heisy_video_schema', '__return_false' );<\/code><\/p><\/dd>\n<dt id=\"the%20video%20is%20first%20in%20the%20gallery.%20how%20does%20that%20work%20with%20my%20theme%3F\"><h3>The video is first in the gallery. How does that work with my theme?<\/h3><\/dt>\n<dd><p>The video's slide is an ordinary gallery slide to WooCommerce, so the slider, the thumbnails and the lightbox keep working. The video plays while its slide is showing, and pauses when a shopper moves to a photo. It works on WooCommerce's standard product page and in block themes that use WooCommerce's product image gallery. A video made before Heisy saved preview pictures shows above the gallery instead, until you pick a newer render.<\/p><\/dd>\n<dt id=\"the%20video%20shows%20even%20though%20i%20chose%20%22only%20where%20i%20place%20it%22\"><h3>The video shows even though I chose \"Only where I place it\"<\/h3><\/dt>\n<dd><p>That setting stops Heisy adding the video <em>by itself<\/em>. It does not remove a <code>[heisy_video]<\/code> shortcode, a Heisy block or a <code>heisy_video()<\/code> call that is already in your theme or page \u2014 those are the \"places\" it means. If your theme's product template contains one, every product with a video shows it there.<\/p>\n\n<p>To hide the video on one product, pick <strong>None<\/strong> in the video list of its Heisy video box.<\/p><\/dd>\n<dt id=\"shortcode%20options\"><h3>Shortcode options<\/h3><\/dt>\n<dd><p>[heisy_video] \u2014 the video player for the product being viewed.<\/p>\n\n<ul>\n<li><code>product=\"123\"<\/code> \u2014 show another product's video.<\/li>\n<li><code>autoplay=\"0\"<\/code> \u2014 do not start by itself (default <code>1<\/code>: plays muted, as browsers require).<\/li>\n<li><code>loop=\"0\"<\/code> \u2014 play once (default <code>1<\/code>).<\/li>\n<li><code>controls=\"1\"<\/code> \u2014 show the play\/pause bar (default <code>0<\/code>).<\/li>\n<li><code>class=\"my-class\"<\/code> \u2014 an extra CSS class on the <code>&lt;video&gt;<\/code>.<\/li>\n<\/ul>\n\n<p>Example: <code>[heisy_video autoplay=\"0\" controls=\"1\" class=\"product-film\"]<\/code><\/p>\n\n<pre><code>[heisy_video_url] \u2014 only the video's address, for your own markup or a custom field. `product=\"123\"` works here too.\n<\/code><\/pre><\/dd>\n<dt id=\"template%20functions%20%28php%29\"><h3>Template functions (PHP)<\/h3><\/dt>\n<dd><p>heisy_video( $product_id = 0, $atts = [] ) returns the <code>&lt;video&gt;<\/code> markup, <code>heisy_video_url( $product_id = 0 )<\/code> returns the address. <code>0<\/code> means the product being viewed. Both return an empty string when the product has no video, so check before printing a wrapper:<\/p>\n\n<pre><code>&lt;?php if ( function_exists( 'heisy_video_url' ) &amp;&amp; heisy_video_url() ) : ?&gt;\n    &lt;div class=\"product-video\"&gt;\n        &lt;?php echo heisy_video( 0, [ 'controls' =&gt; true ] ); ?&gt;\n    &lt;\/div&gt;\n&lt;?php endif; ?&gt;\n<\/code><\/pre><\/dd>\n<dt id=\"template%20functions%20%28twig%20%2F%20timber%29\"><h3>Template functions (Twig \/ Timber)<\/h3><\/dt>\n<dd><p>Timber exposes PHP functions through <code>function()<\/code>:<\/p>\n\n<pre><code>{% set video_url = function('heisy_video_url') %}\n{% if video_url %}\n    &lt;div class=\"product-video\"&gt;\n        {{ function('heisy_video', 0, { controls: true }) }}\n    &lt;\/div&gt;\n{% endif %}\n<\/code><\/pre>\n\n<p>Or with the shortcode:<\/p>\n\n<pre><code>{{ function('do_shortcode', '[heisy_video]') }}\n<\/code><\/pre><\/dd>\n<dt id=\"does%20the%20video%20url%20follow%20my%20cdn%3F\"><h3>Does the video URL follow my CDN?<\/h3><\/dt>\n<dd><p>Yes. The shortcode, the block and both functions ask WordPress for the address of the video and of its poster image every time the page is built (<code>wp_get_attachment_url()<\/code>), which is what CDN and offload plugins rewrite. The exception is a URL copied from the Heisy video box and pasted into a page by hand: that text stays as it was, so prefer the shortcode or the functions. If your product pages are cached, a new video appears once that cache is cleared.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.23.0<\/h4>\n\n<ul>\n<li>Product videos can play as the first slide of the product gallery, and help your products show up in search results.<\/li>\n<\/ul>\n\n<h4>1.22.2<\/h4>\n\n<ul>\n<li>First release in the WordPress.org plugin directory.<\/li>\n<\/ul>","raw_excerpt":"Turn your WooCommerce product photos into short video ads, inside WordPress, and show them on the product page. Requires a paid Heisy plan.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/377059","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=377059"}],"author":[{"embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/heisyai"}],"wp:attachment":[{"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=377059"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=377059"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=377059"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=377059"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=377059"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/zgh.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=377059"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}