今日は、朝早くからGoogle Search APIをだらだら見ていました。以前と比べてかなり、パラメータや、メソッドが増えていて表現方法もたくさん増えている感じです。
以前から、検索結果を別の場所に表示するという問い合わせが、何度かあって拙作Google Custom Searchではできないとお答えしていたのですが、今日見ていたら、そのオプションがあるではないですか!
もちろん表示したElementを指定する必要があってモジュールを表示する場所と異なるところ(例えば記事が表示される場所)に表示するためには、モジュールでは設定できませんので、テンプレートに少し書き加えてもらう必要があります。
早速、実装してみましたのでHomeの右カラム上部で検索が可能です。
ターゲットウィンドウを指定したいと、問い合わせがあったので調べてみたらできるではないか・・・。当初からあったのでしょうか。
変更点
アップデート方法
デモ
フォーラムでforum.joomla.org
のようにmod_google_custom_searchで表示できないかと聞かれたのですが、このモジュールではforum.joomla.orgのような表示はできません。forum.joomla.orgが、どのように表示しているかというと、見た目は検索結果が自サイトのページ内に表示されているように見えますが、実際はIFRAMEを使って表示されています。検索結果をJoomla!で管理されていない?phpファイルに表示させているように見えます。
これは、簡単にモジュールの新規作成と、テンプレートに書き入れるだけで作ることができます。
作り方
<?php
$google_cx = mosGetParam($_REQUEST, 'cx');
if(empty($google_cx)): ?>
<?php mosMainBody(); ?>
<?php endif; ?><?php
$google_cx = JRequest::getVar('cx', null, 'request', 'string');
if(empty($google_cx)): ?>
<jdoc:include type="component" />
<?php endif; ?>