ХАК \"Изменяем URL новостей\". Этот хак заменяет урлы новостей с: http://сайт.ру/2007/12/09/novosti.html на: http://сайт.ру/news-5/novosti.html news - статичный текст (можно заменить на любой другой). 5 - id новости в базе данных. novosti - название новости. Преимущества: 1) вместо 3 подкатегорий мы получем только 1 (+ для seo). 2) более короткие урлы (+ для seo) 3) не будет новостей с одинаковым URL (т.к. id - уникален для каждой ссылки). УСТАНОВКА: 1. Откройте engine/engine.php найдите: ---------------------------------------- $allow_add_comment = FALSE; ---------------------------------------- выше вставьте: ---------------------------------------- if($subaction==\'showfull\' and (isset($news_id)) and (intval($news_id) !=\'\') and (!empty($news_name))) { if(isset($news_id)) { $sql_news = \"SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access FROM \" . PREFIX . \"_post where id = \'$news_id\' LIMIT 0,1\"; } } ---------------------------------------- 2. Откройте engine/modules/show.short.php найдите: ---------------------------------------- if ($config[\'allow_alt_url\'] == \"yes\") $tpl->set(\'[full-link]\',\"\"); else $tpl->set(\'[full-link]\',\"\"); $tpl->set(\'[/full-link]\',\"\");} if ($row[\'allow_comm\']) { if ($config[\'allow_alt_url\'] == \"yes\") $tpl->set(\'[com-link]\',\"\"); else $tpl->set(\'[com-link]\',\"\"); $tpl->set(\'[/com-link]\',\"\"); } else $tpl->set_block(\"\'\\[com-link\\](.*?)\\[/com-link\\]\'si\",\"\"); ---------------------------------------- замените на: ---------------------------------------- if ($config[\'allow_alt_url\'] == \"yes\") $tpl->set(\'[full-link]\',\"\"); else $tpl->set(\'[full-link]\',\"\"); $tpl->set(\'[/full-link]\',\"\");} if ($row[\'allow_comm\']) { if ($config[\'allow_alt_url\'] == \"yes\") $tpl->set(\'[com-link]\',\"\"); else $tpl->set(\'[com-link]\',\"\"); $tpl->set(\'[/com-link]\',\"\"); } else $tpl->set_block(\"\'\\[com-link\\](.*?)\\[/com-link\\]\'si\",\"\"); ---------------------------------------- 3. По аналогии замените и в других файлах модулей (/engine/modules/*.php) Ищете по маске \"Y/\". ---------------------------------------- 4. Откройте .htaccess и найдите: ---------------------------------------- # Сам пост ---------------------------------------- выше вставьте: ---------------------------------------- RewriteRule ^news-([0-9]+)/(.*).html(/?)+$ index.php?subaction=showfull&news_id=$1&news_name=$2 [L] ---------------------------------------- ---------------------------------------- На этом установка закончена
|