バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 商品検索で特定のカテゴリを検索から除外したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
sayaka
投稿日時: 2013/8/21 10:22
対応状況: −−−
半人前
登録日: 2013/8/21
居住地:
投稿: 12
商品検索で特定のカテゴリを検索から除外したい
お世話になります。

商品検索で、特定のカテゴリ(特定のカテゴリの商品)を検索から除外する方法を探しております。
ご存じの方がいましたら、ご教授願います。

カテゴリID「5」(非表示カテゴリ名)を非表示にしたい場合
・商品検索のプルダウンから「非表示カテゴリ名」を非表示
・商品名で検索したときに、「非表示カテゴリ名」の商品は検索から除外したい。
・ただし、カテゴリーIDのURL(../products/list.php?category_id=5)を打つと、表示されるようにしたい。

一般の方には、非表示にして、URLを知っている者だけに販売するようにしたいです。よろしくお願い致します。
-------------------------------------------------------------
EC-CUBE:2.12.1
PHP:PHP 5.3.3
データベース:MySQL 5.0.95
-------------------------------------------------------------
yuh
投稿日時: 2013/8/21 11:44
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 商品検索で特定のカテゴリを検索から除外したい
LC_Page_FrontParts_Bloc_Category.phpの
lfGetCatTreeから該当のカテゴリIDを削除


・商品検索のプルダウンから「非表示カテゴリ名」を非表示
LC_Page_FrontParts_Bloc_SearchProducts.phpの
lfGetCategoryListから該当のカテゴリIDを削除


・商品名で検索したときに、「非表示カテゴリ名」の商品は検索から除外したい。
LC_Page_Products_List.phpの
lfGetSearchConditionからキーワードがある場合には該当のカテゴリ名の商品は除く処理を追加

ざっくり書くとこのような処理を追加でできると思います。

sayaka
投稿日時: 2013/8/21 13:50
対応状況: −−−
半人前
登録日: 2013/8/21
居住地:
投稿: 12
Re: 商品検索で特定のカテゴリを検索から除外したい
返信ありがとうございます。

ヒントを元に1時間程、試行錯誤してみたのですが、
理想通りに実装できませんでした。

恐れ入りますが、もう少し具体的に教えて頂けないでしょうか?
yuh
投稿日時: 2013/8/21 14:35
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 商品検索で特定のカテゴリを検索から除外したい
どのあたりが実装できなかったんでしょうか?
sayaka
投稿日時: 2013/8/21 14:56
対応状況: −−−
半人前
登録日: 2013/8/21
居住地:
投稿: 12
Re: 商品検索で特定のカテゴリを検索から除外したい
結論からいうと、質問したことは、一つも解決できていない状態です。

他のサイトを参考にし、
・商品名で検索したときに、「非表示カテゴリ名」の商品は検索から除外したい。
は出来たのですが、カテゴリーIDのURL(../products/list.php?category_id=5)を打っても
商品がありませんと表示されます。しかし、商品IDのURL(../products/detail.php?product_id=2)
を打つと表示されます。カテゴリーIDのURLを打った時にも表示させたいので、この方法は、
私が望んでいるものとは違ったみたいです。

yuhさんに教えていた方法が私には難しく、まだ試せていない状態です。


また、カテゴリブロックの一覧表示からも「非表示カテゴリ」を消さなくてはいけないことに
気付き、検索して調べた結果、その方法はうまく実装できました。

最近EC CUBEを始めたばかりですので、難しいことだらけです。

もし、よろしかったら、分かりやすく教えて頂けないでしょうか?
お願い致します。
yuh
投稿日時: 2013/8/21 18:52
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 商品検索で特定のカテゴリを検索から除外したい
LC_Page_Products_List.php

        // 分割したキーワードを一つずつwhere文に追加
		$wordflag = false;
        foreach ($names as $val) {
            if ( strlen($val) > 0 ) {
                $searchCondition['where']    .= " AND ( alldtl.name ILIKE ? OR alldtl.comment3 ILIKE ?) ";
                $searchCondition['arrval'][]  = "%$val%";
                $searchCondition['arrval'][]  = "%$val%";
				$wordflag = true;
            }
        }
		if($wordflag === true ){
				$searchCondition['where']    .= " AND ( alldtl.name NOT ILIKE ? AND alldtl.comment3 NOT ILIKE ?) ";
				$setcategoryname = "非表示カテゴリ名";
				$searchCondition['arrval'][]  = "%$setcategoryname%";
				$searchCondition['arrval'][]  = "%$setcategoryname%";
		}

こんな感じと思います。
テストはしてないので動作するかはわかりませんが、キーワードがある場合のみ、特定のキーワードを省く条件を追加する感じですね。
sayaka
投稿日時: 2013/8/23 13:25
対応状況: −−−
半人前
登録日: 2013/8/21
居住地:
投稿: 12
Re: 商品検索で特定のカテゴリを検索から除外したい
時間がかかりましたが、なんとか解決できました。
yuhさんありがとうございました。

yuhさんのアドバイスを元に、もう一度検索をし直したら、
参考になりそうなサイトを発見することができました。
そのサイトとyuhさんのアドバイスを元に実装しました。

合っているか分かりませんが、質問した全ての仕様を
実現することが出来たので、
これで、しばらく様子をみたいと思います。

本当にありがとうございました。
また何かありましたら、そのときは宜しくお願い致します。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,883名です
総投稿数は110,000件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1295
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.