一覧にセットだけを表示(もしくはコンテンツだけを表示)する方法

フォローする

この方法はデフォルトのテンプレートを利用している場合に限った説明になります。
テンプレートの編集が難しい場合、サポートへお問い合わせ下さい。ご要望を伺い、作業を承ることも可能です。


ソーシャルキャストの通常の仕様では、「コンテンツ」と「セット」が混在して一覧に表示されます。 ここでは下記の一覧に表示させる対象を「コンテンツ」もしくは「セット」だけに変更する方法を説明します。

修正対象のテンプレート一覧

  • パーツテンプレート
    1. サイドメニュー
    2. 新着動画一覧
    3. カテゴリ別新着動画一覧
  • ページテンプレート
    1. 検索結果一覧
    2. カテゴリ一覧
    3. タグ別一覧
    4. セット詳細画面(関連動画の箇所にセットだけを表示したい場合のみ、こちらも修正)

テンプレート変更手順

管理画面の デザイン管理 > テンプレート から下記のテンプレートを選択して編集します。

PC版テンプレート

1.サイドメニュー(パーツテンプレート)

テンプレート名:パーツテンプレート/サイドメニュー

{% if auth_check() %}
{{get_freearea('pc_freearea_login_side')|raw}}
{% else %}
{{get_freearea('pc_freearea_logoff_side')|raw}}
{% endif %}

{% include 'announce.partial.latestList' only %}

<div class="tile-inner">
<h2 class="ttl-sm">新着動画</h2>
<div class="content-list">
{% for content in get_latest_contents(3) %}
{% include 'contents.partial.row' with {content:content} only %}
{% endfor %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{% for content in get_latest_contents(3, [], 'single')  %}

「セット」だけ表示したい場合

{% for content in get_latest_contents(3, [], 'set')  %}

2.新着動画一覧(パーツテンプレート)

テンプレート名:パーツテンプレート/最新のコンテンツ一覧

<section class="box-section">
<h1 class="ttl-md">新着動画</h1>
<div class="content-list js-list-slide">
{% for content in get_latest_contents(10) %}
{% include 'contents.partial.box' with {content: content} only %}
{% endfor %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{% for content in get_latest_contents(10, [], 'single') %}

「セット」だけ表示したい場合

{% for content in get_latest_contents(10, [], 'set') %}

3.カテゴリ別新着動画一覧(パーツテンプレート)

テンプレート名:パーツテンプレート/カテゴリ別コンテンツ一覧

{%set list = get_latest_contents(10, [category.id]) %}

{% if list.count() %}
<section class="box-section">
{% if parent is defined %}
<span>{{parent.display_name}}</span>
{% endif %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{%set list = get_latest_contents(10, [category.id], 'single') %}

「セット」だけ表示したい場合

{%set list = get_latest_contents(10, [category.id], 'set') %}

1.検索結果一覧ページ(ページテンプレート)

テンプレート名:ページテンプレート/コンテンツ検索結果

{% extends 'layouts.app' %}

{% block title %}検索結果{% endblock %}

{% block breadcrumbs %}
{% include 'partial.breadcrumbs' with {
list: [
{label: '検索結果', url: url().current()},
]
} only %}
{% endblock %}

{% block content %}
<section class="box-section">
<h2 class="ttl-md">
検索結果
<a class="btn btn-theme icon float-right mt-0" href="#search-section">再度検索する<i class="fa fa-search"></i></a>
</h2>
{% include 'contents.partial.sortBox' with {sort: sort, order: order, form: form } only %}

{% set paginator = get_contents_pager({search: search}, sort: sort, order: order }, input_get('page', 1), 12) %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{% set paginator = get_contents_pager({search: search|merge({type: 'single'}), sort: sort, order: order }, input_get('page', 1), 12) %}

「セット」だけ表示したい場合

{% set paginator = get_contents_pager({search: search|merge({type: 'set'}), sort: sort, order: order }, input_get('page', 1), 12) %}

2.カテゴリ別一覧ページ(ページテンプレート)

テンプレート名:ページテンプレート/カテゴリ別コンテンツ一覧

(前略)
{% block content %} <section class="box-section">
<h2 class="ttl-md">このカテゴリの動画一覧</h2> {% include 'contents.partial.sortBox' with {sort: sort, order: order, form: form } only %}
{% set paginator = get_contents_pager({search: {category_ids: [category.id]}, sort: sort, order: order }, input_get('page', 1), 12) %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{% set paginator = get_contents_pager({search: {category_ids: [category.id], type: 'single'}, sort: sort, order: order }, input_get('page', 1), 12) %}

「セット」だけ表示したい場合

{% set paginator = get_contents_pager({search: {category_ids: [category.id], type: 'set'}, sort: sort, order: order }, input_get('page', 1), 12) %}

3.タグ別一覧ページ(ページテンプレート)

テンプレート名:ページテンプレート/タグ別コンテンツ一覧

(前略)

{% block content %}
<section class="box-section">
<h2 class="ttl-md">タグ:{{tag}}</h2>
{% include 'contents.partial.sortBox' with {sort: sort, order: order, form: form } only %}

{% set paginator = get_contents_pager({search: {tags: tag}, sort: sort, order: order }, input_get('page', 1), 12) %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{% set paginator = get_contents_pager({search: {tags: tag, type: 'single'}, sort: sort, order: order }, input_get('page', 1), 12) %}

「セット」だけ表示したい場合

{% set paginator = get_contents_pager({search: {tags: tag, type: 'set'}, sort: sort, order: order }, input_get('page', 1), 12) %}

4.セット詳細画面(ページテンプレート)関連動画の箇所にセットだけを表示したい場合のみ、こちらも修正

テンプレート名:ページテンプレート/セット詳細画面

(前略)

 <section class="box-section">
<h2 class="ttl-md">関連動画</h2>
{% cache 'pc_content_category_'~content.id~'_'~get_cachekey() ttl(300) %}
{% for category in set.categories %}

{% set list = get_latest_contents(10, [category.id]) %}
{% if list.count %}
<div class="box-related-content">
<h2 class="ttl-xs">カテゴリ:{{category.display_name}}</h2>
<div class="content-list js-list-slide">
{% for content in list %}
{% include 'contents.partial.box' with {content: content, category_id: category.id} only %}
{% endfor %}
</div>
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「セット」だけ表示したい場合

{% set list = get_latest_contents(10, [category.id], 'set') %}

スマートフォン版テンプレート

1.サイドメニュー(パーツテンプレート)

スマートフォン版テンプレートでは、サイドメニュー用パーツの変更の必要はございません。

2.新着動画一覧(パーツテンプレート)

テンプレート名:パーツテンプレート/最新のコンテンツ一覧

<section class="box-section">
<h1 class="ttl-md">新着動画</h1>
<div class="content-list js-list-slide">
{% for content in get_latest_contents(10) %}
{% include 'contents.partial.box' with {content: content} only %}
{% endfor %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{% for content in get_latest_contents(10, [], 'single') %}

「セット」だけ表示したい場合

{% for content in get_latest_contents(10, [], 'set') %}

3.カテゴリ別新着動画一覧(パーツテンプレート)

テンプレート名:パーツテンプレート/カテゴリ別コンテンツ一覧

{%set list = get_latest_contents(10, [category.id]) %}

{% if list.count() %}
<section class="box-section">
{% if parent is defined %}
<span>{{parent.display_name}}</span>
{% endif %}
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

{%set list = get_latest_contents(10, [category.id], 'single') %}

「セット」だけ表示したい場合

{%set list = get_latest_contents(10, [category.id], 'set') %}

1.検索結果一覧ページ(ページテンプレート)

テンプレート名:ページテンプレート/コンテンツ検索結果

(前略)
{% block scripts %}
{{parent()}}
<script>
$(function(){
$('#result').infinitePager({
url: '/user_api/contents',
data: { size: 10, search: {{search|json_encode|raw}} ,sort: '{{sort}}', order: '{{order}}' },
template: '#contentsTemplate',
onAppend: function($appends) {
$('.favorite', $appends).favoriteButton();
{% if auth_check() %}
$('[data-watch-progress]', $appends).watchProgress();
{% endif %}

}
});
});
</script>

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

data: { size: 10, search: {{search|merge({type:'single'})|json_encode|raw}} ,sort: '{{sort}}', order: '{{order}}' },

「セット」だけ表示したい場合

data: { size: 10, search: {{search|merge({type:'set'})|json_encode|raw}} ,sort: '{{sort}}', order: '{{order}}' },

2.カテゴリ別一覧ページ(ページテンプレート)

テンプレート名:ページテンプレート/カテゴリ別コンテンツ一覧

(前略)
{% block scripts %}
{{parent()}}
<script>
$(function(){
$('#result').infinitePager({
url: '/user_api/contents',
data: { search: {category_ids: [{{category.id}}]}, size: 10, sort: '{{sort}}', order: '{{order}}' },
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

data: { search: {category_ids: [{{category.id}}], type: 'single'}, size: 10, sort: '{{sort}}', order: '{{order}}'  },

「セット」だけ表示したい場合

data: { search: {category_ids: [{{category.id}}], type: 'set'}, size: 10, sort: '{{sort}}', order: '{{order}}'  },

3.タグ別一覧ページ(ページテンプレート)

テンプレート名:ページテンプレート/タグ別コンテンツ一覧

(前略)

{% block scripts %}
{{parent()}}
<script>
$(function(){
$('#result').infinitePager({
url: '/user_api/contents',
data: { size: 10, search: {tags: '{{tag}}'}, sort: '{{sort}}', order: '{{order}}' },
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「コンテンツ」だけ表示したい場合

data: { size: 10, search: {tags: '{{tag}}', type:'single'}, sort: '{{sort}}', order: '{{order}}' },

「セット」だけ表示したい場合

data: { size: 10, search: {tags: '{{tag}}', type:'set'}, sort: '{{sort}}', order: '{{order}}' },

4.セット詳細画面(ページテンプレート)関連動画の箇所にセットだけを表示したい場合のみ、こちらも修正

テンプレート名:ページテンプレート/セット詳細画面

(前略)

<div id="tab-relative" class="tab-pane">
{% cache 'mobile_content_category_'~content.id~'_'~get_cachekey() ttl(300) %}
{% for category in set.categories %}
{% set list = get_latest_contents(10, [category.id]) %}
{% if list.count %}
<section class="box-contentsInfo-section">
<h2 class="ttl-xs">カテゴリ:{{category.display_name}}</h2>
<div class="content-list js-list-slide">
{% for content in list %}
{% include 'contents.partial.box' with {content: content, category_id: category.id} only %}
{% endfor %}
</div>
(以下省略)

上記の赤文字の行を以下のように書き換えてください。

「セット」だけ表示したい場合

{% set list = get_latest_contents(10, [category.id], 'set') %}
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています