用户收藏 v1.5.0
收藏状态变化监听,数据模型
2024-06-29 更新日志
  • 新增:onChange 回调函数,用于监听收藏状态变化
  • 新增:增加数据模型
用户收藏

模块介绍

「用户收藏」是一个提供快速构建用户收藏系统的功能

功能特性

  • 多场景适用
  • 一键增加收藏按钮

三步实现一个收藏系统

第一步,实现一个需要收藏的业务场景,比如 文章(Post) 收藏

class PostMemberFavBiz extends AbstractMemberFavBiz
{
    const NAME = 'post';

    public function name()
    {
        return self::NAME;
    }

    public function title()
    {
        return 'Post收藏';
    }

    public function memberMenu()
    {
        return [
            'title' => '内容',
            'icon' => 'list',
            'sort' => 100,
            'children' => [
                [
                    'title' => '收藏的Post',
                    'url' => modstart_web_url('member_fav/' . self::name()),
                ],
            ]
        ];
    }

    public function memberTitle()
    {
        return '收藏的Post';
    }

    public function memberGridItem($item)
    {
        $post = ModelUtil::get('post', $item['bizId']);
        return TextLink::primary(htmlspecialchars($post['title']), modstart_web_url('post/' . $post['id']), 'target="_blank"');
    }
}

第二步,注册到收藏系统中

\Module\MemberFav\Biz\MemberFavBiz::register(PostMemberFavBiz::class);

第三步,引入一个收藏按钮

@include('module::MemberFav.View.inc.favBtn',['biz'=>'post','bizId'=>'文章ID'])
QQ
微信
客服