Salesforce技術ブログ(意外な盲点!あの迷惑なコミュニティのグローバル検索だけを非表示にする方法!)
はじめまして!グリズリー工藤です🐻。
クマとマラソンが好きです🐻。
コミュニティを利用した開発を行っている方は結構多いかと思いますが、標準機能を利用している場合、アクセス権やらなにやらをきちんと設定しておかないといろいろ部分で問題がでてきます。
※Chatterの投稿が全部見えてる~とかURLに「/003」と打ったら取引先責任者の個人情報が他の人から丸見えになっている etc.
これら全部を考慮に入れた上で、一つ厄介な機能がありまして、グローバル検索はたとえ使用しない場合でも、画面には表示されたままになってしまいます。
グローバル検索を消すためには、コミュニティヘッダーをHTMLに置き換えることで対応はできますが、グローバル検索とともに、ユーザメニューまで消えてしまい、100点の解決方法ではありません。
そこで一工夫してこの部分を非表示にする方法を考えてみます。
グローバル検索部分の要素を見てみると「headerSearchContainer」というクラスを持っています。
このクラスに対して「display:none;」を適用してあげれば、ひょっとして非表示にできるのでは?とあたりをつけてみます。
コミュニティのレイアウトはコミュニティの設定画面の「管理」⇒「ブランド」から変更できます。
ヘッダーには先ほど記載したとおり、HTMLファイルを設定でませんので、フッターにHTMLを挿入します。
今回フッターに挿入しているのは、テスト用に以下のようなシンプルなHTMLとしてみましたが、実際にご利用になる際は、標準フッターの固定リンクなどを入力し、それっぽく加工したほうが良いでしょう。
<html>
<header>
<style>
.headerSearchContainer {display:none;}
</style>
</header>
</html>
設定してみると、バッチリ消えてくれました。ユーザメニューもちゃんと残っています。
あくまで標準CSSのプロパティ設定を変更しているだけですので、クラス名が変わってしまうと使えなくなってしまう、非表示になっているだけで機能は生きている、といった問題はありますが、簡単に非表示にできる方法ですので、お困りの方はこの方法も検討の一つとしてみてはいかがでしょうか?
【~グローバル検索でお悩みの方へ~】
グローバル検索でなかなか思った通りの検索結果にならないとお悩みの方へ。
マウス操作だけで検索画面を作成できる、「検索クリエイターPRO」をお勧めします!
30日間無料トライアルを是非ご利用ください!