Я считаю что ответ очевиден - yii. Особенно если закрыть глаза на отсутствие у нас информации о ваших знаниях.
Через 1-2 проекта на yii разработка каждый раз будет сводиться к простому "конструированию" вашего сайта, но на уровне адекватного ООП кода и модулей Yii. Следовательно при стартовой кодовой базе у вас в CMS разработка будет сокращаться по времени каждый раз.
1. Только расширив класс CGridView
и переопределив метод renderTableRow()
2. См http://www.yiiframework.com/doc/guide/1.1/ru/database.arr
$criteria=new CDbCriteria();
$criteria->with = ['city']; // название отношения, используется как префикс
$criteria->compare('city.name', $this->_city->name);
...
protected function extractType($dbType)
{
if(strpos($dbType,'[')!==false || strpos($dbType,'char')!==false || strpos($dbType,'text')!==false)
$this->type='string';
else if(strpos($dbType,'bool')!==false)
$this->type='boolean';
else if(preg_match('/(real|float|double)/',$dbType))
$this->type='double';
else if(preg_match('/(integer|oid|serial|smallint)/',$dbType))
$this->type='integer';
else
$this->type='string';
}