Like 插件

在您的 CakePHP 2.x 支持的 Web 应用程序中添加 Facebook 风格的 “Like” 功能。

安装

  1. 下载插件并将其放置在 app/Plugin

https://github.com/aschelch/cakephp-like-plugin/zipball/master

或通过 Git

git submodule add git://github.com/aschelch/cakephp-like-plugin.git app/Plugin/Like

2. 在您的文件 Config/bootstrap.php 的底部添加以下内容以加载插件

CakePlugin::load('Like', array('routes' => true));
  1. 使用 shell 命令创建表
Console/cake Like.install
  1. 将 Likeable 行为附加到模型
public Post extends AppModel{
    $actsAs = array('Like.Likeable');
}

就这些了!

用法

在控制器中

然后要在您的控制器中使用它,您可以执行以下操作

喜欢一项项目

$this->Post->like($post_id, $this->Auth->user('id'));

不喜欢一项项目

$this->Post->dislike($post_id, $this->Auth->user('id'));

查找用户喜欢的所有项目

$this->Post->findLikedBy($this->Auth->user('id'));

测试用户是否喜欢一项项目

if($this->Post->isLikedBy($post_id, $this->Auth->user('id'))){...}

查找最受欢迎的项目

$this->Post->find('most_liked', array('limit'=>5));

在视图中

在您的控制器中添加辅助函数

public PostController extends AppController{
    public $helpers = array('Like.Like');
}

然后,在您的视图中

$this->Like->like('post', $post_id);
$this->Like->dislike('post', $post_id);