app/template/default/default_frame.twig line 1

Open in your IDE?
  1. <!doctype html>
  2. <html lang="{{ eccube_config.locale }}">
  3. <head prefix="og: https://ogp.me/ns# fb: https://ogp.me/ns/fb# product: https://ogp.me/ns/product#">
  4.     <!-- Google Tag Manager -->
  5.     <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  6.     new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  7.     j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  8.     'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  9.     })(window,document,'script','dataLayer','GTM-M5Z28JFB');</script>
  10.     <!-- End Google Tag Manager -->
  11.     <meta charset="utf-8">
  12.     <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  13.     <meta name="eccube-csrf-token" content="{{ csrf_token(constant('Eccube\\Common\\Constant::TOKEN_NAME')) }}">
  14.     <title>{{ BaseInfo.shop_name }}{% if subtitle is defined and subtitle is not empty %} / {{ subtitle }}{% elseif title is defined and title is not empty %} / {{ title }}{% endif %}</title>
  15.     {% if Page.meta_tags is not empty %}
  16.         {{ include(template_from_string(Page.meta_tags), sandboxed = true) }}
  17.         {% if Page.description is not empty %}
  18.             <meta name="description" content="{{ Page.description }}">
  19.         {% endif %}
  20.     {% else %}
  21.         {{ include('meta.twig') }}
  22.     {% endif %}
  23.     {% if Page.author is not empty %}
  24.         <meta name="author" content="{{ Page.author }}">
  25.     {% endif %}
  26.     {% if Page.keyword is not empty %}
  27.         <meta name="keywords" content="{{ Page.keyword }}">
  28.     {% endif %}
  29.     {% if Page.meta_robots is not empty %}
  30.         <meta name="robots" content="{{ Page.meta_robots }}">
  31.     {% endif %}
  32.     <link rel="icon" href="{{ asset('assets/img/common/favicon.ico', 'user_data') }}">
  33.     <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
  34.     <link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
  35.     <script src="{{ asset('front.bundle.js', 'bundle') }}"></script>
  36.     {% block stylesheet %}{% endblock %}
  37.     <script>
  38.         $(function() {
  39.             $.ajaxSetup({
  40.                 'headers': {
  41.                     'ECCUBE-CSRF-TOKEN': $('meta[name="eccube-csrf-token"]').attr('content')
  42.                 }
  43.             });
  44.         });
  45.     </script>
  46.     {# Layout: HEAD #}
  47.     {% if Layout.Head %}
  48.         {{ include('block.twig', {'Blocks': Layout.Head}) }}
  49.     {% endif %}
  50.     {# プラグイン用styleseetやmetatagなど #}
  51.     {% if plugin_assets is defined %}{{ include('@admin/snippet.twig', { snippets: plugin_assets }) }}{% endif %}
  52.     <link rel="stylesheet" href="{{ asset('assets/css/style.css', 'user_data') }}">
  53.     <link rel="stylesheet" href="{{ asset('assets/css/reset.css', 'user_data') }}">
  54.     <link rel="preconnect" href="https://fonts.googleapis.com">
  55.     <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  56.     <link href="https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@300;400;500;700;800;900&display=swap" rel="stylesheet">
  57.     <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick.min.css" />
  58.     <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick-theme.min.css" />
  59.     <link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css" />
  60. </head>
  61. <body id="page_{{ app.request.get('_route') }}" class="{{ body_class|default('other_page') }}">
  62. <!-- Google Tag Manager (noscript) -->
  63. <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M5Z28JFB"
  64. height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  65. <!-- End Google Tag Manager (noscript) -->
  66. {# Layout: BODY_AFTER #}
  67. {% if Layout.BodyAfter %}
  68.     {{ include('block.twig', {'Blocks': Layout.BodyAfter}) }}
  69. {% endif %}
  70. {% if isMaintenance %}
  71.     <div class="ec-maintenanceAlert">
  72.         <div>
  73.             <div class="ec-maintenanceAlert__icon"><img src="{{ asset('assets/icon/exclamation-white.svg') }}"/></div>
  74.             {{ 'メンテナンスモードが有効になっています。'|trans }}
  75.         </div>
  76.     </div>
  77. {% endif %}
  78. {# Layout: HEADER #}
  79. {% if Layout.Header %}
  80.     {{ include('block.twig', {'Blocks': Layout.Header}) }}
  81. {% endif %}
  82. {# Layout: CONTENTS_TOP #}
  83. {% if Layout.ContentsTop %}
  84.     {{ include('block.twig', {'Blocks': Layout.ContentsTop}) }}
  85. {% endif %}
  86. {# Layout: SIDE_LEFT #}
  87. {% if Layout.SideLeft %}
  88.     {{ include('block.twig', {'Blocks': Layout.SideLeft}) }}
  89. {% endif %}
  90. {# Layout: MAIN_TOP #}
  91. {% if Layout.MainTop %}
  92.     {{ include('block.twig', {'Blocks': Layout.MainTop}) }}
  93. {% endif %}
  94. {# MAIN AREA #}
  95. {% block main %}{% endblock %}
  96. {# Layout: MAIN_Bottom #}
  97. {% if Layout.MainBottom %}
  98.     {{ include('block.twig', {'Blocks': Layout.MainBottom}) }}
  99. {% endif %}
  100. {# Layout: SIDE_RIGHT #}
  101. {% if Layout.SideRight %}
  102.     {{ include('block.twig', {'Blocks': Layout.SideRight}) }}
  103. {% endif %}
  104. {# Layout: CONTENTS_BOTTOM #}
  105. {% if Layout.ContentsBottom %}
  106.     {{ include('block.twig', {'Blocks': Layout.ContentsBottom}) }}
  107. {% endif %}
  108. {# Layout: CONTENTS_FOOTER #}
  109. {% if Layout.Footer %}
  110.     {{ include('block.twig', {'Blocks': Layout.Footer}) }}
  111. {% endif %}
  112. {#
  113. <div class="ec-overlayRole"></div>
  114. <div class="ec-drawerRoleClose"><i class="fas fa-times"></i></div>
  115. <div class="ec-drawerRole">
  116.     {# Layout: DRAWER #}
  117.     {#
  118.     {% if Layout.Drawer %}
  119.         {{ include('block.twig', {'Blocks': Layout.Drawer}) }}
  120.     {% endif %}
  121. </div>
  122. #}
  123. {% include('@common/lang.twig') %}
  124. <script src="{{ asset('assets/js/function.js') }}"></script>
  125. <script src="{{ asset('assets/js/eccube.js') }}"></script>
  126. {% block javascript %}{% endblock %}
  127. {# Layout: CLOSE_BODY_BEFORE #}
  128. {% if Layout.CloseBodyBefore %}
  129.     {{ include('block.twig', {'Blocks': Layout.CloseBodyBefore}) }}
  130. {% endif %}
  131. {# プラグイン用Snippet #}
  132. {% if plugin_snippets is defined %}
  133.     {% if Page.url != 'product_detail' %}
  134.         {{ include('snippet.twig', { snippets: plugin_snippets }) }}
  135.     {% endif %}
  136. {% endif %}
  137.     <script src="https://code.jquery.com/jquery-3.6.4.min.js"
  138.         integrity="sha256-oP6HI9z1XaZNBrJURtCoUT5SUnxFr8s3BzRl+cbzUq8=" crossorigin="anonymous"></script>
  139.     <script src="{{ asset('assets/js/common.js', 'user_data') }}"></script>
  140.     <script src="https://unpkg.com/aos@next/dist/aos.js"></script>
  141.     <script src="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.min.js"></script>
  142. </body>
  143. </html>