AjaxSearchの検索結果が表示されない

質問全般・改善要望
返信する
Weird
メンバー
メンバー
記事: 6
登録日時: 2012年6月22日(金) 17:01

AjaxSearchの検索結果が表示されない

投稿記事 by Weird »

お世話になります。
-----
MODXのバージョン:1.0.25J Evolution
PHPのバージョン:7.4.33
データベース:5.5.5-10.5.15-MariaDB
AjaxSearchスニペットバージョン:1.12.1
-----

表題の件、AjaxSearchを導入したのですが、テキストを入力して検索ボタンを押すと結果が表示されず、jsエラーが表示されてしまいます。

■リソース

コード: 全て選択

[!AjaxSearch?
 config=``
// &asId=`as2`
 &ajaxSearch=`1`
 &tplResult=`search-result-item`
 &debug=`1`
!]

■対象ファイル:ajaxSearch.js
■対象箇所:72行目

コード: 全て選択

    if (sf) {
        as['so'] = $(p + 'ajaxSearch_output');
        as['so'].setStyle('opacity', '0');←こちら
        as['so'].removeClass('init');
■エラー内容

コード: 全て選択

Uncaught TypeError: as.so.setStyle is not a function
    at activateAsInstance (ajaxSearch.js:formatted:72:18)
    at activateSearch (ajaxSearch.js:formatted:28:9)
    at g (mootools.js:3:7528)
    at mootools.js:3:7706
    at mootools.js:3:21359
    at Array.forEach (<anonymous>)
    at fireEvent (mootools.js:3:21299)
    at mootools.js:3:27550
    at Function.<anonymous> (mootools.js:3:27703)
    at g (mootools.js:3:7528)
調べたところ、「asId」が入っていないことでエラーになっているようで、「asId='as2'」とサンプルに従って入れたところ、別のエラーが表示されました。

■リソース

コード: 全て選択

[!AjaxSearch?
 config=``
 &asId=`as2`
 &ajaxSearch=`1`
 &tplResult=`search-result-item`
 &debug=`1`
!]
■対象ファイル:ajaxSearch.js
■対象箇所:26行目

コード: 全て選択

function activateSearch() {
    for (ias = 0; ias < asvar.length; ias++) {←こちら
        var asv = eval('(' + asvar[ias] + ')');
        activateAsInstance(asv);
    }
}
■エラー内容

コード: 全て選択

ajaxSearch.js:formatted:26 Uncaught ReferenceError: asvar is not defined
    at activateSearch (ajaxSearch.js:formatted:26:25)
    at g (mootools.js:3:7528)
    at mootools.js:3:7706
    at mootools.js:3:21359
    at Array.forEach (<anonymous>)
    at fireEvent (mootools.js:3:21299)
    at mootools.js:3:27550
    at Function.<anonymous> (mootools.js:3:27703)
    at g (mootools.js:3:7528)
フォーラム内
viewtopic.php?t=1890
も閲覧しましたが、問題が異なるようでしたので、質問を挙げさせて頂きました。

googleサイト内検索を検討しようとしたのですが、広告を表示することがダメだということで、このスニペットを検討しました。

■デバッグの結果は以下になります。
※一部サイトURLをマスキングしております。

コード: 全て選択

[22-Feb-23 04:41:28]  0.0003s 0.71Mb > AjaxSearch 1.12.1Php7.4.33MySql 5.5.5-10.5.15-MariaDB-log
[22-Feb-23 04:41:28]  0.0006s 0.71Mb > displayConfig - Config before parameter checking : Array
(
    [version] => 1.12.1
    [config] => 
    [debug] => 1
    [timeLimit] => 60
    [language] => japanese-utf8
    [ajaxSearch] => 1
    [advSearch] => oneword
    [asId] => 
    [whereSearch] => content|tv
    [sites] => 
    [subSearch] => 
    [category] => 
    [display] => unmixed
    [init] => none
    [withTvs] => 
    [order] => publishedon,pagetitle
    [rank] => 
    [maxWords] => 5
    [minChars] => 3
    [showInputForm] => 1
    [showIntro] => 1
    [grabMax] => 6
    [extract] => 1:content,description,introtext,tv_value
    [extractLength] => 200
    [extractEllips] => ...
    [extractSeparator] => <br />
    [formatDate] => Y/m/d : H:i:s
    [highlightResult] => 1
    [pagingType] => 1
    [pageLinkSeparator] =>  | 
    [showPagingAlways] => 0
    [landingPage] => 12
    [showResults] => 1
    [parents] => 
    [documents] => 
    [depth] => 10
    [hideMenu] => 2
    [hideLink] => 0
    [filter] => 
    [output] => 0
    [tplInput] => @FILE:assets/snippets/ajaxSearch/templates/input.tpl.html
    [tplResults] => @FILE:assets/snippets/ajaxSearch/templates/results.tpl.html
    [tplGrpResult] => @FILE:assets/snippets/ajaxSearch/templates/grpResult.tpl.html
    [tplResult] => search-result-item
    [tplComment] => @FILE:assets/snippets/ajaxSearch/templates/comment.tpl.html
    [tplPaging0] => @FILE:assets/snippets/ajaxSearch/templates/paging0.tpl.html
    [tplPaging1] => @FILE:assets/snippets/ajaxSearch/templates/paging1.tpl.html
    [tplPaging2] => @FILE:assets/snippets/ajaxSearch/templates/paging2.tpl.html
    [stripInput] => defaultStripInput
    [stripOutput] => defaultStripOutput
    [breadcrumbs] => 
    [tvPhx] => 
    [clearDefault] => 0
    [jsClearDefault] => /*****/assets/snippets/ajaxSearch/js/clearDefault/clearDefault.js
    [mbstring] => 1
    [asLog] => 0:0:200
    [liveSearch] => 0
    [ajaxMax] => 5
    [moreResultsPage] => 12
    [opacity] => 1
    [tplAjaxResults] => @FILE:assets/snippets/ajaxSearch/templates/ajaxResults.tpl.html
    [tplAjaxGrpResult] => @FILE:assets/snippets/ajaxSearch/templates/ajaxGrpResult.tpl.html
    [tplAjaxResult] => @FILE:assets/snippets/ajaxSearch/templates/ajaxResult.tpl.html
    [jscript] => mootools
    [addJscript] => 1
    [jsMooTools] => https://*****/*****/manager/media/script/mootools/mootools.js
    [jsMooTools2] => /*****/assets/snippets/ajaxSearch/js/mootools2/mootools-1.2.4.js
    [jsJquery] => assets/js/jquery.min.js
)

[22-Feb-23 04:41:28]  0.0007s 0.71Mb > AjaxSearch - pcre.backtrack_limit : 1000000
[22-Feb-23 04:41:28]  0.0007s 0.71Mb > getSearchString - searchString : 
[22-Feb-23 04:41:28]  0.0007s 0.71Mb > getSearchString - advSearch : oneword
[22-Feb-23 04:41:28]  0.0007s 0.71Mb > getEvents - subsearch : 
[22-Feb-23 04:41:28]  0.0007s 0.71Mb > getEvents - asf : 
[22-Feb-23 04:41:28]  0.0007s 0.71Mb > getEvents - offset : 0,0
[22-Feb-23 04:41:28]  0.0007s 0.71Mb > getEvents - pgn : 
[22-Feb-23 04:41:28]  0.0008s 0.72Mb > displayInputForm - searchString : 
[22-Feb-23 04:41:28]  0.0008s 0.72Mb > displayInputForm - searchString : 
[22-Feb-23 04:41:28]  0.0012s 0.72Mb > AjaxSearch - Elapsed Time : 0.0012s

色々と調べましたが手詰まりになってしまったため、どなたか知恵をお借りできませんでしょうか。
よろしくお願いいたします。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

AjaxSearchの検索結果が表示されない

投稿記事 by yama »

mootoolsを使う設定になっているのが原因のような気がします。
ajaxSearchではjQueryも使えます。
mootoolsはだいぶ前にサポートが終わってるので
そもそも使えないようにしてもいいんですが・・
Weird
メンバー
メンバー
記事: 6
登録日時: 2012年6月22日(金) 17:01

AjaxSearchの検索結果が表示されない

投稿記事 by Weird »

yama様

ありがとうございます。
コードの部分に「jscript=jquery」を追加したところ、問題なく検索結果を表示する事が出来ました!

コード: 全て選択

[!AjaxSearch?
 config=``
 &asId=`as2`
 &ajaxSearch=`1`
 &tplResult=`search-result-item`
 &debug=`1`
 &jscript=`jquery`
!]
mootoolsはサポート終了していたのですね…。
MODXのサイト内検索としてはこのスニペットほぼ一択状態なので、サンプルコードを貼り付けたそのままだと動かなく、詰まっている方は他に居ないのかな、と不思議に思いました。
(私のコーディング能力の問題かもしれませんが)

ともあれ解決したので良かったです!
本当にありがとうございました。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

AjaxSearchの検索結果が表示されない

投稿記事 by yama »

https://github.com/yama/evo-content-search
ドキュメントがないですが、ajaxSearch以外でいちおうありますよ。
ajaxSearchと比べると、チャンクやテンプレート変数を展開した状態のテキストを検索対象と
できることと、含まれる文字列の割合に応じて上位表示できることなどが違います
Weird
メンバー
メンバー
記事: 6
登録日時: 2012年6月22日(金) 17:01

AjaxSearchの検索結果が表示されない

投稿記事 by Weird »

yama様

返信ありがとうございます。

こちらのプラグインは知りませんでした!
チャンクやテンプレート変数を展開した状態のテキストを検索対象とできる、
とのことで、こちらのほうが理想に近いので、さっそく使ってみたいと思います。
情報をありがとうございました。
meteor
メンバー
メンバー
記事: 8
登録日時: 2020年9月17日(木) 13:00

AjaxSearchの検索結果が表示されない

投稿記事 by meteor »

横から失礼します。
evo-content-search 使わせていただいています。

curl 関数が使えないと動かないので、
レンタルサーバーに対応していただきました。
試しているのですが、検索にひっかからないものは
インデックス構築失敗(or 途中)になっているでしょうか?
3000ページくらいあるのですが、通常だと
1時間はかかりませんか・・・?
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

AjaxSearchの検索結果が表示されない

投稿記事 by yama »

3000ページあるとタイムアウトで失敗する可能性が高いかもですね。
エクスポート機能とほとんど同じことをやっているので、エクスポートが
失敗する場合は同じようにうまくいかないです。
調整の余地がないか、少し考えてみます。
返信する