Fess検索結果画面のカスタマイズ

OpenSource

経緯

Fessを導入してLAN内のファイルサーバーを検索できるようになりました。

喜んで闇雲に検索してみたら、検索結果画面で気になった部分がありました。

それは、対象ファイルが存在するフォルダの情報が途中で切られてしまうところです。
例えばこんな風に表示されます。
「/サーバー名/共有フォルダ名/会議/月次開催/意思決定…」

これだと、ファイルサーバー内に存在することは分かっても、どのフォルダにあるかはけっきょく分からない。

結果

検索結果画面、カスタマイズしてみたら、できました。jspファイルを修正する必要がありました。

修正後はこんな風に表示されるようになりました。
「file://サーバー名/共有フォルダ名/会議/月次開催/意思決定されない会議/議事録.xlsx」
この部分をエクスプローラーにコピペしたら、直接ファイルを開くこともできて便利です。

修正したファイルは、fessをインストールしたファルダ内にある「app > WEB-INF > view > searchResults.jsp」です。

(修正前) *がついた行が変更箇所

<li id="result${s.index}">
<h3 class="title text-truncate">
<a class="link" href="${doc.url_link}" data-uri="${doc.url_link}"
*           data-id="${doc.doc_id}" data-order="${s.index}">${doc.content_title}</a>
</h3>
(中略)
<div class="site text-truncate">
*       <cite>${f:h(doc.site_path)}</cite>
<c:if test="${doc.has_cache=='true'}">
(中略)

(修正後)*がついた行が変更箇所

<li id="result${s.index}">
<h3 class="title text-truncate">
*       <a class="link" href="${doc.url_link}" data-uri="${doc.url_link}"
*           data-id="${doc.doc_id}" data-order="${s.index}">
*            <script type="text/javascript">
*            var urlj="${f:h(fn:split(doc.url_link,"/")[fn:length(fn:split(doc.url_link,"/"))-1])}";
*            document.write(decodeURIComponent(urlj));
*            </script>
*       </a>
</h3>
(中略)
*   <div class="site">
*       <cite>${f:h(doc.url_link)}</cite>
*   </div>
<div class="site text-truncate">
<c:if test="${doc.has_cache=='true'}">
(中略)

修正した内容が本当にこれで正しいのか分からないが、
とりあえず希望している動作をしているので、よしとします。

【参考にしたサイト】

とりとめもないBLOG

技術力がない私でも、こんなステキなブログが公開されていたおかげでやりたいことができました。

バージョン

※Windows版

  • Fess: 13.4.3

コメント

タイトルとURLをコピーしました