Comments module for Yii framework
PHP JavaScript
Pull request Compare This branch is 5 commits ahead, 2 commits behind segoddnja:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Yii Comments Extension

Yii module to add comments to any instance of CActiveRecord.


  • Comments administration
  • Threaded comments
  • Each model instance with their own configuration


To add a comment to the model, you need to perform the following steps.

Add Comments table to your schema:

    CREATE TABLE IF NOT EXISTS `tbl_comments` (
    `owner_name` varchar(50) NOT NULL,
    `owner_id` int(12) NOT NULL,
    `comment_id` int(12) NOT NULL AUTO_INCREMENT,
    `parent_comment_id` int(12) DEFAULT NULL,
    `creator_id` int(12) DEFAULT NULL,
    `user_name` varchar(128) DEFAULT NULL, 
    `user_email` varchar(128) DEFAULT NULL,
    `comment_text` text,
    `create_time` int(11) DEFAULT NULL,
    `update_time` int(11) DEFAULT NULL,
    `status` int(1) NOT NULL DEFAULT '0',
    PRIMARY KEY (`comment_id`),
    KEY `owner_name` (`owner_name`,`owner_id`)

Configure the module in app config:

        //you may override default config for all connecting models
        'defaultModelConfig' => array(
            //only registered users can post comments
            'registeredOnly' => false,
            'useCaptcha' => false,
            //allow comment tree
            'allowSubcommenting' => true,
            //display comments after moderation
            'premoderate' => false,
            //action for postig comment
            'postCommentAction' => 'comments/comment/postComment',
            //super user condition(display comment list in admin view and automoderate comments)
            //order direction for comments
        //the models for commenting
            //model with individual settings
            //config for create link to view model page(page with comments)
            //model with default settings
        //config for user models, which is used in application

Display ECommentListWidget in view for displaying commentable models

    $this->widget('comments.widgets.ECommentsListWidget', array(
        'model' => $model,

To manage all comments go to