网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > 网络知识 > 正文

自定义和扩展WordPress搜索功能

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 14/07/04

网学网网络知识编辑为广大网友搜集整理了:自定义和扩展WordPress搜索功能绩等信息,祝愿广大网友取得需要的信息,参考学习。

  今天在做一个WordPress项目的时候,客户要求对wordpress默认的搜索功能进行修改,要求按照作者,按照文章标题,以及按照文章内容,这三个条件进行搜索。实现起来也比较简单,为了防止以后会用到所以来总结一下。

  首先说下添加的方法,一是自己创建一个搜索框出来,二是使用wordpress默认的搜索框。代码如下:

<?php get_search_form(); ?> //直接使用默认搜索框放到你需要显示的地方即可

<form method="get" id="searchform" action="<?php echo 自定义和扩展WordPress搜索功能_网学
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号
SERVER[''PHP_SELF'']; ?>">
<input name="s" id="s" type="text" />
<input id="searchsubmit" type="submit" value=" " />
</form>
//自己手动创建,需要注意的是里面的name="s" id="s" 这个是必须有的,而且是不能改的。

//如果改了的话wordpress就获取不到你要搜索的内容了。

  添加好之后,你需要创建一个search.php文件出来,用来显示搜索内容,如果不创建它会在index.php里面显示,不过建议大家创建出来便于自己定义。创建好之后就可以在里面添加显示代码。默认的显示方法是

<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>
<div><a href="<?php echo get_permalink($post->ID); ?>"><?php the_title(); ?></a></div>
<?php endwhile; ?>
<?php else : ?>

<article>
<header /><h1 _e( ''没有找到该文章'', ''leizi'' ); ?></h1>
</header>

<div /><p><?php _e( ''抱歉没有找到该文章'', ''leizi'' ); ?></p>
<?php get_search_form(); ?>
</div>
</article>
<?php endif; ?>

  如果你想自己定义搜索显示内容,不使用默认显示方法。下面是磊子自己简单写了一段。

<form method="get" id="searchform" action="<?php bloginfo(''home''); ?>">
<div style=""><input name="s" id="s" type="text" /></div>
<div style="width:55px;"><input id="searchsubmit" type="submit" value=" " /></div>
<div></div>
<div><label><input value="title" name="sosearch" type="radio" checked="checked" />按标题</label> <label><input value="users" name="sosearch" type="radio" />按作者</label> <label><input value="posts" name="sosearch" type="radio" />按全文</label></div>
</form>

//上面这一段放到需要显示的地方。下面这一段是放在search.php文件里面

<?php
$resault = 自定义和扩展WordPress搜索功能_网学
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号
GET[''s'']; //获取搜索内容
$tiaoj = 自定义和扩展WordPress搜索功能_网学
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号
GET[''sosearch'']; //获取搜索条件,上面写到按照标题,作者,全文
if($tiaoj == "users")
{
//通过搜索条件来判断显示的内容,第一个是按文章作者搜索显示

$user_info = $wpdb->get_results("SELECT * FROM $wpdb->users WHERE display_name like ''%".$resault."%''");
if(!empty($user_info))
{
foreach($user_info as $key => $val)
{
$posts_info = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_type = ''post'' and post_status = ''publish'' and post_author = ''".$val->ID."''");

foreach($posts_info as $k=>$v)
{
?>
<li><span><?php the_time(''Y-m-d''); ?></span><a href="<?php echo get_permalink($v->ID); ?>"><?php echo $v->post_title; ?></a></li>
<?php
}
}
}
else
{
echo "<li>抱歉,没有找到符合搜索条件的内容!</li>";
}
}
elseif($tiaoj == "title")
{
//按照文章标题进行显示

$posts_info = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_type = ''post'' and post_status = ''publish'' and post_title like ''%".$resault."%''");
if(!empty($posts_info))
{
foreach($posts_info as $k=>$v)
{
?>
<li><span><?php the_time(''Y-m-d''); ?></span><a href="<?php echo get_permalink($v->ID); ?>"><?php echo $v->post_title; ?></a></li>
<?php
}
}
else
{
echo "<li>抱歉,没有找到符合搜索条件的内容!</li>";
}
}
elseif($tiaoj == "posts")
{
//按照文章内容进行显示

$posts_info = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_type = ''post'' and post_status = ''publish'' and post_content like ''%".$resault."%''");
if(!empty($posts_info))
{
foreach($posts_info as $k=>$v)
{
?>
<li><span><?php the_time(''Y-m-d''); ?></span><a href="<?php echo get_permalink($v->ID); ?>"><?php echo $v->post_title; ?></a></li>
<?php
}
}
else
{
echo "<li>抱歉,没有找到符合搜索条件的内容!</li>";
}
}

大概效果如下:

  以上就是磊子通过使用数据库语句进行模糊搜索然后按照条件来进行显示。不过这里还需要一些改进的地方,比如添加分页,还有就是其他更简单的方法,这个需要大家集思广益,提出更好的方法和建议,当然了插件就不需要啦,呵呵!

Wordpress下载:

WordPress v3.5.2 简体中文版下载

界面预览

  • 软件语言:简体中文
  • 运行环境:PHP/Mysql
  • 软件授权:免费版
  • 更新时间:2013-7-24 16:05:30
  • 相关链接:Home Page

WordPress v3.9 英文版下载

界面预览

  • 软件语言:英文
  • 运行环境:PHP/MySQL
  • 软件授权:开源软件
  • 更新时间:2014-4-17 9:56:31
  • 相关链接:Home Page

本文转自:http://www.favortt.com/wordpress-custom-search.html

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号