Shopify - 视频和特色媒体
Shopify - Video & Feature Media
对于我的每个产品,我都会有 1 张图片和 1 个视频。
基本上,我试图在我的产品模板的一部分中显示图片,而在其他地方显示视频。
我的照片永远是第一个上传的媒体(因此是“精选媒体”),视频永远是第二个。
因此我想将此代码从“显示 featured_media”更新为“在媒体列表中显示视频”:
{%- assign featured_media = product.selected_or_first_available_variant.featured_media | default: product.featured_media -%}
{% for media in product.media %}
{% include 'media', media: media, featured_media: featured_media, height: height, enable_image_zoom: enable_image_zoom, image_zoom_size: product_image_zoom_size, image_scale: product_image_scale %}
{%- endfor -%}
<noscript>
{% capture product_image_size %}{{ height }}x{% endcapture %}
<img src="{{ featured_media | img_url: product_image_size, scale: product_image_scale }}" alt="{{ featured_media.alt }}" id="FeaturedMedia-{{ section.id }}" class="product-featured-media" style="max-width: {{ height }}px;">
</noscript>
我试过 featured_media 分配但不知道如何简单地提取视频(或第二媒体)并正确显示它。
这是您可以使用的想法。
当您点击产品管理页面上的 image/video 时,您可以设置 alt text
。当你遍历 product.media
的集合时,这个值可以被 media.alt
调用。检查 media.alt
的条件并根据需要显示或隐藏内容。
{% for media in product.media %}
{% if media.alt contains 'myVideo' %}
do something
{% endif %}
{% endfor %}
另一个例子,这个检查媒体类型 media.media_type
并显示内容。
{% for media in product.media %}
{% case media.media_type %}
{% when 'image' %}
<div class="product-image">
<img src="{{ media | img_url: '100x100'}}" alt="{{ media.alt }}">
</div>
{% when 'external_video' %}
<div class="product-single__media">
{{ media | external_video_tag }}
</div>
{% when 'video' %}
<div class="product-single__video">
{{ media | video_tag: controls: true }}
</div>
{% when 'model' %}
<div class="product-single__media">
{{ media | model_viewer_tag }}
</div>
{% else %}
<div class="product-single__media">
{{ media | media_tag }}
</div>
{% endcase %}
{% endfor %}
对于我的每个产品,我都会有 1 张图片和 1 个视频。 基本上,我试图在我的产品模板的一部分中显示图片,而在其他地方显示视频。
我的照片永远是第一个上传的媒体(因此是“精选媒体”),视频永远是第二个。
因此我想将此代码从“显示 featured_media”更新为“在媒体列表中显示视频”:
{%- assign featured_media = product.selected_or_first_available_variant.featured_media | default: product.featured_media -%}
{% for media in product.media %}
{% include 'media', media: media, featured_media: featured_media, height: height, enable_image_zoom: enable_image_zoom, image_zoom_size: product_image_zoom_size, image_scale: product_image_scale %}
{%- endfor -%}
<noscript>
{% capture product_image_size %}{{ height }}x{% endcapture %}
<img src="{{ featured_media | img_url: product_image_size, scale: product_image_scale }}" alt="{{ featured_media.alt }}" id="FeaturedMedia-{{ section.id }}" class="product-featured-media" style="max-width: {{ height }}px;">
</noscript>
我试过 featured_media 分配但不知道如何简单地提取视频(或第二媒体)并正确显示它。
这是您可以使用的想法。
当您点击产品管理页面上的 image/video 时,您可以设置 alt text
。当你遍历 product.media
的集合时,这个值可以被 media.alt
调用。检查 media.alt
的条件并根据需要显示或隐藏内容。
{% for media in product.media %}
{% if media.alt contains 'myVideo' %}
do something
{% endif %}
{% endfor %}
另一个例子,这个检查媒体类型 media.media_type
并显示内容。
{% for media in product.media %}
{% case media.media_type %}
{% when 'image' %}
<div class="product-image">
<img src="{{ media | img_url: '100x100'}}" alt="{{ media.alt }}">
</div>
{% when 'external_video' %}
<div class="product-single__media">
{{ media | external_video_tag }}
</div>
{% when 'video' %}
<div class="product-single__video">
{{ media | video_tag: controls: true }}
</div>
{% when 'model' %}
<div class="product-single__media">
{{ media | model_viewer_tag }}
</div>
{% else %}
<div class="product-single__media">
{{ media | media_tag }}
</div>
{% endcase %}
{% endfor %}