バージョン選択

フォーラム

メニュー

オンライン状況

89 人のユーザが現在オンラインです。 (63 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 89
もっと...

サイト内検索

質問 > フロント機能 > カートエリア (<div id="cart_area">...</div>) を非表示にする

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
stack
投稿日時: 2018/7/24 0:33
対応状況: −−−
新米
登録日: 2018/7/13
居住地:
投稿: 4
カートエリア (<div id="cart_area">...</div>) を非表示にする
[EC-CUBE] 3.0.16、新規インストール
[レンタルサーバ] さくら共用プレミアム
[OS] FreeBSD
[PHP] PHP 7.1.17
[データベース] MySQL 5.7
[WEBサーバ] Apache 2.4系
[ブラウザ] IE 11.0.65
[導入プラグインの有無] 無効化中
[カスタマイズの有無] 無(デフォルト)

お世話になります。個人ストアを作りたいと思い、下記について勉強中なのですが、
当該リソースを見つけることができず、質問させてください。

---
全ページに配置されるカートエリア (<div id="cart_area">...</div>) 部品ですが、
Eccube/Resource/template/default/Block/cart.twig
これを非表示にするために、現在は、htmlマークアップで直接コメントアウト<!-- -->している状態です。
これでも表面的には非表示は実現していますが、 ec-cubeプログラムの本来的な方法で制御したいと思いました。

コントローラ src/Controller/Block/CartController.php には
default_frame.twig における出力場所(<div id="main_top"> ... </div>)の指定は見当たらないので
ご教示いただきたいのですが、default_frame.twig ファイルにおいて

{{ include('block.twig', {'Blocks': PageLayout.Header}) }}

の部分で

「<header id="header"> ... </header> 内に、カートエリア <div id="cart_area">...</div> を出力する」

ということを直接指示している(=PageLayout.Header の内容を決めている) phpファイルはどこにありますでしょうか?

---
初歩的な構造の質問で恐縮ですが、ご教示いただけますでしょうか。
どうぞよろしくお願いいたします。

---
追記です
include の指定先を記述を誤りました:

誤 PageLayout.MainTop
正 PageLayout.Header

失礼いたしました。
---
x002dc
投稿日時: 2018/7/24 9:29
対応状況: −−−
半人前
登録日: 2018/6/27
居住地: 東京
投稿: 30
Re: カートエリア (<div id="cart_area">...</div>) を非表示にする
src/Eccube/Application.php の 376行目あたりから、PageLayoutRepositoryを通して、PageLayoutの情報を設定しているようです。



try {
    $DeviceType = $app['eccube.repository.master.device_type']
        ->find(\Eccube\Entity\Master\DeviceType::DEVICE_TYPE_PC);
    $PageLayout = $app['eccube.repository.page_layout']->getByUrl($DeviceType, $route, $page);
} catch (\Doctrine\ORM\NoResultException $e) {
    $PageLayout = $app['eccube.repository.page_layout']->newPageLayout($DeviceType);
}



PageLayoutの内容は、PageLayoutRepositoryのgetByUrlというメソッドで確認できるかと。
468
投稿日時: 2018/7/24 10:18
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2057
Re: カートエリア (<div id="cart_area">...</div>) を非表示にする
処理を行っているPHPファイルについては、x002dcさんの提示された箇所になりますので、補足的な内容になるのですが、
ECCUBEには、レイアウト管理という機能が存在しており、
管理画面のコンテンツ管理>ページ管理より各ページのレイアウトを動的に変更する事ができるようになっております。

>ec-cubeプログラムの本来的な方法で制御したい

今回のカートエリアの非表示化については、
コンテンツ管理>ページ管理>レイアウト編集にて、
カゴの中ブロックを未使用ブロックエリアにドラッグして、
レイアウトから外して登録する方法が、
ECCUBEが元々想定している方法かと思います。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

stack
投稿日時: 2018/7/26 16:16
対応状況: 解決済
新米
登録日: 2018/7/13
居住地:
投稿: 4
Re: カートエリア (<div id="cart_area">...</div>) を非表示にする
x002dc様 468様

お忙しいところご解説をありがとうございました。
体調不良でモニタから離れており、遅くなって申し訳ございません、

Application.phpの要害箇所を確認し、アサイン内容を追いました、並びに、
この動的サービス部分は管理画面での直感的な操作を最適化した設計であること、
改めて理解しました。どうもありがとうございます。
本件はこの貴重なご返信をもって解決マークといたします。

今後ともご指導をよろしくお願いいたします。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は61,589名です
総投稿数は95,564件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
468
2057
4
nanasess
2039
5
yuh
1612
6
umebius
1588
7
red
1399
8
h_tanaka
1005
9
fukap
907
10
tsuji
863
11
shutta
835
12 ramrun 789
13
tao_s
783
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.