联系我们
简单又实用的WordPress网站制作教学
当前位置:网站首页 > WordPress插件 > 正文

最好的WordPress常用插件下载 博客插件模块

作者:98wpeu发布时间:2025-09-08分类:WordPress插件浏览:5


导读:所有用户过滤器安装用于过滤、排序和输出用户的插件。该插件允许您以CSV格式过滤、排序和输出用户。您可以通过多个参数过滤用户,例如日期、角色、Metakey-Value和注册日期。...
所有用户过滤器安装

用于过滤、排序和输出用户的插件。

该插件允许您以CSV格式过滤、排序和输出用户。您可以通过多个参数过滤用户,例如日期、角色、Meta key-Value和注册日期。

由Hardik Patel(又名Hardik Lakkad)开发。
更多信息:https://www.linkedin.com/in/hardik-patel-lakkad-097b12147/

使用

使用用户→所有用户筛选器屏幕来组合条件。选择Meta键、运算符、类型、值和(可选)组关系,以无需代码即可构建复杂查询。将匹配的用户输出到CSV。

管理员UI | WP_Meta_Query MappingMeta_key |key操作员compare类型-typeMeta_Value-value集团关系(如果有的话)-relation: AND | OR测试中使用的元密钥(wp_userMeta.Meta_key)job_description(字符串)job_designation(字符串;单个值或管道/逗号分隔列表)age_in_years(类整字符串)joining_date(存储为YYYY-MM-DD或全YYYY-MM-DD HH:MM:SS)monthly_salary(数字,例如,9000)

如果您的数据集以不同的格式存储日期(例如,DD/MM/YYYY)或带逗号的工资(例如,9,000),看到了边缘情况下面

测试用例

以下UI测试用例验证常见场景和护栏。

1)单一条件功能测试

1A.文本完全匹配
意图:用户job_description正是“Lorem ipsum测试”。
UI:
- Meta_key:job_description
- 接线员:=
- 类型:CHAR
- Meta_值:Lorem ipsum test
预期:完全匹配;在默认排序规则下通常不区分大小写;尊重空间。

1B.子串匹配(Like)
意图:job_description包含“ipsum”。
UI:
- Meta_key:job_description
- 接线员:LIKE
- 类型:CHAR
- Meta_值:ipsum
预期:返回包含“ipsum”的行。%ipsum%也可以,但不是必需的。

1C.区分大小写的regex匹配
意图:job_description始于Lorem(区分大小写)。
UI:
- Meta_key:job_description
- 接线员:REGEXP
- 类型:BINARY
- Meta_值:^Lorem
预期:仅匹配以收件箱开头的值Lorem.

1D.负regex
意图:job_description没有提到ipsum作为一个完整的词。
UI:
- Meta_key:job_description
- 接线员:NOT REGEXP
- 类型:CHAR
- Meta_值:(^|[^A-Za-z])ipsum([^A-Za-z]|$)
预期:排除包含的任何行ipsum作为一个单独的词。

2)“work_designation”的多值(角色)测试

假设值包括:UI/UX设计器|QA工程师|DevOps工程师|项目经理|业务分析师|人力资源经理|数据分析师|软件工程师|系统管理|营销专家

2A.通过IN会员资格
意图:QA工程师或DevOps工程师。
UI:
- Meta_key:job_designation
- 接线员:IN
- 类型:CHAR
- Meta_值:QA Engineer, DevOps Engineer(逗号分隔-解析为数组)
预期:精确的会员匹配。

2B.使用REGEXP的管道分隔字段
意图:字段存储多个角色,分隔为|;匹配软件工程师或数据分析师。
UI:
- Meta_key:job_designation
- 接线员:REGEXP
- 类型:CHAR
- Meta_值:(^|\s*\|\s*)(Software Engineer|Data Analyst)(\s*\|\s*|$)
预期:令牌感知匹配;在较长的令牌中避免像“工程师”这样的部分字符。

2C.排除具有Not REGEXP的角色
意图:任命人力资源经理。
UI:
- Meta_key:job_designation
- 接线员:NOT REGEXP
- 类型:CHAR
- Meta_值:(^|\s*\|\s*)HR Manager(\s*\|\s*|$)
预期:排除任何等于HR Manager的代币。

3)“age_in_years”的数字范围测试

3A.包容性范围(幸福之路)
意图:18-45岁(含)。
UI:
- Meta_key:age_in_years
- 接线员:BETWEEN
- 类型:NUMERIC(或UNSIGNED)
- Meta_值:18,45
预期年龄:18岁至45岁(含)。

3B.边界检查
重复3A,18,1845,45以确保包容性。

3C.安全类型不正确
意图:说明原因CHAR数字错误。
UI:
- Meta_key:age_in_years
- 接线员:>
- 类型:CHAR
- Meta_值:9
预期:词典不当行为(例如,'100'<'9').使用NUMERIC/UNSIGNED.

3D.阴性测试(低于范围)
意图:确保排除18岁以下的用户。
UI:
- Meta_key:age_in_years
- 接线员:<
- 类型:NUMERIC
- Meta_值:18
预期:与6A AND组结合时没有未成年人。

4)“joining_Date”的日期测试

参考截止日期:2023年8月25日(距离基线两年前)。

4A.截止日期或截止日期之前(加入时间或以上)
UI:
- Meta_key:joining_date
- 接线员:<=
- 类型:DATE
- Meta_值:2023-08-25
预计:2023年8月25日或之前。如果存储为DATETIME,请参阅4A-。

4A-。日期时间变体
UI:
- Meta_key:joining_date
- 接线员:<=
- 类型:DATETIME
- Meta_值:2023-08-25 23:59:59
预期:包括全天。

4B.窗口:三到两年前
UI:
- Meta_key:joining_date
- 接线员:BETWEEN
- 类型:DATE
- Meta_值:2022-08-25,2023-08-25
预期:包括终点。

4C.未来加入排除
UI:
- Meta_key:joining_date
- 接线员:>
- 类型:DATE
- Meta_值:2025-08-25
预期:无结果(健全性检查)。

5)对`monthly_salary`的薪资测试(业务规则:正好9000)

5A.精确数字
UI:
- Meta_key:monthly_salary
- 接线员:=
- 类型:NUMERIC
- Meta_值:9000
预期:仅限数字为9000的用户。

5B.退化范围内不等式
UI:
- 接线员:BETWEEN
- 类型:NUMERIC
- Meta_值:9000,9000
预期:与5A相同。

5摄氏度。警卫类型错误
UI:
- 接线员:>
- 类型:CHAR
- Meta_值:8000
预期:表现出不正确的词典行为;应该是NUMERIC.

5便士未设置检测
UI:
- 接线员:NOT EXISTS
- Meta值:(空)
预期:用户错过monthly_salary钥匙

6)多条件(分组)测试

6A. Master AND(完整偏好集)
集团关系:AND
条件:
1)job_description=Lorem ipsum test(CHAR)
2)job_designationIN(UI/UX设计师、QA工程师、DevOps工程师、项目经理、业务分析师、人力资源经理、数据分析师、软件工程师、系统管理员、营销专家)(CHAR)
3)age_in_years之间18,45(数字)
4)joining_date<=2023-08-25(DATE或约会时间与... 23:59:59)
5)monthly_salary=9000(数字)
期望:必须满足所有人。

6B. AND与嵌套OR(角色灵活性)
顶级关系:AND
第1组(OR):job_designationIN(QA工程师、DevOps工程师)或job_designation=软件工程师
第二组:age_in_years18,45之间
第三组:joining_date<= 2023-08-25
第四组:monthly_salary= 9000
预期:会见第2-4组和第1组的任何分支机构。

6C.角色标记化安全性(分隔列表)
顶级关系:AND
条件:
job_designation REGEXP '(^|\\s*\\|\\s*)(Project Manager)(\\s*\\|\\s*|$)'
monthly_salary = 9000(数字)
预期:匹配Project Manager仅限令牌(除非有意为之,否则不是“助理项目经理”)。

6便士在匹配另一个名称的同时同步
顶级关系:AND
条件:
job_designation REGEXP '(^|\\s*\\|\\s*)(Data Analyst)(\\s*\\|\\s*|$)'
job_designation NOT REGEXP '(^|\\s*\\|\\s*)(Marketing Specialist)(\\s*\\|\\s*|$)'
预期:不同时担任营销专家的数据分析师(在多标签场景中)。

7)关键存在测试(数据卫生)

7A.失踪joining_date
UI:
- Meta_key:joining_date
- 接线员:NOT EXISTS
预期:返回缺乏加入日期的用户。

7B.失踪age_in_years或非数字
UI:
- Meta_key:age_in_years
- 接线员:NOT EXISTS
附加检查:与使用的查询进行比较Type: NUMERICBETWEEN 18,45;计数应仅因输入正确的行而异。

10)扩展多个用户范围

允许非管理员(特定用户ID)使用该插件,方法是将其添加到您的theme-s函数中。php:

// Allow a specific user to access All Users Filter UI

函数yr_theme_custom_allusfi_滤镜($allow){
返回(64901 = get_current_user_id())?$allowed;
}
add_filter(-allusfi_allowed_user_to_filter-,-yr_theme_custom_allusfi_filter-);

边缘情况日期格式除YYYY-MM-DD:如果存储为DD/MM/YYYY,直接DATE比较是行不通的。规范化数据(推荐)或使用REGEXP预过滤令牌;理想情况下迁移到ISO格式。带逗号的工资(例如,9,000):存储纯数字Meta值以实现可靠NUMERIC比较。字符串比较(CHAR)对于数字来说很容易出错。文本/regex的区分大小写:使用Type: BINARYREGEXP当您需要严格区分大小写的匹配时;否则排序规则可能不区分大小写。角色的界限列表:首选每行一个角色。如果必须存储分隔值,请使用上面的标记感知REGEXP模式来避免部分匹配。数字与CHAR:总是选择NUMERIC/SIGNED/UNSIGNED用于数字逻辑。CHAR按词典进行比较。快速UI测试用例模板

使用此紧凑模板记下UI场景:

Meta_key-monthly_salary操作员=类型-NUMERICMeta_Value-9999集团关系(如果有的话)-relation: AND | OR截图安装转到“插件”页面。单击“添加新”按钮。搜索插件名称-所有用户过滤器-。单击“立即安装”按钮。单击“激活”按钮。

该插件现已安装。注意:最初只有管理员可以使用此插件。

常见问题解答非管理员如何访问该插件?

使用allusfi_allowed_user_to_filter过滤器(请参阅“扩展多个用户的范围”)。

为什么-t数字过滤器不能与Type:CHAR一起工作?

字符串比较是词典式的。使用NUMERIC(或SIGNED/UNSIGNED)用于数字范围和相等性。

什么是签署和未签署类型?

-SIGNED-被视为有符号的整数,可以表示负值、零和正值。例如-2、-1、0、1、2
-UNSIGNED-仅允许0和正值(没有负值)。例如0、1、2

该插件没有评论。

标签:regex范围数字日期角色查询


WordPress插件排行
最近发表
网站分类
标签列表