2013-04-16 59 views
0

我試圖構建一個與默認WP搜索框有點不同的搜索表單。我可以編輯searchform.php,但是我希望它以插件的形式出現,以便我可以輕鬆啓用它並隨意禁用它。但問題是,如果WP發現searchform.php,它將使用該文件中的表單,因此不會有像add_filter,add_action這樣的技巧。所以,我想問這裏的人是否有一些方法可以達到上述目的。即覆蓋searchform.php的代碼如何使用插件覆蓋searchform.php

同樣在不同的筆記中,如果我將搜索框命名爲「s」以外的任何內容,那麼代碼將轉到index.php,而不是search.php。這,我已經通過把調試回聲和其他奇怪的聲明驗證。 這可能是什麼原因?

在此先感謝您的幫助。

+0

尚未回覆? – user1314305

+0

搜索答案後,我會搜索一些可能有用的鏈接。在這裏發佈這些信息: http://wordpress.stackexchange.com/questions/26268/how-can-i-replace-the-search-results-displayed-by-wordpress/26271#26271 http:// stackoverflow。 com/questions/4647604/wp-use-file-in-plugin-directory-as-custom-page-template http://wordpress.stackexchange.com/questions/18199/how-do-i-override-the- search-template-in-a-plugin/18203#18203 – user1314305

+0

還有一些:http://wordpress.stackexchange.com/questions/65934/i-need-a-custom-search-page-to-lead-to-search -php-but-it-to-index-php/65958#65958 http://stackoverflow.com/questions/13997743/make-plugin-override-template?rq=1 http://shinraholdings.com/363/3-wordpress-hacks-to-unlock-some-much-needed-features/4/ http://stackoverflow.com/questions/9435931/wordpress-add-filter-get-search-form ?rq = 1 http://wordpress.stackexchange.com/questions/91897/how-to-make-plugin-work-in-each-template-in-wordpress?rq=1 – user1314305

回答

0

好的,我發現了一個黑客。雖然不是很好,但爲我工作。所以我所做的是,在我的插件的激活過濾器中,我編寫了將原始searchform.php(位於當前主題文件夾中的那個)重命名爲searchform_orig.php的代碼。這樣WP並沒有找到searchform.php,所以呈現我已經連接到過濾器的搜索表單。同樣,在停用部分,我將文件重命名爲searchform.php。可能並不理想,但正在研究我測試過的y系統。雖然我會有興趣瞭解這種方法的漏洞/警告。標記爲答案;-)