コード例 #1
0
ファイル: System.php プロジェクト: blrtromax/seobility
 /**
  * Подготовка СЕО ссылки
  * @param string $url
  * @param string $wordName
  * @param obj $class
  * @param int $id
  * @return string
  */
 public static function prepairUrl($url, $wordName = null, $class = false, $id = false)
 {
     //Если сслыка пустая
     if ($url == '') {
         //Обрезаем часть слова
         $url = cText::wordTrim($wordName, 30);
     }
     //И превращаем в ссылку
     $url = Translit::asURLSegment($url);
     $criteria = new CDbCriteria();
     $criteria->compare('url', $url, true);
     if ($id) {
         $criteria->addCondition("id != " . $id . "");
     }
     if ($class !== false) {
         $model = new $class();
         $data = $model->find($criteria);
         $baseURl = $url;
         $i = 1;
         if ($data !== null) {
             do {
                 $url = $baseURl . $i;
                 $criteria->compare('url', $url, true);
                 $data = $model->find($criteria);
                 $i++;
             } while ($data !== null);
         }
     }
     return $url;
 }