效果图
文章可以单独给不同级别设置不同权限以此来达到营收或者流量等方式,但过于繁琐,每篇文章都需要设置,能不能直接设置几个分类来实现呢?
如下所说:
分类0加入游客可见权限
分类1加入登录查看权限(兼容游客)
分类2加入登录,黄金会员查看权限(兼容游客、登录)
分类3加入登录,黄金会员、钻石会员查看权限(兼容游客、登录、黄金会员)
可以实现:目前以提出需求,看老唐愿不愿意弄吧,不愿意弄可以先按照我的方法来试试:
先看效果图:
1,未登录状态访问黄金会员和钻石会员类目提示:
![图片[1]-子比主题功能增强-给不同等级的会员设置对应的分类和页面的访问权限优知新已修正代码](https://oss.xkzhi.com/2025/04/20250404111101442-image.png)
![图片[2]-子比主题功能增强-给不同等级的会员设置对应的分类和页面的访问权限优知新已修正代码](https://oss.xkzhi.com/2025/04/20250404111107965-image.png)
3,登录状态,已充值为黄金会员访问钻石会员界面提示:(访问黄金会员权限类目就没必要展示了已经正常访问了)
![图片[3]-子比主题功能增强-给不同等级的会员设置对应的分类和页面的访问权限优知新已修正代码](https://oss.xkzhi.com/2025/04/20250404111124103-image.png)
OK!接下来看教程
不啰嗦,直接走教程:
1,首先设置好分类,记住分类ID
2,在functions.php里添加如下代码:
上述的func代码是不对的,这可能是原作者留的坑,现在优知新进行修正记录。(因为正好有人需要这个功能)
正确代码应该是这样的
假设 111.php 文件位于主题根目录,那就是这个代码
在使用 locate_template 函数时,您不需要提供完整的文件路径,因为它会在当前激活的主题的目录结构中进行搜索。locate_template 函数默认会在主题根目录、子目录以及父级主题的目录中搜索指定的模板文件。
但是我还是喜欢新建独立的文件夹放文件所以我们要换个方式加载文件
$file = './wp-content/themes/zibllsucai/php/111.php';
// 判断登录,访问id为1865的分类时会跳到111.php文件
if ( in_category( array( 1865 ) ) && !is_home() && $vip_level < 1 ) {
if ( file_exists( $file ) ) {
include( $file ); // 包含找到的文件
} else {
// 如果没有找到模板文件,可以做一些备选操作,例如重定向或显示错误信息
wp_die( 'VIP模板文等等件未找到。' );
}
exit; // 退出脚本执行
}
3,在主题根目录里添加2个PHP文件,名字分别命名为111.php和222.php
111里面的代码设置为:
222里面的代码设置为:
最后就搞定了!简单明了,可能会出现CSS错乱等现象,看着调试就行了,这个想必很简单。
该教程适用其他主题,只要改zib_get_user_vip_level($vip_level)<1)这个为对应的就行了。
注意事项:
以上级别对应的是黄金会员或钻石会员以及登录状态,子比主题里有账号等级之分,这个是评论等提示出来的,如果需要这样的级别来区分的话,只需要改下里面的级别识别代码就行了。
觉得不错的赞助个万儿八千的吧O(∩_∩)O哈哈~!!

-星空知](https://oss.xkzhi.com/befer/2024/01/20240109223300434-MTXX_MH20240109_223239779.jpg)











- 最新
- 最热
只看作者