背景
当前有这样的一个需求,要实现让客户能够自助登录系统查询一些个人的信息,市面上没有特别符合我的需求的产品,经过一段时间的研究,想出了一个用wordpress实现简易信息查询系统,有两种方式。
方式一:使用网页密码
原理:wordpress可以设置给某个页面设置密码
优点:简单快速
缺点:无登录功能,用户无法自行和修改密码
1、安装wordpress
可以是使用海外共享空间或者vps来安装,因为可以做到免备案。安装方法在网上非常多,这里就不再赘述了
2、修改固定链接结构为文章名
3、新建一篇文章,设置好文章名链接地址和密码
我们可以使用用户id作为链接后缀,例如张三,我就以/zhangsan作为链接地址,可以简单理解为这就是客户识别码了
需要注意的是,如果文章中要加入其他文章的超链接的话,其他文章也需要设置好密码
4、当用户访问这个网址时,就会需要密码才能访问
5、如果你需要在首页实现更好的引导效果,编写一个custom_navigate的简码功能,在首页实现跳转功能
在wordpress网站目录/wp-content/themes/你所使用的主题名字/functions.php文件最下面插入以下代码
function custom_navigate_shortcode() {ob_start();?><center><input type="text" id="inputPath" οnkeydοwn="handleKeyPress(event)"><button οnclick="navigateToPath()">前往</button></center><script type="text/javascript">function navigateToPath() {var path = document.getElementById('inputPath').value;if (path) {window.location.href = '/' + path + '/'; // 将当前页面重定向到新的路径} else {alert('请输入有效的客户识别代码!');}}</script><?phpreturn ob_get_clean();
}
add_shortcode('custom_navigate', 'custom_navigate_shortcode');
6、新建一个页面,添加简码,输入[custom_navigate]
7、将此页面设置为首页,最终效果如下
当用户在输入框中输入zhangsan
,就能自动跳转到当前网址/zhangsan的域名当中,然后输入密码,就能访问他需要查询的信息
首页设置成这个样子,这个信息查询系统看着就像点样了
8、其他的优化技巧参考下面方式二的第11步之后
方式二:使用插件实现登录
优点:可实现登录功能,用户可自行设置更改密码,另外插件还有很多丰富的功能
缺点:设置较为麻烦
1、安装wordpress
可以是使用海外共享空间或者vps来安装,因为可以做到免备案。安装方法在网上非常多,这里就不再赘述了
2、安装2个插件:ProfileGrid、WP Private Content Plus
ProfileGrid是实现让用户登录的功能
WP Private Content Plus是实现文章仅允许指定用户才可以查看的功能
免费版已经能满足我们的需求
3、关闭ProfileGrid里面用不到的功能
ProfileGrid里面的功能很丰富,这是一个会员信息管理插件,有很多我们用不到的功能,例如私信,好友系统等等,大家按需关闭
4、新建一个成员,此处我新建了一个账户名为zhangsan的成员,并加入群组
5、开启Private Content Module
这个插件功能也挺丰富的,大家有需要的可以研究一下
6、新建文章,里面编写上张三才能查看的信息
这里其实也可以插入其他的文章链接,形成一个目录结构,其他的文章记得也要设置好权限
7、设置该篇文章仅允许张三才能访问
8、修改成员资料显示字段
这里我新建了一个信息查询字段,让这个字段显示在成员资料页,方便成员登录后快速看到需要查询信息的页面链接
无用字段大家可以自行删除,website字段对应的就是成员资料里的“网站”,Biographical Info字段对应的就是成员资料里的“个人说明”
9、website字段和Biographical Info字段我们可以在用户的个人资料页面维护,但是新加的字段似乎只能是登录该用户账号之后再编辑该字段来维护信息,这点暂时还没有找到比较好的办法(应该还能通过操作数据库的方式来实现)
10、查看效果
此时在网站首页登录之后,页面会跳转到个人资料页面,按照提示点击链接,即可直接跳转到需要查询的信息页面(就是刚刚新建文章的页面)。并且该信息页面只有张三这个用户登陆后才能查看到,未登录或者其他非管理员用户都无法查看,很好的保护了用户信息
11、插件推荐
插件名称 | 作用 |
---|---|
WP Disable Sitemap | 隐藏站点地图 |
Wordfence Security | 网站安全防护 |
WPS Hide Login | 隐藏默认的登录链接 |
WPFront Scroll Top | 页面较长时方便用户回到最上面 |
HappyFiles Pro | 个人认为最好用的媒体库管理工具 |
此外建议把设置当中的“建议搜索引擎不索引本站点”勾选上
12、页面优化
修改之后的网站需要再优化一下页眉页脚和首页等地方,最好换一个主题,自带的主题不是很好用,用Kadence主题不错,免费版就够用了。
wordpress还有很多可优化的地方,网上教程众多,此处不再赘述
13、使用Ajax Search Lite插件实现快速搜索
对于管理员来说,由于文章列表功能很有限,文章那里去要快速找到需要编辑的文章很不方便,此处选择Ajax Search Lite插件来快速找到你需要查看和编辑的文章
①安装Ajax Search Lite
②新建一个页面,将Ajax Search Lite添加进来,并此页面设置为仅管理员可见
③此时管理员登录网站后再访问这个网页,就能够快速找到并编辑你想要编辑的文章,如果未登录网站就去访问的话,只会显示404页面
后话
以上两个方法是我研究了很多方案之后,研究出来的最符合我们需求的解决方案,看到网上还没有人分享这个,故分享出来。
很多wordpress的入门操作这里没有过于详细的介绍,所以阅读本文需要有一点wordpress基础。
此处仅仅只是抛砖引玉,希望能给有类似需求的网友一点启发。