image

用于选择用户组使用的需求示例


1、新建程序文件,用来显示图中的用户组:/config/myfield/group.php

<?php
/**
 * 示例文件
 * 变量介绍
 * $name 字段英文名称
 * $field 字段信息(数组)
 * $value 当前字段的值
 * \Phpcmf\Service::C() 表示控制器方法
 * \Phpcmf\Service::M() 表示模型方法
 * 表单的name值格式是:data[$name]
 */
$code = ''; // 最终输出的代码
$data = \Phpcmf\Service::C()->member_cache['group'];
$data[0] = [
    'name' => '游客'
];
$value = dr_string2array($value);
foreach ($data as $v => $n) {
    $s = is_array($value) && in_array($v, $value) ? ' checked' : '';
    $kj = '<input type="checkbox" name="data['.$name.'][]" value="'.$v.'" '.$s.' '.$attr.' />';
    $code.= '<label class="mt-checkbox mt-checkbox-outline">'.$kj.''.$n['name'].' <span></span> </label>&nbsp;&nbsp;';
}


2、创建模块diy字段,选择上面这个文件

image


3、然后切换到发布内容界面,就可以看到图一的效果了


4、前端判断,当前用户组是否是所选中的用户组,show.html写法

{if $diy}

{if ($member && array_intersect($diy, $member.groupid)) || (!$member && in_array(0, $diy))}
当前在选择的组里面
{else}
没有在选择的组里面
{/if}
{else}
没有设置选择组
{/if}


文档最后更新时间:2020-05-11 16:52:27
我来修改此文档(1) 不会操作怎么办?