
今回の記事は Shopify App Store で提供されている、ブログスライダー・お知らせスライダーアプリについての記事です。
Shopifyストアでブログやお知らせを運用している方の中には、「記事を一覧でもっと見やすく表示したい」「トップページにブログのスライダーを設置したい」と考えている方も多いのではないでしょうか。ブログ一覧をスライダー形式で表示することで、限られたスペースでも複数の記事を効果的にお客様へ届けることができます。
この記事では、Shopifyストアにブログ一覧スライダーを導入できるおすすめアプリ6選と、コーディングによる実装方法をあわせてご紹介します。
ブログスライダーとは、ブログ記事やお知らせを横方向にスライドさせて表示するUIコンポーネントのことです。カルーセルとも呼ばれ、ページの限られたスペースに複数のコンテンツを収めることができます。
Shopifyストアにおいては、トップページや商品ページなどにブログ記事のスライダーを設置することで、新着情報やキャンペーン告知、ブランドストーリーなどをお客様に自然に届けることができます。通常の一覧表示と比べて、画面を圧迫せずに多くの記事を表示できるのが大きなメリットです。
参考記事:
ブログ一覧スライダーをShopifyストアに導入することで、以下のようなメリットがあります。
限られたスペースを有効活用できる: 横スクロールで複数の記事を表示するため、ページの縦幅を取りすぎません。トップページのファーストビューを圧迫せずにお知らせを掲載できます。
お知らせ・新着情報が目に留まりやすくなる: 自動再生やスライドアニメーションにより、静的な一覧表示よりもお客様の目を引きやすくなります。
回遊率の向上が期待できる: ブログ記事へのリンクを視認性の高い形で設置できるため、お客様がブログページへ遷移しやすくなります。
ストアのデザイン性が向上する: カード形式のスライダーは見た目にも洗練された印象を与え、ストアのブランドイメージを高めます。
お知らせの即時性を確保できる: セールやキャンペーン、入荷情報などをブログ記事として投稿し、スライダーで目立つ位置に表示することで、タイムリーな情報発信が可能です。
レスポンシブ対応がしやすい: スライダーはPC・タブレット・スマホそれぞれで表示数を調整しやすく、デバイスに応じた最適な表示が実現できます。
ブログスライダーアプリを選ぶ際は、以下のポイントを確認しましょう。
Shopifyストアのブログ記事やお知らせをスライダー形式で一覧表示できるアプリ。8種類のスタイルプリセットとノーコードカスタマイズで、ストアに合ったブログスライダーをすぐに導入できます。
開発者: UnReact Inc.

クリッカブルな画像バナースライドショーを作成できるアプリ。フルワイドやボックスレイアウトに対応し、バナー画像をスライダーで表示できます。
開発者: Viktoriia Pavlova

AIを使ってブログ記事を全自動で生成・投稿できるアプリ。SEOに最適化された記事を自動作成し、ブログの運用コストを大幅に削減できます。
開発者: Go Plus NZ

Notion風のブログエディタでShopifyのブログ記事を作成できるアプリ。スラッシュコマンドやブロックスタイルに対応した、使いやすいエディタが特徴です。
開発者: 株式会社Forest Book

複数のShopifyストア間でブログ記事を自動同期できるアプリ。親ストアに投稿した記事が他のストアにも自動で反映されます。
開発者: Dead Simple Studio

画像スライダー・カルーセル・ヒーロー画像を作成できる多機能アプリ。CTAボタンやSEO対応のaltテキスト設定にも対応しています。
開発者: POWR.io
アプリを使わずに、Shopifyのテーマコードを直接編集してブログ一覧スライダーを実装することもできます。ここでは、Swiper.jsを使ったブログスライダーの実装方法を紹介します。
Shopify管理画面の「オンラインストア」>「テーマ」>「コードを編集」から、sections フォルダに新しいファイル blog-slider.liquid を作成します。
{% comment %}
ブログ記事スライダーセクション
Swiper.js を使用してブログ記事をスライダー形式で表示する
{% endcomment %}
{%- assign blog_handle = section.settings.blog -%}
{%- assign posts_count = section.settings.posts_count -%}
{% if blog_handle != blank %}
{%- assign selected_blog = blogs[blog_handle] -%}
<div class="blog-slider-section">
{% if section.settings.show_heading %}
<div class="blog-slider-header">
<h2 class="blog-slider-heading">
{% if section.settings.heading_text != blank %}
{{ section.settings.heading_text | escape }}
{% else %}
{{ selected_blog.title | escape }}
{% endif %}
</h2>
{% if section.settings.show_view_all %}
<a href="{{ selected_blog.url }}" class="blog-slider-view-all">
{{ section.settings.view_all_text | default: '一覧を見る' }}
</a>
{% endif %}
</div>
{% endif %}
<div class="swiper blog-swiper">
<div class="swiper-wrapper">
{% for article in selected_blog.articles limit: posts_count %}
<div class="swiper-slide">
<a href="{{ article.url }}" class="blog-card">
{% if article.image %}
<div class="blog-card__image">
<img
src="{{ article.image | image_url: width: 600 }}"
alt="{{ article.image.alt | escape }}"
width="600"
height="{{ 600 | divided_by: article.image.aspect_ratio | round }}"
loading="lazy"
>
</div>
{% endif %}
<div class="blog-card__content">
<h3 class="blog-card__title">{{ article.title | escape }}</h3>
<time class="blog-card__date" datetime="{{ article.published_at | date: '%Y-%m-%d' }}">
{{ article.published_at | date: '%Y/%m/%d' }}
</time>
{% if section.settings.show_excerpt and article.excerpt_or_content != blank %}
<p class="blog-card__excerpt">
{{ article.excerpt_or_content | strip_html | truncate: 80 }}
</p>
{% endif %}
</div>
</a>
</div>
{% endfor %}
</div>
<!-- ナビゲーション矢印 -->
<div class="swiper-button-prev"></div>
<div class="swiper-button-next"></div>
<!-- ページネーション(ドット) -->
<div class="swiper-pagination"></div>
</div>
</div>
{% else %}
<p style="text-align:center; padding: 40px 20px; color: #999;">
テーマエディタの設定からブログを選択してください。
</p>
{% endif %}
{% schema %}
{
"name": "ブログスライダー",
"settings": [
{
"type": "blog",
"id": "blog",
"label": "ブログを選択"
},
{
"type": "range",
"id": "posts_count",
"label": "表示する記事数",
"min": 3,
"max": 12,
"step": 1,
"default": 6
},
{
"type": "checkbox",
"id": "show_heading",
"label": "見出しを表示",
"default": true
},
{
"type": "text",
"id": "heading_text",
"label": "見出しテキスト(空欄でブログ名)"
},
{
"type": "checkbox",
"id": "show_view_all",
"label": "一覧リンクを表示",
"default": true
},
{
"type": "text",
"id": "view_all_text",
"label": "一覧リンクのテキスト",
"default": "一覧を見る"
},
{
"type": "checkbox",
"id": "show_excerpt",
"label": "抜粋を表示",
"default": true
}
],
"presets": [
{
"name": "ブログスライダー"
}
]
}
{% endschema %}
assets フォルダに blog-slider.css を作成し、Liquidファイルの先頭で {{ 'blog-slider.css' | asset_url | stylesheet_tag }} を追加して読み込みます。
/* ブログスライダーセクション */
.blog-slider-section {
max-width: 1200px;
margin: 40px auto;
padding: 0 20px;
}
/* ヘッダー */
.blog-slider-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 24px;
}
.blog-slider-heading {
font-size: 24px;
font-weight: 700;
margin: 0;
color: #333;
}
.blog-slider-view-all {
font-size: 14px;
color: #666;
text-decoration: none;
transition: color 0.2s;
}
.blog-slider-view-all:hover {
color: #333;
text-decoration: underline;
}
/* Swiper コンテナ */
.blog-swiper {
position: relative;
padding-bottom: 48px;
}
/* カードスタイル */
.blog-card {
display: block;
text-decoration: none;
color: inherit;
border-radius: 8px;
overflow: hidden;
background: #fff;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
transition: box-shadow 0.2s, transform 0.2s;
}
.blog-card:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
transform: translateY(-2px);
}
.blog-card__image {
aspect-ratio: 16 / 9;
overflow: hidden;
}
.blog-card__image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s;
}
.blog-card:hover .blog-card__image img {
transform: scale(1.03);
}
.blog-card__content {
padding: 16px;
}
.blog-card__title {
font-size: 16px;
font-weight: 600;
margin: 0 0 8px;
color: #333;
line-height: 1.4;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.blog-card__date {
font-size: 13px;
color: #999;
display: block;
margin-bottom: 8px;
}
.blog-card__excerpt {
font-size: 14px;
color: #666;
line-height: 1.6;
margin: 0;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
/* Swiper ナビゲーション */
.blog-swiper .swiper-button-prev,
.blog-swiper .swiper-button-next {
color: #333;
background: rgba(255, 255, 255, 0.9);
width: 40px;
height: 40px;
border-radius: 50%;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.blog-swiper .swiper-button-prev::after,
.blog-swiper .swiper-button-next::after {
font-size: 16px;
font-weight: 700;
}
/* Swiper ページネーション */
.blog-swiper .swiper-pagination-bullet {
background: #ccc;
opacity: 1;
}
.blog-swiper .swiper-pagination-bullet-active {
background: #333;
}
/* レスポンシブ */
@media screen and (max-width: 768px) {
.blog-slider-section {
margin: 24px auto;
padding: 0 16px;
}
.blog-slider-heading {
font-size: 20px;
}
}
Liquidテンプレートの末尾({% endschema %} の前)に以下のスクリプトを追加します。Swiper.jsはCDNから読み込みます。
<!-- Swiper.js CDN -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css">
<script src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js" defer></script>
<script>
document.addEventListener('DOMContentLoaded', function () {
// Swiper.js の読み込み完了を待つ
function initBlogSwiper() {
if (typeof Swiper === 'undefined') {
setTimeout(initBlogSwiper, 100);
return;
}
new Swiper('.blog-swiper', {
// スライド表示数(レスポンシブ設定)
slidesPerView: 1.2,
spaceBetween: 16,
breakpoints: {
// タブレット
768: {
slidesPerView: 2.5,
spaceBetween: 20
},
// PC
1024: {
slidesPerView: 3,
spaceBetween: 24
}
},
// ループ
loop: true,
// 自動再生
autoplay: {
delay: 4000,
disableOnInteraction: false,
pauseOnMouseEnter: true
},
// ナビゲーション矢印
navigation: {
prevEl: '.swiper-button-prev',
nextEl: '.swiper-button-next'
},
// ページネーション(ドット)
pagination: {
el: '.swiper-pagination',
clickable: true
}
});
}
initBlogSwiper();
});
</script>
コーディングでブログスライダーを実装する場合、以下の点に注意してください。
assets フォルダにアップロードして使用することをおすすめします。defer 属性を付けて非同期読み込みにする、不要なモジュールを省くなどの対策を行いましょう。| アプリ名 | 月額料金 | 無料体験 | 年払い |
|---|---|---|---|
| シンプルお知らせスライダー|お手軽ブログ一覧スライダー | $6.99 | 7日間 | $69.90(17%お得) |
| Slidy: Clickable Banner Slider | $14〜$19 | 3日間 | - |
| AI Blog Agent | SEO Auto Blog | 無料〜$18.99 | 14日間 | - |
| Smart AI Blog - スマートAIブログ | 無料〜$9 | 30日間 | - |
| 超カンタン ブログ同期 | 無料〜$20 | - | $144(40%お得) |
| POWR Image Slider & Carousel | 無料〜$14 | - | - |
ブログスライダーに特化したアプリとしては、「シンプルお知らせスライダー|お手軽ブログ一覧スライダー」が月額 $6.99 とリーズナブルです。年払いにすると $69.90(17%お得)でさらにお得に利用できます。
| アプリ名 | 日本語対応 | 対応言語数 |
|---|---|---|
| シンプルお知らせスライダー|お手軽ブログ一覧スライダー | 対応 | 20言語 |
| Slidy: Clickable Banner Slider | 非対応 | 英語のみ |
| AI Blog Agent | SEO Auto Blog | 非対応 | 英語のみ |
| Smart AI Blog - スマートAIブログ | 対応 | 英語・日本語 |
| 超カンタン ブログ同期 | 対応 | 7言語 |
| POWR Image Slider & Carousel | 非対応 | 英語のみ |
日本語でアプリを使いたい場合は、「シンプルお知らせスライダー」「Smart AI Blog」「超カンタン ブログ同期」の3つが日本語に対応しています。特に「シンプルお知らせスライダー」は20言語に対応しており、越境ECを展開しているストアにも安心です。
今回紹介した6つのアプリの中で、ブログ一覧をスライダーで表示する用途に最も適しているのは「シンプルお知らせスライダー|お手軽ブログ一覧スライダー」です。
ブログ記事専用のスライダー機能に特化しており、テーマエディタからブロックを追加するだけですぐに使い始められます。8種類のスタイルプリセットが用意されているため、デザインに詳しくない方でもストアの雰囲気に合ったスライダーを導入できます。PC・タブレット・スマホそれぞれの表示枚数を個別に設定できる点も、実用的で使いやすいポイントです。
他のアプリは画像バナーのスライダーやブログ記事の自動生成、複数ストア間の同期など、ブログスライダーとは異なる用途に特化しています。ブログ一覧スライダーをストアに追加したい場合は、まず「シンプルお知らせスライダー」を試してみることをおすすめします。
今回は、Shopifyストアにブログ一覧スライダーを追加できるおすすめアプリ6選と、コーディングによる実装方法をご紹介しました。
お知らせやブログ記事をスライダー形式で表示することで、お客様に情報を届けやすくなり、ストアの回遊率アップも期待できます。アプリを使えばノーコードで導入でき、テーマのアップデートにも影響されません。
迷ったら、ブログスライダーに特化した「シンプルお知らせスライダー|お手軽ブログ一覧スライダー」がおすすめです。7日間の無料体験があるので、まずは気軽に試してみてください。