app/template/default/Block/news.twig line 1

Open in your IDE?
  1. {#
  2. This file is part of EC-CUBE
  3. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  4. http://www.ec-cube.co.jp/
  5. For the full copyright and license information, please view the LICENSE
  6. file that was distributed with this source code.
  7. #}
  8. {% set NewsList = repository('Eccube\\Entity\\News').getList() %}
  9. {% block javascript %}
  10.     <script>
  11.         $(function() {
  12.             $('.ec-newsRole__news').each(function() {
  13.                 var listLength = $(this).find('.ec-newsRole__newsItem').length;
  14.                 if (listLength > 5) {
  15.                     $(this).find('.ec-newsRole__newsItem:gt(4)').each(function() {
  16.                         $(this).hide();
  17.                     });
  18.                     $(this).append('<a id="news_readmore" class="ec-inlineBtn--top">{{ 'more'|trans }}</a>');
  19.                     var dispNum = 5;
  20.                     $(this).find('#news_readmore').click(function() {
  21.                         dispNum += 5;
  22.                         $(this).parent().find('.ec-newsRole__newsItem:lt(' + dispNum + ')').show();
  23.                         if (dispNum >= listLength) {
  24.                             $(this).hide();
  25.                         }
  26.                     })
  27.                 }
  28.             });
  29.             $('.ec-newsRole__newsHeading').on('click', function() {
  30.                 $newsItem = $(this).parent('.ec-newsRole__newsItem');
  31.                 $newsDescription = $newsItem.children('.ec-newsRole__newsDescription');
  32.                 if ($newsDescription.css('display') == 'none') {
  33.                     $newsItem.addClass('is_active');
  34.                     $newsDescription.slideDown(300);
  35.                 } else {
  36.                     $newsItem.removeClass('is_active');
  37.                     $newsDescription.slideUp(300);
  38.                 }
  39.                 return false;
  40.             });
  41.         });
  42.     </script>
  43. {% endblock %}
  44. <div class="container">
  45. <div class="ec-role">
  46.     <div class="ec-newsRole" id="news">
  47.         <div class="ec-secHeading">
  48.             <span class="ec-secHeading__en">{{ 'NEWS'|trans }}</span>
  49.             <span class="ec-secHeading__line"></span>
  50.             <span class="ec-secHeading__ja">{{ 'キャンペーンや最新情報などをお知らせします'|trans }}</span>
  51.         </div>
  52.         <div class="ec-newsRole__news">
  53.             {% for News in NewsList %}
  54.                 <div class="ec-newsRole__newsItem">
  55.                     <div class="ec-newsRole__newsHeading">
  56.                         <div class="ec-newsRole__newsDate">
  57.                             {{ News.publish_date|date_day }}
  58.                         </div>
  59.                         <div class="ec-newsRole__newsColumn">
  60.                             <div class="ec-newsRole__newsTitle">
  61.                                 {{ News.title }}
  62.                             </div>
  63.                             {% if News.description or News.url %}
  64.                                 <div class="ec-newsRole__newsClose">
  65.                                     <a class="ec-newsRole__newsCloseBtn">
  66.                                         <i class="fas fa-angle-down"></i>
  67.                                     </a>
  68.                                 </div>
  69.                             {% endif %}
  70.                         </div>
  71.                     </div>
  72.                     <div class="ec-newsRole__newsDescription">
  73.                         {{ News.description|raw|nl2br }}
  74.                         {% if News.url %}
  75.                             <br>
  76.                             <a href="{{ News.url }}" {% if News.link_method == '1' %}target="_blank"{% endif %}>{{ '詳しくはこちら'|trans }}</a>
  77.                         {% endif %}
  78.                     </div>
  79.                 </div>
  80.             {% endfor %}
  81.         </div>
  82.     </div>
  83. </div>
  84. </div>