Shopify 主题样式开发

这篇具有很好参考价值的文章主要介绍了Shopify 主题样式开发。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

最近接了个Shopify模板修改的需求,第一次接触这个,摸着石头过河,官方只有英文文档,看起来很吃力,各种搜索查资料,查到的大多都是开店铺和店铺装修的介绍,本地开发使用Shopify CLI工具的文章很少,或者就是使用Theme Kit工具,Shopify 的历史和发展这里不做介绍,感兴趣可以自己查一下,这里记录一下自己使用Shopify CLI开发工具进行本地开发的过程。

参考文章

如何创建shopify主题模板本地开发环境(用shopify-cli)

Shopify各种入口

Shopify API 文档
Shopify 合作伙伴首页
Shopify 商店后台登录

搭建本地开发环境

参考:Shopify CLI for themes
本地开发环境搭建可参考如何创建shopify主题模板本地开发环境(用shopify-cli)

这里简单介绍下,

  1. 安装 Shopify CLI 工具
    Shopify Cli 是一个命令行工具,现在更新到 3.x 版本了,
    Shopify Cli 3.x依赖Node.js 16或更高版本,Ruby+Devkit 3.0;

安装完Ruby之后就可以使用gem工具了,打开cmd使用gem安装shopify-cli ,

~~gem install shopify-cli~~ 

如果还在使用 Shopify CLI 2.x,需要先卸载掉

gem uninstall shopify-cli

Shopify CLI 3.x 安装

npm install -g @shopify/cli @shopify/theme
  1. 初始化新主题
shopify theme init

根据提示输入模版的名称,这一步操作会新建一个文件夹并Dawn主题将克隆到文件夹中。
Dawn是 Shopify 的参考主题,专为性能,灵活性和易用性而构建。
Shopify 主题样式开发
3. 连接到 Shopify 商店

~~shopify login --store mystore.myshopify.com  # mystore 为注册或添加的店铺地址~~ 

Shopify CLI 3.x 使用这种方式登录店铺失败,提示command login not found

# shopify cli3.x 要这样连接店铺
shopify theme dev --store mystore.myshopify.com  # mystore 为注册或添加的店铺地址
  1. 运行本地环境
# Shopify CLI 2.x
~~shopify theme serve~~ 

# Shopify CLI 3.x
shopify theme dev

我在合作伙伴账号管理平台创建开发商店,上一步登录使用开发商店地址登录,不知道是不是因为合作伙伴账户设置里面的应用商店没有注册的原因,本地启动会报错;
这样就只能去shopify官网注册一个试用14天的店铺,用14试用的店铺本地启动是可以的。
Shopify 主题样式开发

目录结构和组件类型

先了解一下项目的目录结构

# Shopify 主题目录结构
└── theme
    ├── assets
    ├── config
    ├── layout
    ├── locales
    ├── sections
    ├── snippets
    └── templates
        └── customers

assets

指向标题为“资产”的部分的锚定链接
该目录包含主题中使用的所有资源,包括图像、CSS 和 JavaScript 文件。
使用asset_url液态网址过滤器来引用模版中的素材资源。

config

该目录包含主题的配置文件。配置文件在主题编辑器的主题设置区域中定义设置。

layout

该目录包含主题的布局文件,通过该文件呈现模板文件。

locales

该目录包含主题的语言翻译设置文件,这些文件用于提供已翻译的内容。

sections

该目录包含主题的块部分。

snippets

该目录包含 Liquid 文件,这些文件托管较小的可重用代码片段。您可以使用 Liquid 渲染标记在整个主题中引用这些代码段。

templates

该目录包含主题的模板文件,这些文件控制每种类型的页面上呈现的内容。
该目录包含以客户为中心的页面(如登录名和帐户概述页面)的模板文件。

详细内容可查看官方文档说明,主题介绍

开发过程

需求:现在要求在产品详情页增加一些自定义内容,我选择开发一个分区模块,然后在模板中引用。

说明:这里对liquid模板语言不做过多说明,可以查相关文档。

参考文档:Liquid 模板语言中文文档、LiquidJS

开发:在sections增加一个自定义的liquid文件,custom-section.liquid

<style>
  .custom-box {
    color: #CCC;
    text-align: center;
  }
</style>

<div class="custom-box">
  <p>自定义一个 sction</p>
  <p>这里可以写 HTML 内容</p>
</div>

<script>

</script>

{% schema %}
  {
    "name": "Custom Sction",
    "class": "custom-section",
    "settings": [
      
    ],
    "blocks": [
      
    ],
    "presets": [{
      "name": "Custom Sction",
      "blocks": [
        
      ]
    }]
  }
{% endschema %}

本地启动,预览
Shopify 主题样式开发

代码解析

liquid 文件中CSS、HTML、Javascript 代码和在 HTML 文件中编写差不多,外部CSS、Javascript 引入有两种方式,
本地引入资源都放在 assets 目录里

  • CSS 样式引入
// liquid 中引入样式表
<link rel="stylesheet" media="screen and (max-width:768px)" href="{{ 'custom-mobile.css' | asset_url }}">
// 或
{{ 'custom-base.css' | asset_url | stylesheet_tag }}
  • JS 引入
// liquid 中引入js
<script src="{{ 'swiper-3.4.2.jquery.min.js' | asset_url }}" defer="defer"></script>
// 或
{{ 'custom-script.js' | asset_url | script_tag }}
  • 图片资源可以本地引入或者放到服务器上
// 图片资源引入
<img src="{{ 'icon.svg' | asset_url }}" width="120" height="40" alt="icon">

schema 中写的就是模板相关配置了,没有设置name的话,在后台编辑模板时看不到自定义 section。

将代码上传到主题中

  • 方式1:可以初始化一个git库,把代码提交到github,然后进入商店后台模板库,添加模板从 GitHub 连接,通过github授权,连接Shopifygithub
    Shopify 主题样式开发
  • 方式2:或者在后台中修改
    在 Shopify 商店后台中,转到在线商店>模版。
    找到要编辑的主题,然后单击“操作”>“编辑代码”。
    这样就会看到一个和本地环境差不多的项目代码结构,选择“新增 section”,将本地的代码复制、粘贴、保存。

在后台中编辑模板,如果是 Assets 目录下增加资源,支持文件上传,
Shopify 主题样式开发

模板更新完之后,在本地执行shopify theme pull,拉取主题最新代码,这个操作可能会让本地没有提交的代码被替换掉,本地注意做好拷贝,有问题好查看修复。

记录

问题1:js 代码不生效
在开发过程了,发现 js 代码不生效,这个问题太奇葩了,找了很久也没找到原因,后来在别人的博客记录中才知道,预览或者发到正式环境就没问题。文章来源地址https://www.toymoban.com/news/detail-436537.html

到了这里,关于Shopify 主题样式开发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 最近给shopify跨境电商网站搞google搜索引擎的seo优化,整理了一些内容

     接到一个网站,首先要做一些工作,然后按照这个步骤做好每一步,网站的搜索排名会有明显的效果。 对网站进行技术审核,以确保它符合搜索引擎的技术要求。 研究并确定目标。 优化网站内容,以便更好地针对目标。 建立高质量的外部链接,以提高

    2024年02月10日
    浏览(77)
  • Wokiee多用途Shopify主题下载,打造卓越电子商务网站

    在如今竞争激烈的电子商务市场,拥有一个卓越的网站设计是吸引用户和增加销售的关键。Wokiee多用途Shopify主题将成为您实现这一目标的利器。它提供了丰富的功能和灵活的设计选项,帮助您打造一个令人印象深刻的电子商务网站。立即下载Wokiee主题,将您的在线业务推向新

    2024年02月09日
    浏览(41)
  • Hexo 主题开发之自定义模板

    关于 Hexo 如何开发主题包的教程已经是大把的存在了,这里就不再赘述了。这篇文章主要讲的是作为一个主题的开发者,如何让你的主题具有更好的扩展性,在用户自定义修改主题后,能够更加平易升级主题。 Hexo 提供两种方式安装主题包: 直接在 themes 目录下直接存放主题

    2024年02月04日
    浏览(59)
  • Shopify开发入门-前端保姆级教程

    本文旨在介绍Shopify开发入门、环境、配置等,帮助开发者配置环境、了解各个开发模式的区别及用途;已有Shopify开发经验者可退出,以免浪费你的宝贵时间。 本文5k字+,图片、链接、代码块较多,请耐心阅读~ 最近在调研Shopify开发,对其也有了一定的认识、了解;即将这些

    2024年02月16日
    浏览(39)
  • 中东 Shopify 如何使用 Bytebase 构建一站式数据库开发工作流

    Salla 是一家 2016 年成立,位于沙特麦加的自建站电商平台。 作为中东 Shopify,其最大的特点是支持阿拉伯语建站,并且提供更多适应中东地区特点的本地化服务。截止目前,已有 47,000 家店铺入驻 Salla,商品销售总额达到了 43 亿美元,近三年保持了接近 100% 的增速。 与 Sall

    2024年02月09日
    浏览(46)
  • Android 主题 vs 样式

    关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。 我们继续总结学习 基础知识 ,温故知新。 本文我们总结下 android主题与样式的异同。 Android样式系统

    2024年02月07日
    浏览(41)
  • Jupyter notebook修改背景主题

    打开Anaconda Prompt,输入以下内容 1. pip install --upgrade jupyterthemes 下载对应背景主题包 出现Successfully installed jupyterthemes-0.20.0 lesscpy-0.15.1时,说明已经下载安装完成 2. jt -l 查看背景主题列表 3. jt -t 主题名称(主题名称如上所示) 比如说这里我选择第一个背景主题进行更换,输入

    2024年02月04日
    浏览(42)
  • Visual Studio 主题和背景设置

    平日里敲代码的过程难免会有点枯燥,,但是一个舒适、好看的编译器界面会让你的工作更加愉悦。本篇博客将介绍如何设置vs的主题和背景。 首先我们在编译器最上方的的一栏中找到工具。 然后再选项中寻找主题。 我们可以看到提供了四种主题,我们可以从中挑选自己喜

    2024年02月05日
    浏览(60)
  • Android设置夜间模式的主题样式

    在 Android 中设置夜间模式,你需要创建一个名为  values-night  的资源文件夹,并在这个文件夹下放置一个与  values  文件夹中的样式文件相对应的主题配置文件。这样系统会根据设备的当前模式(日间或夜间)自动选择合适的主题。 以下是如何设置夜间模式主题的基本步骤:

    2024年01月18日
    浏览(41)
  • Avalonia 中的样式和控件主题

    在 Avalonia 中,样式是定义控件外观的一种方式,而控件主题则是一组样式和资源,用于定义应用程序的整体外观和感觉。本文将深入探讨这些概念,并提供示例代码以帮助您更好地理解它们。 样式是什么? 样式是一组属性,用于定义控件的外观。它们可以包括背景色、边框

    2024年04月15日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包