shopify模块新增内容或图片
1、后台找到指定的liquid页面,在该页面下方{% schema %} 新增需求
2、添加轮播图功能
{% comment %} 轮播代码 {% endcomment %}{% if block.settings.enable_slider %}<divclass="size-guide-slider swiper"data-slides-per-view="{{ block.settings.slides_per_view | default: 2 }}"><div class="swiper-wrapper">{% for slide in section.blocks %}{% if slide.type == 'slide' %}<div class="swiper-slide">{% if slide.settings.slide_image %}<imgsrc="{{ slide.settings.slide_image | image_url: width: 2000 }}"alt="{{ slide.settings.slide_title }}"loading="lazy"width="{{ slide.settings.slide_image.width }}"height="{{ slide.settings.slide_image.height }}">{% endif %}{% if slide.settings.slide_title != blank %}<div class="slide-title">{{ slide.settings.slide_title }}</div>{% endif %}</div>{% endif %}{% endfor %}</div><div class="swiper-pagination"></div><div class="swiper-button-prev"></div><div class="swiper-button-next"></div></div>{% endif %}
3、补充JQ
<script type="text/javascript" defer="">document.addEventListener('DOMContentLoaded', function () {(() => {const node = document.querySelector('#shopify-section-{{section.id}}');const carousels = node.querySelectorAll('[carousel]');let swipers = [];carousels.forEach((carousel, i) => {const swiper = new Swiper(carousel, {allowTouchMove: false,loop: true,});swipers.push(swiper);});const contentCarousel = node.querySelector('[content]');const prevEl = node.querySelector('[prev]');const nextEl = node.querySelector('[next]');const swiper = new Swiper(contentCarousel, {effect: 'fade',loop: true,fadeEffect: {crossFade: true,},navigation: {nextEl: nextEl,prevEl: prevEl,},});swiper.controller.control = swipers;swiper.controller.control = swipers;swiper.controller.control = swipers;})();});document.addEventListener('DOMContentLoaded', function () {// Function to initialize tabsfunction initializeTabs() {// Get all tab headersconst tabHeaders = document.querySelectorAll('.tab-header');// Get all tab content elementsconst tabContents = document.querySelectorAll('.tab-content');// Add click event listener to each tab headertabHeaders.forEach(function (header) {header.addEventListener('click', function () {// Remove 'active' class from all headers and contentstabHeaders.forEach(function (item) {item.classList.remove('active');});tabContents.forEach(function (content) {content.classList.remove('active');});// Add 'active' class to the clicked header and corresponding contentthis.classList.add('active');document.getElementById(this.getAttribute('data-tab')).classList.add('active');});});}// Initialize tabs when the document is readyinitializeTabs();// Initialize size guide sliderconst sizeGuideSlider = new Swiper('.size-guide-slider', {slidesPerView: parseInt(document.querySelector('.size-guide-slider').dataset.slidesPerView),slidesPerGroup: parseInt(document.querySelector('.size-guide-slider').dataset.slidesPerView),spaceBetween: 30,slidesPerGroup: 2,loop: false,pagination: {el: '.swiper-pagination',clickable: true,},navigation: {nextEl: '.swiper-button-next',prevEl: '.swiper-button-prev',},});});
</script>
后台的tab 模块区域 ,
{% schema %}
{"name": "Tab Content","settings": [{"type": "url","id": "video_url","label": "Video URL","info": "Enter the URL of the video you want to display."},{"type": "image_picker","id": "cover_image","label": "Cover Image","info": "Select the cover image that appears before the video plays."}],"blocks": [{"type": "FAQ","name": "FAQ","limit": 1,"settings": [{"type": "text","id": "tab_title","label": "Tab Title"},{"type": "image_picker","id": "icon_image","label": "Tab Icon"},{"type": "number","id": "icon_width","label": "Icon Width","info": "Enter the width of the icon in pixels.","default": 50},{"type": "number","id": "icon_height","label": "Icon Height","info": "Enter the height of the icon in pixels.","default": 50}]},{"type": "faq_item","name": "FAQ Item","limit": 20, // 可以限制 FAQ 项的数量"settings": [{"type": "text","id": "question","label": "Question","default": "Do you ship overseas?"},{"type": "richtext","id": "answer","label": "Answer","default": "<p>Yes, we ship all over the world. Shipping costs will apply, and will be added at checkout. We run discounts and promotions all year, so stay tuned for exclusive deals.</p>"}]},{"type": "size_guide","name": "Size Help","limit": 1,"settings": [{"type": "checkbox","id": "enable_slider","label": "Enable Image Slider","default": false},{"type": "range","id": "slides_per_view", // 一屏幕显示几个"min": 1,"max": 4,"step": 1,"label": "Slides Per View","default": 2},{"type": "text","id": "tab_title","label": "Tab Title"},{"type": "image_picker","id": "icon_image","label": "Tab Icon"},{"type": "number","id": "icon_width","label": "Icon Width","info": "Enter the width of the icon in pixels.","default": 50},{"type": "number","id": "icon_height","label": "Icon Height","info": "Enter the height of the icon in pixels.","default": 50},{"type": "richtext","id": "size_help_text","label": "Size help text"},{"type": "image_picker","id": "size_guide_image","label": "Size help image"},{"type": "video","id": "video","label": "Size help video"},{"type": "checkbox","id": "enable_video_looping","label": "Enable video looping"}]},{"type": "slide","name": "Slider Image", // 轮播图"settings": [{"type": "image_picker","id": "slide_image","label": "Slide Image"},{"type": "text","id": "slide_title","label": "Slide Title","default": "Slide Title"}]},{"type": "help_text_item","name": "Help Text Item","limit": 20, // 可以限制 FAQ 项的数量"settings": [{"type": "text","id": "helpText","label": "title","default": "title"},{"type": "richtext","id": "helpContent","label": "content","default": "<p>conent</p>"}]},{"type": "materials_care","name": "Materials and Care","limit": 1,"settings": [{"type": "text","id": "tab_title","label": "Tab Title"},{"type": "image_picker","id": "icon_image","label": "Tab Icon"},{"type": "number","id": "icon_width","label": "Icon Width","info": "Enter the width of the icon in pixels.","default": 50},{"type": "number","id": "icon_height","label": "Icon Height","info": "Enter the height of the icon in pixels.","default": 50},{"type": "header","content": "Material content"},{"type": "text","id": "material_title","label": "Title"},{"type": "richtext","id": "material_content","label": "Content"},{"type": "header","content": "Care"},{"type": "text","id": "care_title","label": "Title"},{"type": "richtext","id": "care_content","label": "Content"}]}]
}
{% endschema %}
4、后台效果:

相关文章:
shopify模块新增内容或图片
1、后台找到指定的liquid页面,在该页面下方{% schema %} 新增需求 2、添加轮播图功能 {% comment %} 轮播代码 {% endcomment %}{% if block.settings.enable_slider %}<divclass"size-guide-slider swiper"data-slides-per-view"{{ block.setti…...
【EMNLP2024】基于多轮课程学习的大语言模型蒸馏算法 TAPIR
近日,阿里云人工智能平台PAI与复旦大学王鹏教授团队合作,在自然语言处理顶级会议EMNLP 2024 上发表论文《Distilling Instruction-following Abilities of Large Language Models with Task-aware Curriculum Planning》。文章提出了一个名为 TAPIR 的知…...
置信传播算法复现
本文所涉及所有资源均在 传知代码平台 可获取。 目录 一.背景及意义介绍 1. 实际应用广泛 2. 理论研究重要性...
【在Linux世界中追寻伟大的One Piece】poll代码改写
目录 1 -> poll代码改写 1 -> poll代码改写 结合select代码,将select server更改成为pollserver,不是一件困难的事情。 #pragma once#include <iostream> #include <string> #include <poll.h> #include <memory> #inc…...
C++builder中的人工智能(17):神经网络中的自我规则非单调(Mish)激活函数
在这篇文章中,我们将探讨自我规则非单调激活函数——Mish在神经网络中的应用。了解Mish函数的工作原理,将有助于您在使用C IDE构建C应用程序时更加得心应手。 目录 神经网络中的激活函数是什么?能在C中创建激活函数吗?自我规则非…...
Java 的 Scanner 类:控制台输入与文件扫描
Java 的 Scanner 类是一个非常方便的工具类,主要用于从控制台或文件中扫描输入数据。虽然它也可以用于扫描文件内容,但我们通常更喜欢它用于控制台输入,因为扫描文件可以通过文件流来完成。接下来,我们将通过几个简单的示例来讲解…...
使用纯HTML和CSS绘制圣诞树:打造网页中的冬日奇景
### HTML & CSS 实现节日圣诞树:一步步打造你的冬季主题网页 在这篇文章中,我们将使用纯HTML和CSS创建一棵节日圣诞树。通过简单的代码,您可以在网页上实现一棵带有星星、彩球装饰的圣诞树,为网站增添节日氛围。 ### 实现思…...
深度学习-图像评分实验(TensorFlow框架运用、读取处理图片、模型建构)
目录 0、实验准备 ①实验环境 ②需要下载的安装包 ③注意事项(很关键,否则后面内容看不懂) ④容易出现的问题 1、查看数据并读取数据。 2、PIL库里的Image包进行读取(.resize更改图片尺寸,并将原始数据归一化处…...
羲和数据集收集器0.9
为了进一步完善代码,增强其文字抓取能力和文件读取能力,我们做以下改进: 增强 DOCX 文档的文本提取:不仅提取段落和文本框内容,还提取表格中的文本。 增强 PDF 文档的文本提取:不仅提取页面文本和注释,还提取表格中的文本。 优化文本清理:确保文本清理更加彻底,避免不…...
哈尔滨等保测评常见误区破解:避免陷入安全盲区
在当今信息化社会,网络安全已成为各行各业不可忽视的重要议题。等级保护(简称“等保”)作为我国网络安全的基本制度,旨在通过划分不同安全保护等级,对信息系统实施分等级的安全保护。然而,在实施等保测评的…...
Python学习------第四天
Python的判断语句 一、布尔类型和比较运算符 二、 if语句的基本格式 if语句注意空格缩进!!! if else python判断语句的嵌套用法:...
【Django】配置文件 settings.py
【Django】配置文件 settings.py 和Flask框架不同,Django框架项目在创建的时会默认生成配置文件settings.py,在深入学习Django框架前,我们先简单了解settings.py文件内非注释代码, from pathlib import Path BASE_DIR Path(__f…...
量化交易系统开发-实时行情自动化交易-Okex K线数据
19年创业做过一年的量化交易但没有成功,作为交易系统的开发人员积累了一些经验,最近想重新研究交易系统,一边整理一边写出来一些思考供大家参考,也希望跟做量化的朋友有更多的交流和合作。 接下来聊聊基于Okex交易所API获取K线数…...
【基于轻量型架构的WEB开发】课程 12.5 数据回写 Java EE企业级应用开发教程 Spring+SpringMVC+MyBatis
12.5 数据回写 12.5.1 普通字符串的回写 接下来通过HttpServletResponse输出数据的案例,演示普通字符串的回写,案例具体实现步骤如下。 1 创建一个数据回写类DataController,在DataController类中定义 showDataByResponse()方法ÿ…...
apache-seata-2.1.0 AT模式使用篇(配置简单)
最近在研究seata的AT模式,先在本地搭建了一个演示demo,看看seata是如何使用的。在网上搜的demo,配置相对来说都比较多。我最终搭建的版本,配置较少,所以写篇文章分享下,希望能帮到对seata感兴趣的小伙伴。先…...
(金蝶云星空)客户端追踪SQL
快捷键 ShitfCtryAltM 点击开始、最后操作功能、然后查看报告 SQL报告...
OAK相机:纯视觉SLAM在夜晚的应用
哈喽,OAK的朋友们,大家好啊,今天这个视频主要想分享一下袁博士团队用我们的OAK相机产出的新成果 在去年过山车SLAM的演示中,袁博士团队就展示了纯视觉SLAM在完全黑暗的环境中的极高鲁棒性。 现在袁博士团队进一步挖掘了纯视觉的潜…...
发送方确认
在使用RabbitMQ的时候,可以通过消息持久化来解决因为服务器的异常而导致的消息就是,但是还有一个问题,当消息的生产者将消息发送出去之后,消息到底有没有正确地到达服务器呢?如果消息在到达服务器之前已经丢失…...
如何使用HighBuilder前端开发神器
一,前言 前端开发是网页和应用程序设计与开发中的一个重要分支,直接涉及用户界面的构建和用户与网页的交互。前端是用户在浏览器中看到的部分,负责为用户提供良好的体验。 二,前段介绍 1. 前端的组成 前端开发主要由三个核心技…...
发现了NitroShare的一个bug
NitroShare 是一个跨平台的局域网开源网络文件传输应用程序,它利用广播发现机制在本地网络中找到其他安装了 NitroShare 的设备,从而实现这些设备之间的文件和文件夹发送。 NitroShare 支持 Windows、macOS 和 Linux 操作系统。 NitroShare允许我们为…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...
云原生玩法三问:构建自定义开发环境
云原生玩法三问:构建自定义开发环境 引言 临时运维一个古董项目,无文档,无环境,无交接人,俗称三无。 运行设备的环境老,本地环境版本高,ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...
