WordPress和WHMCS集成的问题和解决方案

2022-08-13 14:03:08 浏览数 (1)

站长最近一直在折腾WordPress和WHMCS的整合,到目前为止,已经踩过不少坑,记录一下。

支持WHMCS正版

最初的时候从官方位置下载到最新版的WHCMS源码,然后从网上找来破解文件,安装了以后,遇到一个问题,普通用户注册后,一旦退出无论如何都无法再登录,即使确定注册和找回密码等流程设置了正确的密码,也还是登录不了。从网上找到的解决方案说是取消myssql 的严格模式,但是一直还是不行。

就在站长准备放弃的时候,花钱从官方购买了正版授权,并下载官方版本,然后在新的服务器上安装,就这样就可以了。不去追究是服务器原因还是非正版了,反正购买了正版就OK了。

强烈建议正式商用一定要购买正版!

WHMCS的不足之处

在不断接触中,发现了WHMCS的各种不足。

WHMCS不支持后台上传文件

没想到这么强大的一个程序,居然不支持在后台上传文件,写文章也不支持上传图片,搞得站长还另外搭建了一个图库,本以为将就着发布文章,没想到WHMCS对中文太不友好了(见下面一条),索性就用WordPress发布帮助文档。

WHMCS对中文不友好

1、关于PDF账单乱码已经很多人提到了,具体见: https://wzfou.com/whmcs-alipay/#PDF

2、WHMCS发布“常见问题”时,网址不支持中文,只要是标题中存在的中文都会被过滤掉;中文标签虽然可以显示,但是同样出现乱码,导致点击中文标签的网址,是无论如何也看不到关联的文章。

WHMCS不适合做SEO

也许从一开始,WHMCS就不打算在SEO这块做功夫,毕竟人家的定位是一个客户系统,也就是后台界面,前台的东西涉及比较少。没有针对每个页面的SEO功能,什么关键词、描述等都没有,或许可以通过插件扩展,但和WordPress相比,让站长没有了进一步扩展的兴趣。

WHMCS的产品不支持设置图片

想给产品设置一个头图之类的,没想到WHMCS不支持,不支持!可能通过自定义字段勉强可以去开发下,但是不是每个人都有能力去弄。

WordPress和WHMCS集成插件

WordPress和WHMCS的集成,的确很不容易,目前市面上有两套插件:

1、WHMpress(包含3个插件,购买总共需要101美元,700元人民币,一次性付款永久更新):该插件对于将WHMCS的相关页面直接集成到WordPress还是基本可以,但是如果WHCMS使用了一些第三方插件,这些插件添加到用户中心的页面功能有些就无法自动集成,此外,在用户数据同步和登录同步方面,支持不太好,仅支持在插件自身页面进行同步登录,不是真的支持WordPress和WHMCS两个系统独立登录。

2、WHMCS Bridge(有免费版,但是如果要同步登录等功能,需要购买收费版 80美元/年,每年都要续费)站长是后面才试用这个插件的高级版的(可以免费试用45天),这个插件相对于上一个,集成功能更加紧密,但是每个页面的打开速度有些慢,同步登录也仅支持自身插件生成的页面。

针对以上两个插件,如果你一定要用,个人比较推荐第二款,除了打开页面有些慢,其他都集成的不错。

站长采用的集成方案

站长最终两个插件都没用,采用了如下方案:

1、将WHMCS安装在主站的子目录下,作为站点下的一个组成部分,然后修改WHMCS的模板,使它的所有页面风格和主站统一,需要具备一定的前端能力。

2、菜单的集成也是重要的一环,让两个系统的菜单统一起来,用户访问各个页面都看到一样的菜单结构。WHMCS支持通过钩子去修改导航菜单的输出,但是对于新手来说,研究代码的时间成本太高,所以推荐一款非常好用的WHMCS插件:WHMCS Advanced Menu Manager(21美元)

3、关于用户系统,站长最终舍弃了WordPress注册和登录(仅供管理员维护内容),只对普通用户开放WHMCS的用户系统。这样还面临一个问题,就是用户中心的导航菜单如何“同步”:在WordPress程序发布的页面,也需要根据WHMCS的登录状态切换登录前和登录后的用户菜单。最终想到的一个勉强可用的方案就是通过Cookie判断用户在WHMCS系统的登录状态,然后WordPress根据这个Cookie来判断输出不同的用户菜单。

为什么要用WHMCS

最后可能有人要问了,为什么要用WHMCS,而不直接在WordPress上开发对应的功能。主要出于两方面考虑:

1、WHMCS在域名、主机和服务器销售的功能是比较完善的,也很方便集成这方面的其他面板和功能,很多主机商也提供WHMCS接口接入他们的产品,对于我们来说实在是太方便了。

2、WordPress如果要开发出和WHMCS差不多的功能,各种成本是非常高的,不是一个小团队可以折腾的。

0 人点赞