示例#1
0
 public static function generateCategory($category_id, $keyword = '')
 {
     $db = JO_Db::getDefaultAdapter();
     $info = self::getCategory($category_id);
     if (!$info) {
         return;
     }
     if (trim($keyword)) {
         $slug = $uniqueSlug = Model_AutoSeo::translate($keyword);
     } elseif (trim($info['title'])) {
         $slug = $uniqueSlug = Model_AutoSeo::translate($info['title']);
     } else {
         $slug = $uniqueSlug = 'category';
     }
     $slug = mb_strtolower($slug, 'utf-8');
     $uniqueSlug = mb_strtolower($uniqueSlug, 'utf-8');
     $index = 1;
     $db->query("DELETE FROM url_alias WHERE query = 'category_id=" . (int) $category_id . "'");
     while (Model_AutoSeo::getTotalKey($uniqueSlug)) {
         $uniqueSlug = $slug . '-' . $index++;
     }
     $db->insert('url_alias', array('query' => 'category_id=' . (int) $category_id, 'keyword' => $uniqueSlug, 'route' => 'category/index', 'path' => $uniqueSlug));
 }
示例#2
0
文件: Pages.php 项目: noikiy/amatteur
 public static function generatePage($page_id, $keyword = '')
 {
     $db = JO_Db::getDefaultAdapter();
     $info = self::getPage($page_id);
     if (!$info) {
         return;
     }
     if (trim($keyword)) {
         $slug = $uniqueSlug = Model_AutoSeo::translate($keyword);
     } elseif (trim($info['title'])) {
         $slug = $uniqueSlug = Model_AutoSeo::translate($info['title']);
     } else {
         $slug = $uniqueSlug = 'page';
     }
     $index = 1;
     $db->query("DELETE FROM url_alias WHERE query = 'page_id=" . (int) $page_id . "'");
     while (Model_AutoSeo::getTotalKey($uniqueSlug)) {
         $uniqueSlug = $slug . '-' . $index++;
     }
     $db->insert('url_alias', array('query' => 'page_id=' . (int) $page_id, 'keyword' => $uniqueSlug, 'route' => 'pages/read'));
     $last_inser_id = $db->lastInsertId();
     if ($last_inser_id) {
         $db->update('url_alias', array('path' => self::getPagePath($page_id)), array('url_alias_id = ?' => $last_inser_id));
     }
 }