shopify 主题 blog 列表调用

 

简述:{% assign blog_handle = request.path | split: &#39;/&#39; | last %}{% assign blog = blogs[blog_handle] %}{% paginate blog.articles by 2 %} {% if blog.articles.size > 0 %} {% for article in blog.articles %} <div class="ds-flex jc-c ai-c"> <a href="{{ article.url }}">{{ article.title }}</a> </div> {% endfor %} {% else %} <p>No related blogs found!</p> {% endif %} <div class="pagination"> {{ paginate | default_pagination }} </div>{% endpaginate %}

详情:

{% assign blog_handle = request.path | split: '/' | last %} 

{% assign blog = blogs[blog_handle] %} 


{% paginate blog.articles by 2 %}

  {% if blog.articles.size > 0 %}

    {% for article in blog.articles %}

      <div class="ds-flex jc-c ai-c">

        <a href="{{ article.url }}">{{ article.title }}</a>

      </div>

    {% endfor %}

  {% else %}

    <p>No related blogs found!</p>

  {% endif %}

  <div class="pagination">

    {{ paginate | default_pagination }}

  </div>

{% endpaginate %}






自定义

 blog 列表调用+分页调用


<style>

    .header-wrapper{position: fixed;background: rgba(0, 0, 0, 0);backdrop-filter: unset;}

    .mega-menu[open] .mega-menu__content{background: rgba(0, 0, 0, .5)!important}

    .navbar-fixed {background: rgba(0, 0, 0, .5) !important;}

    



h2{font-size: 98px;margin: 2rem 0;}

h3{font-size: 72px;margin: 2rem 0;}

h4{font-size: 28px;margin: 1rem 0;}


/* .HeaderImageContent { justify-content: left;}

.HeaderImageContent h2 {text-align: left;} */

.Reviews>div>img{width: 100%;;}








.Installation-Guide-nav-box{padding: 2rem;background: linear-gradient(#000, #EB6100);}

.IGN-list span{top: -10px;}

.IGN-list{color: #fff;}



.Installation-Guide-blog-box .Installation-Guide-blog-list{padding: 1% 0;}

.Installation-Guide-blog-box .Installation-Guide-blog-list:not(:nth-child(-n+1)){margin-top: 3%;padding-top: 0;}

.Installation-Guide-blog-box .Installation-Guide-blog-list:nth-of-type(1){border-bottom: 1px solid #363636;}

.Installation-Guide-blog-box .Installation-Guide-blog-list>div{width: 20%;text-align: center;}

.Installation-Guide-blog-box .Installation-Guide-blog-list:not(:nth-child(-n+1))>div{height: 120px;}

.Installation-Guide-blog-box .Installation-Guide-blog-list>div:nth-of-type(2){width: 40%;}

.Installation-Guide-blog-box .Installation-Guide-blog-list>div img{height: 100%;}

.Installation-Guide-blog-box .Installation-Guide-blog-list a{color: #fff;}

    </style>

   


     <div class="HeaderImage">

            <div class="HeaderImageWarp">

              <div class="width-center page-width">

                  <div class="HeaderImageContent">

                    <h2 class="">

                        Guide Your<br><span class="cl-orange">Installation</span>

                      </h2>

                  </div>

              </div>

            </div>

            <img src="https://cdn.shopify.com/s/files/1/0793/0462/2273/files/Installation-Guide__Header_Image.png?v=1735122925" alt="">

        </div>


        <div class="Installation-Guide-nav">

            <div class="Installation-Guide-nav-box ds-flex jc-se">

                {% assign menu_handle = 'installation-guide-nav' %}

                {% for link in linklists[menu_handle].links %}

                    {% assign blog_handle = link.title | handleize %} <!-- 将导航标题转换为博客句柄 -->

                    {% assign blog = blogs[blog_handle] %} <!-- 根据句柄找到对应的博客 -->

                    {% if blog and blog.articles.size > 0 %}

                        <a href="{{ link.url }}" class="IGN-list p-r color-s32">

                            {{ link.title }}

                            <span class="p-a color-s22">{{ blog.articles.size }}</span>

                        </a>

                    {% else %}

                        <!-- 如果没有找到博客,显示为 0 -->

                        <a href="{{ link.url }}" class="IGN-list p-r color-s32">

                            {{ link.title }}

                            <span class="p-a color-s22">0</span>

                        </a>

                    {% endif %}

                {% endfor %}

            </div>

        </div>

        




<div class="Installation-Guide-blog page-width">

    <div class="Installation-Guide-blog-box">

        {% assign blog_handle = request.path | split: '/' | last %} 

        {% assign blog = blogs[blog_handle] %} 


        <div class="Installation-Guide-blog-list ds-flex">

            <div>Illustration</div>

            <div>Name</div>

            <div>Installation Drawing</div>

            <div>Installation Video</div>

        </div>


        {% paginate blog.articles by 2 %}

            {% if blog.articles.size > 0 %}

                {% for article in blog.articles %}

                    <div class="Installation-Guide-blog-list ds-flex">

                        <div><img src="https://cdn.shopify.com/s/files/1/0793/0462/2273/files/customsized-Letter-signs_hot-img.png?v=1735185075" alt=""></div>

                        <div class="ds-flex jc-c ai-c"><a href="{{ article.url }}"> {{ article.title }}</a></div>

                        <div><img src="https://cdn.shopify.com/s/files/1/0793/0462/2273/files/customsized-Letter-signs_hot-img.png?v=1735185075" alt=""></div>

                        <div><img src="https://cdn.shopify.com/s/files/1/0793/0462/2273/files/customsized-Letter-signs_hot-img.png?v=1735185075" alt=""></div>

                    </div>

                {% endfor %}

            {% else %}

                <p>No related blogs found!</p>

            {% endif %}


            <!-- Show pagination only if there are more than 1 page -->

            {% if paginate.pages > 1 %}

                <div class="pagination-wrapper">

                    <nav class="pagination" role="navigation" aria-label="Pagination">

                        <ul class="pagination__list list-unstyled" role="list">

                            <!-- Previous Page Link -->

                            {% if paginate.previous %}

                                <li>

                                    <a href="{{ paginate.previous.url }}" class="pagination__item pagination__item--next pagination__item-arrow link motion-reduce" aria-label="Next page">

                                        <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">

                                            <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"></path>

                                        </svg>

                                    </a>

                                </li>

                            {% endif %}


                            <!-- Page Number Links -->

                            {% assign total_pages = paginate.pages %}

                            {% for page_number in (1..total_pages) %}

                                {% if page_number == paginate.current_page %}

                                    <li>

                                        <a href="?page={{ page_number }}" class="pagination__item pagination__item--current light" aria-current="page" aria-label="Page {{ page_number }}">{{ page_number }}</a>

                                    </li>

                                {% else %}

                                    <li>

                                        <a href="?page={{ page_number }}" class="pagination__item link" aria-label="Page {{ page_number }}">{{ page_number }}</a>

                                    </li>

                                {% endif %}

                            {% endfor %}


                            <!-- Next Page Link -->

                            {% if paginate.next %}

                                <li>

                                    <a href="{{ paginate.next.url }}" class="pagination__item pagination__item--prev pagination__item-arrow link motion-reduce" aria-label="Previous page">

                                        <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">

                                            <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"></path>

                                        </svg>

                                    </a>

                                </li>

                            {% endif %}

                        </ul>

                    </nav>

                </div>

            {% endif %}

        {% endpaginate %}

    </div>

</div>