概要

Omeka Sで以下のような独自の検索ページを作成する方法について紹介します。

背景

Omeka Sでの検索ページの作成にあたり、詳細検索画面で絞り込み項目を限定する方法を紹介しました。

一方、概要で紹介したように、指定した項目だけを列挙した検索画面を作成したい場合もあります。このような検索ページの作成にあたり、「Advanced Search」モジュールを使うことができます。

https://omeka.org/s/modules/AdvancedSearch/

以下のページで使い方を説明しています。以下ではApache Solrとの連携を行っていますが、Referenceモジュールなどと組み合わせて、Omeka S単体で使用することもできます。

ただし、「Advanced Search」モジュールは機能が豊富なゆえに、使いこなすのが難しい面があります。そこで、今回は簡単に上記のようなカスタム検索ページを作成する方法について紹介します。

作成方法

具体的には、検索用の独自ページを作成します。

以下のように、特定のサイトで、ページを作成します。

「HTML」ブロックを追加します。

「ソース」ボタンをクリックして、以下のHTMLをコピペします。

<<<dbs/iucc]d}f}f}f}f}f}f}f}svtro;o)uuuuuuuctin{}{{{cis;ncp}ncfff)ff)i}f)rncllrnciiiicci}rncssrnciiirnd}riops,unecoa)coooo;oo;fo;ecoaaeconnnnoofecommeconnneco)idnttltphlllmittnrc;tnrrrcrrcf)rcttnbbttnppppnnittnaattnpppttccfffA}df;p=>ayleaaaetuisaoismmmrmmr(o;mruiseeuisuuuusssnuislluisuuuuiuoooor.)oot"ipbpalbbbnipotmnotGGGe`"pGGeprcGerotllrotttttettvprotllrottttromnrrrrdff;cr>ddaeecpeeetaFnstnrrrapfarraamrrann..nn....taunn..nn...nnesmmmaoooumy=rl:e:lll.loc.afoootrorootrGeotlctitncpuvltsctitnvnt...ycrrm.n"a:h:::airioficouuueorauuearauefcalelcnyallvrau.icmlescnyaaistmas.uEmesasm"o"dzmnnonrrpppIpmmppHmotpHorbaxarppmaaallevnraaxmrppmlne.fectfma.numus"il"""deSitreem...ne-...i.ue.ireestbeueesclPu)apelstaeueeuptgottyrecatbibndESutaEraGcaaprcpaadppHadmalsCeatseuaelualsClateuuerhilonhp.mcm="evebiia.trlpputolppdr.ipdGtNolt==Nher{uttNolt==tptmooemt(pbi-i,r"eamancaeoapptynappeoadpere=an;e=aoa=e;e=an;e==;FEdn.(.(eotft[:",nrilehpFusee([tceenppdenoLmtI"nmlmHmtH"nol=dqind(i",""tcsir(popsnn$rennIepenIuadeendtaedsu=edeeidhavre==iundy)e",,pLhsz(erNdd{ohddnrendnpbonpoemerlondoimammdsepC.;lcriFie=pnm=aCCiloCCptnICp;ec=tucxe=r=lvpc=tdcdelSeo""pruhadl"pposooSadGmhhn"lhhuydnhulutut;PaTueud;uuncG.lytipsa,rrptrnedrCrdeiid,diit)Cpit(m"=(m"c=nalem"=nmeebtuE.aS)lp"sooeem(aoahoolleell(hul(temne;leruxefIen;mBmT/yede>spprn()rcmiuc=ddxrdd`{itd`enbtanapwaetnotnn"iye"il=(n<=eete);cu,lpu((}((pl((pxt-emtslm;(trept;sIn;t=e>id/"rryr;hmd(m"c]crd`rt.1xe.saUst.mxu.sdtecnCdbtt:(Fei(pefr[ro(po)c"t,cNcR.ec-ttci(.m"t{phityy"onncanoeteprpr;;raeLgxrt;(ro"c"nouivn::3Drtdrrtraeaeoe{ecemhSeteenensr;ortl>,Om.eea.mtxtrpralaeoet)axaa(uenA.db11M(gxamc-etetettat;la(ttmt)baelc(t,0tC)e)t,rgL]Hyryesedrn{eeemt"llfn,yoteera`e[t[EsEecaEt,E{ie;(oo-tpn{E=Fiaob,l$y$lNlrhmleltE"nrpytetl>ontuep{[{eaePeexve"l#emrpy:eerdeplTi$immma)mtam)edN)iepnm{meE(en{neeer;e-le.myo;m:e"teGxlmpxdidn,nanmunaenda":iLnr)ebatenett"mtuetdnaer,"notom-r(xdx(p("s(t)(dtm(yi""aBu{e4ap}e}"l";("e"E(it"ne,dypn"ma]x]laiwsd{iv"cr>"qeI(t;.r[}[acnim"nef-u,"hddp(lat]jbepna;pnofe,e"(a"amy[oehudlutri)<hl,"rdb.ppilotoltLme)/ehpdaiehern"l"w""i"l;ble:ymvle]oe)d).))s)dupln,")l`pr;e;l;;t;st:p"a))p,e]roet:=mi;;)r`)cnio">in)pt,aenn"cd;ay{trp>{-er]"i(u"fxa[ao"ti)m]nnc""}e).`d.l)",l;t,"si}dy)ec,}sppak,"ear"))rc,;ahm).;pr=o>pe{rty)

結果、以下のように、ボタンのみが表示されます。

ページにアクセスしてみると、冒頭で示した検索ページが表示されます。

カスタマイズ

検索項目

以下の部分が設定項目です。

c]o;n{}{{{s,tltphlllayleaaapbpalbbbaeecpeeerl:e:llla:h:::m"o"s"il"""nd="e,r"[:",,""",,pr"ppo,rrpooeppreetrrytt:yy::3,11,0t,ytpytepy:ep:e"":i,"ni""ne,"q,"h,ehlehple:pl:p":""""}",},},

propertyには、プロパティのIDを指定します。未指定の場合は、プロパティを指定しない検索です。1がdcterms:title、10がdcterms:identifier、3がdcterms:subjectです。

IDの探し方として、以下のような語彙の一覧ページから検索してみると、URLからIDを確認することができます。

typeには、eqinを指定します。eqが完全一致、inが部分一致検索です。これ以外の文字列も指定可能です。上記と同様、通常のOmekaの検索時に生成されるURLから、利用可能な文字列を確認してください。

そのほか、placeholderhelpテキストを設定できます。

スタイル

現在はBootstrap 5が導入されていることを前提としたクラス(form-group mb-4など)を指定しています。お使いのテーマなどに合わせて、スタイルやクラスを変更してください。

まとめ

今回はOmeka Sの静的なページとして、カスタム検索ページを作成する方法を紹介しました。

ただ、プロパティのID指定の方法などに難がありますので、今回紹介したようなページを作成するカスタムモジュールを今後作成したいと思います。

参考になりましたら幸いです。