使用Algolia InstantSearch js庫和PHP客戶端,我希望將由InstantSearch urlSync創建的查詢字符串傳遞到PHP庫的搜索方法中。有沒有一種方便的方法來做到這一點,或者我將不得不將查詢字符串轉換爲庫自己期望的參數?使用Algolia,如何將由urlSync創建的查詢字符串傳遞到php客戶端?
例如,我有字符串:
?q=&hPP=1000&idx=myindex&p=0&dFR%5Bcolor%5D%5B0%5D=orange&is_v=1
理想我想
$client = new \AlgoliaSearch\Client("x", "x");
$index = $client->initIndex($_GET['idx']);
parse_str($_SERVER['QUERY_STRING'], $params);
$res = $index->search('', $params);
但這樣做會引發有傳入的PARAMS意外性質的錯誤。
感謝您的解釋。是的,目標是SEO;我希望在js準備好之前提供緩存的結果。如果syncUrl使用的名稱與過濾器參數兼容,那將是非常好的,並且這些在所有客戶端都是一致的(可能它們已經是我了,至今我還沒有使用任何js和PHP)。但這只是一個建議。現在我只需將傳遞的URL參數映射到PHP,我們就可以穩定地控制我們將要接收的內容,並讓js在服務器上運行,但這僅僅是爲了矯枉過正。再次感謝! –
這絕對是一個很好的建議,正在內部進行討論。由於任何改變都可能不會在幾個月前完成,因此這個解決方案可能是目前最好的解決方案。但顯然,我們正在盡全力在所有支持的平臺上統一體驗。 :) – Jerska