「検索」タグアーカイブ

EC-CUBE で管理者かどうかを判別し、表示内容を切り替える方法


WordPress の テーマ「Twenty Thirteen」において、固定表示されている検索機能をログイン時のみ表示させる方法をご紹介します。

つまり、一般の閲覧者は検索機能を利用できませんが、管理者のみ検索機能を利用することができるようにする方法です。

今回はWordPress の テーマ「Twenty Thirteen」において、検索機能の非表示化の例を用いて説明しますが、応用すれば様々なカスタマイズが可能になります。是非、参考にしてください。

1. 編集したいテンプレートファイルを開く

WordPress の テーマ「Twenty Thirteen」のメニューに固定表示されている検索機能は「header.php」に記述されていますので、header.php を開きます。

2. 編集したい個所を見つける

WordPressの検索機能は、「get_search_form();」と記述されていますので、検索してみましょう。

もし、検索機能を消したいだけならば、この記述をコメントアウトしてください。

3. コードを書き換える

<?php get_search_form(); ?>

こちらを下記のように書き換えます。

<?php
if (is_user_logged_in()) {
// ログインしている時は、検索機能を表示させる
get_search_form();
} else {
// ログインしていない時は、何も表示させない
}
?>

このようにif文を用いて、ログインしているかどうかを判別し、処理を書き込むことができます。


正規表現の一枚上手な検索術


私たちは普段インターネット上でキーワード検索を行っています。
 
さらに最近ではブラウザの機能向上により検索したホームページ上でさらにキーワード検索を行うことが出来ます。
 
このような検索技術は大変便利であるがために、先人たちの知恵によって検索技術が格段に進歩しました。
 
今では技術者くらいしか扱わない「正規表現」という知識を用いた検索技術も身近になってきました。
IMG_20160727_162314
 
ここで、正規表現について簡単に説明すると、曖昧さを持つキーワードを検索するための工夫です。
 
例えば文章から「SmartPhone」を検索するために「SmartHone」と検索しても通常の検索では見つかりません。
 
なぜなら、キーワードが完全に一致していないからです。
 
しかし、正規表現を用いると、PhoneだったかHoneだったかは別において、「Smart(P|)hone」として検索をするとこの’P’があるかどうかといった曖昧さを回避することが出来ます
IMG_20160727_162449
 
そして結果として「SmartPhone」と「SmartHone」の両方を見つけることが出来ます。
これが、正規表現の魅力です。
 
その他にも、電話番号のある1桁の数値を覚え忘れてしまってもその程度の曖昧さであれば見つけ出すことも可能です。
 
例えば「08011112222」だったか「07011112222」だったかで忘れてしまっても、検索欄に「0[7-8]011112222」とすれば、両方のキーワードを含む文字列を検索してくれます。
IMG_20160727_162535
 
さらに応用すると、アルファベット文字と数字、ハイフンを含む文字列パターンだけを見つけることが出来ます。
 
その正規表現は「(A-Za-z0-9-]+)」です。一見して複雑そうですが、これはまだまだ簡単な方です。
 
もともと、古くからはワイルドカードといって不明な文字を*として検索をかける仕組みは以前からありました。
 
ところが、Web開発の途中でPerlやPHPといった文字列を扱うプログラミング言語が登場してからは、人の目で確認するのにも限界があるということで正規表現という手法が編み出されたといわれています。
 

正規表現をマスターしておけば文字列の編集をする上で効率が非常に良くなります。

 
また、現在の有名なプログラミング用エディタには正規表現の機能が備わっています。
 
しかし残念なことに、まだ正規表現は正式には規格化されておらず、検索するエディタによって正規表現の形式が異なります
 
とはいっても、今後文字列に検索をかける上で完全一致型の検索はミステイクにもつながりますから、少なくともワイルドカードという存在だけでも覚えて使ってみて欲しいと思います。
 
また、更に興味があれば是非、正規表現もマスターしてみて下さると幸いです。
 


WinSCPを使ってサーバ上にあるファイルを検索する。


WinSCPに標準で備わっている機能を使うだけで簡単にWEBサーバ上のファイルを検索する事が出来ます。

WinSCPを使って検索する方法

WinSCPにログイン > メニュー > ファイルの検索(F) > ファイルマスク(F):

の部分に検索したい文字列を入力します。

特定のファイルを検索したい場合には、そのファイル名を入力し開始(S)を押します。

test.txt というファイルを検索したい場合には、

*test*  とファイルマスク(F):部分に入力し、開始(S)をクリックします。

winscp_search


Windows Live Mail(ウィンドウズライブメール)で効率的に検索を行う方法


Windows Live Mail(ウィンドウズライブメール)を使っていると

メールの本文に特定のワードを同時に含むメールを手軽に探したい場合があります。

“A” というワードと ”B”というワードを同時に本文に含むメールを抽出する

といった様な場合です。

その場合には、検索ワードを「”」(半角ダブルクォーテーション)で囲って、半角スペースに続けて次の検索ワードを同じく「”」(半角ダブルクォーテーション)で囲って検索窓に入力します。

windows_live_mail

ここでは、 “世話” と “” というワードをメール本文に同時に含むメール一覧が抽出されています。

ポイントは必ず「”」(半角ダブルクォーテーション)で検索ワードを囲って半角スペースに続けてもう一つの検索ワードも「”」(半角ダブルクォーテーション)で囲って検索窓に入力するという事です。こうしないと正常に検索(抽出)が出来ません。

※この「”」(半角ダブルクォーテーションはプログラムの世界では文字列を変数に代入する際に使用されます。