我一直在寻找这个问题的解决方案,但找不到正确的答案。
根据老板的要求,我正在为我的网站开发一个定制的知识库插件。around插件不能满足他的需要,所以我需要创建自己的插件。
我有一个自定义的帖子类型叫做wikicon_recurso
它有自己的分类法、元数据等。
我现在遇到的问题是我自己的“Wiki”中的搜索功能。当有人单击菜单上的“Wikicon”时,它将重定向到存档模板,我已对其进行了修改,以便显示搜索表单和添加到wiki的最后帖子。
当搜索返回结果时,它会重定向到my search-wikicon\\u recurso。php中的插件文件夹,并显示我想要的结果。
I\'m having trouble to modify the template when no results are found. 例如,我有一个“测试”资源,当我找到测试时,我会被重定向到搜索模板,这很酷。但是如果我找到Hello,因为没有结果,我会被重定向到默认的Wordpress/Theme无结果页面,其中搜索表单没有使用post\\u type参数,正在查找所有内容。
How can I modify the destination of empty results to my Search Template, for example, so they can search again?
实际上,在我的插件上,我重定向到如下模板:add_filter( \'template_include\', \'include_template_function\', 1 );
function include_template_function( $template_path ) {
if ( get_post_type() == \'wikicon_recurso\' ) {
if ( is_singular() ) {
$template_path = plugin_dir_path( __FILE__ ) . \'/single-wikicon_recurso.php\';
}
elseif (is_search()) {
$template_path = plugin_dir_path( __FILE__ ) . \'/search-wikicon_recurso.php\';
}
elseif (is_archive()) {
$template_path = plugin_dir_path( __FILE__ ) . \'/archive-wikicon_recurso.php\';
}
}
return $template_path;
}
这是我在这里找到的其他答案的搜索表。它显示在archive-wikicon\\u recurso上。php和search-wikicon\\u递归。php:<form role="search" action="<?php echo site_url(\'/\'); ?>" method="get" id="searchform">
<input type="text" name="s" placeholder="Search query"/>
<input type="hidden" name="post_type" value="wikicon_recurso" />
<input type="submit" alt="Search" value="Search" />
</form>
我尝试了这个页面上的多个答案,并在谷歌上进行了进一步的搜索,但我无法做出任何有用的答案。我不得不说,这是我第一次为Wordpress创建这么大的插件,所以我开始学习。提前谢谢。