バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > カテゴリーの階層を全部出しから親カテゴリのみに戻したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
kirat
投稿日時: 2013/2/6 20:40
対応状況: −−−
新米
登録日: 2012/7/5
居住地: 関東
投稿: 7
カテゴリーの階層を全部出しから親カテゴリのみに戻したい
初歩的な内容の質問でお恥ずかしいですが、どなたかご教授願います。

カテゴリーの階層を現在、子カテゴリーまで表示させられる状態なのですが、子カテゴリーの分類が多くなってしまった為、デフォルト時の親カテゴリーのみの状態に戻したいのですが、階層を折りたたむ部分(と思われる)ところをいじっても、戻らなく、どこを手入れしてよいかわかりません。

商品登録数が0でも表示できるようになっている為、非常に長く、見た目がしつこい状態です。
(※商品登録数は表示されないようになっています。)


デフォルトを参考にしたら良いかと思い、デフォルトのコピペを試しましたが、戻したくない部分まで戻ってしまう為に困っています。


当方が試した階層の調整は category.tpl の、

<!--{if $arrTree[cnt].display == 1|| $arrTre[cnt].level <=2}-->

の調整です。


現在の状況を記載します。


<!--{*
* This file is part of EC-CUBE
*
* Copyright(c) 2000-2011 LOCKON CO.,LTD. All Rights Reserved.
*
* http://www.lockon.co.jp/
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*}-->
<script type="text/javascript">//<![CDATA[
$(function(){
$('#category_area li.level1:last').css('border-bottom', 'none');
});
//]]>
</script>
<div class="bloc_outer">
<div id="category_area">
<div class="bloc_body">
<h2><span class="square">■</span>商品カテゴリー</h2>
<!--{strip}-->
<ul id="categorytree">
<!--{assign var=preLev value=1}-->
<!--{assign var=firstdone value=0}-->
<!--{section name=cnt loop=$arrTree}-->
<!--{* 表示フラグがTRUEなら表示 *}-->
<!--{if $arrTree[cnt].display == 1|| $arrTre[cnt].level <=2}-->
<!--{assign var=level value=`$arrTree[cnt].level`}-->
<!--{assign var=levdiff value=`$level-$preLev`}-->
<!--{if $levdiff > 0}-->
<ul>
<!--{elseif $levdiff == 0 && $firstdone == 1}-->
</li>
<!--{elseif $levdiff < 0}-->
<!--{section name=d loop=`$levdiff*-1`}-->
</li>
</ul>
<!--{/section}-->
</li>
<!--{/if}-->
<li class="level<!--{$level}--><!--{if in_array($arrTree[cnt].category_id, $tpl_category_id)}--> onmark<!--{/if}-->">
<p>
<a href="<!--{$smarty.const.ROOT_URLPATH}-->products/list.php?category_id=<!--{$arrTree[cnt].category_id}-->"<!--{if in_array($arrTree[cnt].category_id, $tpl_category_id)}--> class="onlink"<!--{/if}-->><!--{$arrTree[cnt].category_name|h}--></a>
</p>
<!--{if $firstdone == 0}--><!--{assign var=firstdone value=1}--><!--{/if}-->
<!--{assign var=preLev value=`$level`}-->
<!--{/if}-->
<!--{* セクションの最後に閉じタグを追加 *}-->
<!--{if $smarty.section.cnt.last}-->
<!--{if $preLev-1 > 0}-->
<!--{section name=d loop=`$preLev-1`}-->
</li>
</ul>
<!--{/section}-->
</li>
<!--{else}-->
</li>
<!--{/if}-->
<!--{/if}-->
<!--{/section}-->
</ul>
<!--{/strip}-->
</div>
</div>
</div>



何卒宜しくお願い致します。
dkazuto
投稿日時: 2013/2/6 22:04
対応状況: −−−
一人前
登録日: 2012/5/10
居住地:
投稿: 95
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
kirat様

子カテゴリが展開されない状態に戻すということでしょうか。

それですと、

<!--{if $arrTree[cnt].display == 1|| $arrTre[cnt].level <=2}-->

の部分を

<!--{if $arrTree[cnt].display == 1}-->

に変更してみてください。

初回表示時には子カテゴリは表示されていない状態でスタートします。



kirat
投稿日時: 2013/2/6 23:22
対応状況: −−−
新米
登録日: 2012/7/5
居住地: 関東
投稿: 7
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
dkazuto様

早々のご回答を頂きまして、誠にありがとうございます。

 >子カテゴリが展開されない状態に戻すということでしょうか。


そうです、その通りです。

早速試しましたところ、子カテゴリが表示されたままになってしまいます。

デフォルト時は確かに親カテゴリのみの表示でしたが、素人が手を加えてしまいました為、戻すのが困難です。

まだ考えられる状況がありますでしょうか。
dkazuto
投稿日時: 2013/2/7 9:23
対応状況: −−−
一人前
登録日: 2012/5/10
居住地:
投稿: 95
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
kirat様

お世話になっております。

カスタマイズを加えていないソースと、掲載頂いたソースの差分を
取ってみましたが、以下の部分にしか見つかりませんでした。

【オリジナル】

28行目〜31行目:

<div class="block_outer">
<div id="category_area">
<div class="block_body">
<h2><img src="<!--{$TPL_URLPATH}-->img/title/tit_bloc_category.gif" alt="商品カテゴリ" /></h2>

38行目:
<!--{if $arrTree[cnt].display == 1}-->



【掲載頂いたもの】

28行目〜31行目:

<div class="bloc_outer">
<div id="category_area">
<div class="bloc_body">
<h2><span class="square">■</span>商品カテゴリー</h2>

38行目:
<!--{if $arrTree[cnt].display == 1|| $arrTre[cnt].level <=2}-->



おそらく38行目にしかプログラム上の違いはないかと思います。
もし、変更しても表示されないとしたら、Smartyのキャッシュということも考えられます。

キャッシュをクリアして再度実行してみてはいかがでしょうか。

また、38行目の記載頂いたコード中のif文の条件に $arrTre[cnt] とありますが、 $arrTree[cnt]の間違いではないでしょうか。
コピーペースと時の抜け漏れならいいですが、もし実際に動いているソースも上記のようになっていると、
おそらく動作しません。

ご確認ください。

kirat
投稿日時: 2013/2/9 0:31
対応状況: −−−
新米
登録日: 2012/7/5
居住地: 関東
投稿: 7
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
dkazuto 様

大変お世話になっております。
昨日は早々にご回答頂き、誠にありがとうございました。


手を加えた以下の部分の、38行目

<!--{if $arrTree[cnt].display == 1|| $arrTre[cnt].level <=2}-->

の”$arrTre”は、確かに”$arrTree”の間違いですね。
すみません。

しかしながら、最初の投稿のソースはコピペの間違いではなく、その状態で動いておりまして、
最初にご指摘頂いた38行目を

<!--{if $arrTree[cnt].display == 1}-->

に、修正して試したところ変化がなく、
再度元々稼働していたソースで試したところ、こちらも変化ない状態が、現在になります。

Smartyのキャッシュで変化がないのでは?という新たなご指摘ですが、
恥ずかしながら「Smartyのキャッシュ」というのを初めて耳にしまして、
Smartyのキャッシュのクリアの仕方を調べてみましたが、よく理解できず、やり方がわからないで居ります。

ど素人で申し訳ありません…。。


本日、EC−CUBEの構築に使用しているPCではなく、
別のPCより、当方作成中のEC-CUBEのサイトを閲覧してみましたが、カテゴリの階層は全部出しのままでした。

IEなどのキャッシュのクリアとは意味が違うものだろうとは
憶測ながらも、Smartyのキャッシュのクリアについて調べてみた上で理解しているのですが、念のため確認してみました。

手を加えたソースの38行目が元々間違いであったに関わらず、
階層が全部開いたままの状態で稼働していた事は自分の知識では全く謎の域ですが、
単純に考えてcategory.tpl以外の部分の指示により動いているという事なのでしょうか?

相手にするにも疲れるようなレベルのど素人の質問で誠に恐縮ですが、
今しばらくお付き合い頂けたら幸いです。


何卒宜しくお願い致します。

dkazuto
投稿日時: 2013/2/12 9:46
対応状況: −−−
一人前
登録日: 2012/5/10
居住地:
投稿: 95
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
kirat様

ご返信が遅くなりました。

Smartyのキャッシュというのは、eccube上のフォルダで
/data/Smarty/templates_c/
以下にあるファイルのことです。

上記のフォルダ内にあるファイルを削除してみてください。

Smartyはテンプレートに書かれたロジックを
一度コンパイルしてPHPファイルにしてから表示を行います。

そのコンパイル後のデータがSmartyのキャッシュと呼ばれるものです。
通常はテンプレートのロジックを変えると再コンパイルされるため、
消す作業自体が不要なのですが、たまに更新されないケースがあるようです。

また、ブラウザキャッシュの可能性も考えられます。
お使いのブラウザのキャッシュも一度クリアして再度確認してみて下さい。
kirat
投稿日時: 2013/2/19 16:49
対応状況: −−−
新米
登録日: 2012/7/5
居住地: 関東
投稿: 7
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
dkazuto様

大変お世話になっております。
体調を崩してしまい、返信滞りまして誠に申し訳ありませんでした。

再度のご回答、ありがとうございます。

> Smartyのキャッシュというのは、eccube上のフォルダで
> /data/Smarty/templates_c/
> 以下にあるファイルのことです。

> 上記のフォルダ内にあるファイルを削除してみてください。


/data/Smarty/templates_c/ のフォルダ内のファイルの削除、との事ですが、
/data/Smarty/templates_c/ 以下に admin、defalult、mobile、simple、sphone の5つのフォルダが格納されており、
ファイル単独での存在がありませんが、
上記フォルダ丸ごと削除、と言う事ではありませんよね?

どのファイルを削除したらよいのか、申し訳ありませんがご面倒でなければお教えいただけないでしょうか。


尚、ブラウザのキャッシュのクリアは試してみましたが、変化はありませんでした。

 

kirat
投稿日時: 2013/2/20 21:14
対応状況: 保留
新米
登録日: 2012/7/5
居住地: 関東
投稿: 7
Re: カテゴリーの階層を全部出しから親カテゴリのみに戻したい
度々こちらで質問させて頂いておりました、カテゴリー階層の件ですが、
他の件でもエラーが見つかり、この度再インストール致しました。

階層の件につきまして、ご協力頂きましてありがとうございました。

心より感謝申し上げます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,466名です
総投稿数は110,097件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1654
8
red
1570
9
mcontact
1306
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

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

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