shopify 初级入手教程

shopify 初级入手教程

  1. 后台代码框架结构

    在这里插入图片描述
    点击 编辑代码 (edit code)进入代码模板编辑界面
    在这里插入图片描述
    代码模板分为以上几个目录

    Layout:

    主题布局模板,默认情况下是theme.liquid。
    所有的前台界面都走这个界面 所有我们可以把一些公共的文件在这里引入

    Template

    1 模板文件夹 有自己的命名规则
    2 可为 product和catalog 等 提供不同的模板
    3 可通过 一下代码 引入 sections/product-template.liquid 文件

    {% section 'product-template' %}
    
    Sections

    1 组成主题的一个个可复用的模块。
    可通过配置结构 在 可视化模板 里面进行修改文案或者设置
    但是一个模块只有一种文案设置
    2 使用一下代码 引入 snippet 的文件

    同步 assign 定义变量 可被snippet 文件调用
    {%- assign collection = collections[section.settings.collection] -%}
    1 不可传输 变量  已被弃用
    {% include 'product-grid-item' %}
    2 可传输变量
    {% render 'product-grid-item', aa:"55","bb":"66" %}
    // product-grid-item.liquid 
    // <p>name: {{aa}}</p>
    
    snippet

    Liquid代码片段文件

    assets

    img、js、scss 样式 存放的地方即主题使用的所有资源,包括图像、样式表和javascript文件

    config

    一个settings_schema.json文件和一个settings_data.json文件。

    settings_schema.json
    可以配置些公共的变量

    {
     "name": {
       "en": "Extras",
       "zh-CN": "小部件",
      },
      //"name": {"Extras"},
     "settings": [
       {
         "type": "checkbox",
         "id": "show_breadcrumbs",
         "label": "Show breadcrumbs"
       },
       {
         "type": "checkbox",
         "id": "extras-mm-count-down-open",
         "label": "是否开启倒计时"
       },
       {
         "type": "text",
         "id": "extras-mm-count-down-time",
         "label": "请输入结束时间"
       }
     ]
    ``
    #### Locales
    主题的翻译locale文件,为主题提供相关语言的内容。
    
    
  2. sections文件的配置

    {% schema %}
    {  
     "name": "Section name",
     "settings": [
     	{
     		type": "link_list",
             "id": "main_menu_link_list",
             "label": "Navigation",
             "default": "main-menu"
     	}
     ]
     }
     {% endschema %}
    

``

属性描述
name定义section名称
class为section的包装器指定额外的class
tag指定渲染section时的tag
settings使用与settings_schema.json相同
blocksblocks是可以在sections中任意添加排序删除的一个内容(在下面详细讲)
max_blocks指定blocks的最大数量
presets预置即将自己包含在 content_for_index 对象中,添加进主题主页
default默认配置
locales翻译

type的常规输入属性如下

说明
text允许用户输入单行文本字段
textarea允许用户输入多行文本字段
image_picker允许用户上传图片
radio允许用户使用单选按钮
select允许用户从下拉列表中进行选择
checkbox允许用户选中一个框,返回true或false值
range滑块选择,限定范围内的值

type的特殊输入属性如下

说明
color允许用户使用颜色选择器窗口小部件选择颜色
font_picker允许用户从可用字体列表中进行选择
collection允许用户选择商店中可用的产品系列
product允许用户选择商店中可用的产品
blog允许用户从商店中设置的博客列表中进行选择
link_list允许用户从可用菜单中进行选择
page允许用户选择商店中定义的特定页面
url允许用户链接到以下资源之一:文章、博客、收藏、网页或产品或外部url(例如https://example.com)
video_url允许用户选择主题中可用的特定代码段
richtext可以使用richtext设置允许基本格式的文本内容。支持的格式选项有粗体、斜体、下划线、链接和段落。
html允许商家添加自定义html代码,该代码呈现为块的内容。未关闭标记在保存设置时自动关闭。
article允许用户引用Shopify商店中的文章。

信息设置
Shopify还允许将创建主题的作者信息放入侧边栏中,它们只有3个属性:type, content, info

类型是否必填描述
type必填定义选项所需的输入类型。 对于侧边栏设置,这只能是标题或段落
content必填文本内容
info可选向用户提供有关该选项的其他信息。

调用

{{ settings.对应属性的id }}
例如:{{ settings.color_borders }}
  1. 模板语言

    {{ }}表示输出
    {{ product.title }}
    
    {% %}表示逻辑和控制流
    {% if product.available %}
     <h2>Price: $99.99</h2>
     {% else %}
     <h2 class="sold-out">Sorry, this product is sold out.</h2>
     {% endif %}
    
    参考文档
    https://www.shopify.com/partners/shopify-cheat-sheet
  2. 接口类

    官方文档
    https://shopify.dev/docs/themes/ajax-api
    示例
    获取当前用户的购物车数据
    https://域名/cart.js

说明文档
https://blog.csdn.net/clinslia/article/details/105203696
模板代码处理文档
https://www.shopify.com/partners/shopify-cheat-sheet
官方ajax文档
https://shopify.dev/docs/themes/ajax-api

  • 4
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值