有料のコンテンツ及びセットの販売期間設定機能の追加
管理画面から有料のコンテンツ及びセットに販売期間を設定することができるようになりました。
これによりたとえば、「コンテンツは終売したが既に購入している会員は同コンテンツの動画を視聴することができる」といった設定が行えるようになります。
本機能をご利用される場合は、下記の設定を行ってください。
コンテンツまたはセットの販売期間設定
コンテンツの設定方法はマニュアルをご確認ください。
セットの設定方法はマニュアルをご確認ください。
マニュアルの閲覧にはソーシャルキャストからご案内しているログインIDとパスワードが必要です。
テンプレートの設定
コンテンツやセットの販売期間設定機能に関する一般画面のテンプレートについて案内いたします。
4.4.3以前のバージョンをご利用のお客様につきましては、4.4.4アップデート後、手動で下記のテンプレート編集が必要になる場合がございます。
PC版
- ページテンプレート/コンテンツ詳細(再生)画面
販売期間の利用に必要な記述が追加されました
変更前
{% if content.for_buyer %}
{% if auth_guest() %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% endif %}
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間になります</p>
{% endif %}
{% elseif content.for_premium %}
変更後
{% if content.for_buyer %}
{% if auth_guest() %}
{% if content.saleable %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if content.sale_status == 'open' and content.sale_end_at %}
<p class="text-danger text-sm">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if content.sale_status == 'before_start' and content.sale_start_at %}
<p class="text-danger">この動画は{{content.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if content.sale_status == 'after_end' and content.sale_end_at %}
<p class="text-danger">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
{% if content.saleable %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if content.sale_status == 'open' and content.sale_end_at %}
<p class="text-danger text-sm">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if content.sale_status == 'before_start' and content.sale_start_at %}
<p class="text-danger">この動画は{{content.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if content.sale_status == 'after_end' and content.sale_end_at %}
<p class="text-danger">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
{% endif %}
{% elseif content.for_premium %}
- ページテンプレート/セット詳細画面
販売期間の利用に必要な記述が追加されました
変更前
{% if set.for_buyer %}
{% if auth_guest() %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% endif %}
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間になります</p>
{% endif %}
{% elseif set.for_premium %}
変更後
{% if set.for_buyer %}
{% if auth_guest() %}
{% if set.saleable %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if set.sale_status == 'open' and set.sale_end_at %}
<p class="text-danger text-sm">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if set.sale_status == 'before_start' and set.sale_start_at %}
<p class="text-danger">このセットは{{set.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if set.sale_status == 'after_end' and set.sale_end_at %}
<p class="text-danger">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
{% if set.saleable %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if set.sale_status == 'open' and set.sale_end_at %}
<p class="text-danger text-sm">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if set.sale_status == 'before_start' and set.sale_start_at %}
<p class="text-danger">このセットは{{set.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if set.sale_status == 'after_end' and set.sale_end_at %}
<p class="text-danger">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
{% endif %}
{% elseif set.for_premium %}
- パーツテンプレート/コンテンツ(セット)状態
販売期間の利用に必要な記述が追加されました
変更前
<div class="content-status-box">>
{% if content.delivery_start_at %}
変更後
<div class="content-status-box">
{% if content.sale_start_at %}
<span class="tag status-start"><i class="fa fa-clock-o"></i><time datetime="{{content.sale_start_at}}">{{content.sale_start_at}}</time>販売開始</span>
{% endif %}
{% if content.sale_end_at %}
<span class="tag status-end"><i class="fa fa-clock-o"></i><time datetime="{{content.sale_end_at}}">{{content.sale_end_at}}</time>販売終了</span>
{% endif %}
{% if content.delivery_start_at %}
スマートフォン版
- ページテンプレート/コンテンツ詳細(再生)画面
販売期間の利用に必要な記述が追加されました
変更前
{% if content.for_buyer %}
{% if auth_guest() %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% endif %}
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間になります</p>
{% endif %}
{% elseif content.for_premium %}
変更後
{% if content.for_buyer %}
{% if auth_guest() %}
{% if content.saleable %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if content.sale_status == 'open' and content.sale_end_at %}
<p class="text-danger text-sm">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if content.sale_status == 'before_start' and content.sale_start_at %}
<p class="text-danger">この動画は{{content.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if content.sale_status == 'after_end' and content.sale_end_at %}
<p class="text-danger">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
{% if content.saleable %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: content})}}">単品購入({{content.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if content.sale_status == 'open' and content.sale_end_at %}
<p class="text-danger text-sm">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if content.sale_status == 'before_start' and content.sale_start_at %}
<p class="text-danger">この動画は{{content.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if content.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{content.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if content.sale_status == 'after_end' and content.sale_end_at %}
<p class="text-danger">この動画は{{content.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
{% endif %}
{% elseif content.for_premium %}
- ページテンプレート/セット詳細画面
販売期間の利用に必要な記述が追加されました
変更前
{% if set.for_buyer %}
{% if auth_guest() %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% endif %}
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間になります</p>
{% endif %}
{% elseif set.for_premium %}
変更後
{% if set.for_buyer %}
{% if auth_guest() %}
{% if set.saleable %}
<a class="btn btn-block btn-theme icon" href="javascript:void();" data-toggle="modal" data-target="#modal-buy" data-redirect-to="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if set.sale_status == 'open' and set.sale_end_at %}
<p class="text-danger text-sm">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if set.sale_status == 'before_start' and set.sale_start_at %}
<p class="text-danger">このセットは{{set.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if set.sale_status == 'after_end' and set.sale_end_at %}
<p class="text-danger">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
<a href="javascript:void();" data-toggle="modal" data-target="#modal-login">購入済の方は、ログインすると視聴できます</a>
{% else %}
{% if set.saleable %}
<a class="btn btn-block btn-theme icon" href="{{route('contents.buy', {content: set})}}">購入する({{set.price|number_format}}円)<i class="fa fa-chevron-circle-right" aria-hidden="true"></i></a>
{% if set.sale_status == 'open' and set.sale_end_at %}
<p class="text-danger text-sm">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了予定です。</p>
{% endif %}
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% else %}
{% if set.sale_status == 'before_start' and set.sale_start_at %}
<p class="text-danger">このセットは{{set.sale_start_at|date('Y年m月d日 H時i分')}}から販売開始します。</p>
{% if set.ticket.expire_date > 0 %}
<p>視聴期限は購入後{{set.ticket.expire_date}}日間です。</p>
{% endif %}
{% endif %}
{% if set.sale_status == 'after_end' and set.sale_end_at %}
<p class="text-danger">このセットは{{set.sale_end_at|date('Y年m月d日 H時i分')}}に販売終了しました。</p>
{% endif %}
{% endif %}
{% endif %}
{% elseif set.for_premium %}
- パーツテンプレート/コンテンツ(セット)状態
販売期間の利用に必要な記述が追加されました
変更前
<div class="content-status-box">
{% if content.delivery_start_at %}
変更後
<div class="content-status-box">
{% if content.sale_start_at %}
<span class="tag status-start"><i class="fa fa-clock-o"></i><time datetime="{{content.sale_start_at}}">{{content.sale_start_at}}</time>販売開始</span>
{% endif %}
{% if content.sale_end_at %}
<span class="tag status-end"><i class="fa fa-clock-o"></i><time datetime="{{content.sale_end_at}}">{{content.sale_end_at}}</time>販売終了</span>
{% endif %}
{% if content.delivery_start_at %}
保有コンテンツの視聴有効期間終了日時設定機能の追加
管理画面から会員の保有コンテンツの視聴有効期間終了日時を自由に設定できるようになりました。
これによりたとえば、「会員が購入しているコンテンツの視聴期限を延長する」といった設定が行えるようになります。
設定方法は下記をご覧ください。
保有コンテンツの設定
保有コンテンツの視聴有効期間終了日時の設定方法はマニュアルをご確認ください。
マニュアルの閲覧にはソーシャルキャストからご案内しているログインIDとパスワードが必要です。
管理画面及び一般画面のログイン状態保持期間設定機能の追加
管理画面から管理画面及び一般画面のログイン状態保持期間を自由に設定できるようになりました。 管理画面及び一般画面のログイン状態保持期間の設定方法はマニュアルをご確認ください。
マニュアルの閲覧にはソーシャルキャストからご案内しているログインIDとパスワードが必要です。
より強固な会員パスワードルールの追加
既存の会員のパスワードルール(8文字以上16文字以内の英数字記号)に加えて、下記のより強固なパスワードルールの利用が選択できるようになりました。 パスワード入力制限の強度の設定方法はマニュアルをご確認ください。
マニュアルの閲覧にはソーシャルキャストからご案内しているログインIDとパスワードが必要です。
パスワード入力制限の強度 | パスワードルール |
---|---|
普通 | 8文字以上16文字以内の英数字記号 |
高 | 「普通」のパスワードルールに加えて"英字","数字","記号"それぞれ1文字以上の入力を必須とする |
最高 | 「高」のパスワードルールに加えて"ログイン名"または, "メールアドレス"または, "メールアドレスの@以前"に一致する値を拒否する |