Снова о ЧПУ в DLE

12
Константинович
На сайте с 13.09.2008
Offline
319
7195

Привет всем!

Делаю сайт на DLE, адрес страницы стоит такой site.ru/europe/123-article.html

где:

site.ru - адрес сайта;

europe - категория новости;

123-article - название статьи. У меня все статьи в подкатегориях имеют название "id+article"

123 - id статьи.

Меня такая картина не устраивает, думаю, многих также. Поэтому интересуюсь, возможно ли создать адрес типа: site.ru/europe/article/123/, а лучше всего вот так: site.ru/europe/123/ ?

В поиске побегал, ничего подобного не нашел (может плохо искал).

Ещё раз повторю вопрос: Можно ли изменить ЧПУ в DLE? Если можно, то как трудно и долго? Если есть полезный линк по этому поводу - буду благодарен.

Нужны финансы? Быстрая скупка (http://dragmettorg.com/skupka_zolota/). Цены на сайте. А потом отыграй из на казино онлайн правила (http://premium-games.ru/)
C
На сайте с 15.07.2008
Offline
59
#1

чтобы было просто 123 надо просто убрать в shortstory.php в том месте где формируется ссылка оставить $row[id] (ну наверно нужно еще по другим файлам полазить - где выводится новость)

А для второго надо просто не пользоваться функцией (выводить новости из суб категорий), а выбирать нужные категории и подкатегории ручками.

Вся я спать если что завтра гляну подробнее и напишу

Константинович
На сайте с 13.09.2008
Offline
319
#2
Claud:
чтобы было просто 123 надо просто убрать в shortstory.php в том месте где формируется ссылка оставить $row[id] (ну наверно нужно еще по другим файлам полазить - где выводится новость)

Спасибо, сейчас посмотрю.

Claud:
Вся я спать если что завтра гляну подробнее и напишу

было бы неплохо

T
На сайте с 13.01.2009
Offline
50
#3

В engine/modules/show.short.php заменить


if( $row['category'] and $config['seo_type'] == 2 ) {
$full_link = $config['http_home_url'] . get_url( $row['category'] ) . "/" . $row['id'] . "-" . $row['alt_name'] . ".html";
}

на


if( $row['category'] and $config['seo_type'] == 2 ) {
$full_link = $config['http_home_url'] . get_url( $row['category'] ) . "/" . $row['id'] . ".html";
}
SG
На сайте с 22.04.2008
Offline
32
SAG
#4
Troytft:
В engine/modules/show.short.php заменить

Эмм, а разве это не вызовет несоответствие между ссылками в шортстори и,например, в похожих статьях или там всяких модулях типа послеждних новостей итд?

Насколько я помню, в дле есть несколько типов заранее заготовленных шаблонов чпу, поищите в админке, если не найдете, маякните в аську, я посмотрю утром, да и модулей для этих целей, уверен, есть.

Портфолио (http://beastman.me). Верстаю (/ru/forum/228498). Програмлю (/ru/forum/348359). Последние отзывы (/ru/forum/470865). Контакты: ICQ: 31377144пять;E-mail: andrschwartz<собако>gmail.com
[Удален]
#5

Сделать замену

\engine\ajax\find_relates.php

$full_link = $config['http_home_url'].get_url($related['category'])."/".$related['id']."-".$related['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($related['category'])."/".$related['id']."/";

\engine\classes\google.class.php

$loc = $this->home.get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";

на

$loc = $this->home.get_url($row['category'])."/".$row['id']."/";

\engine\inc\cmoderation.php

$full_link = $config['http_home_url'].get_url(intval($row['category']))."/".$row['post_id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url(intval($row['category']))."/".$row['post_id']."/";

\engine\inc\editnews.php

$full_link = $config['http_home_url'].get_url(intval($row['category']))."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url(intval($row['category']))."/".$row['id']."/";

\engine\modules\fullsearch.php

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."/";

\engine\modules\lastcomments.php

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['post_id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['post_id']."/";

\engine\modules\search.php

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."/";

\engine\modules\show.custom.php

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."/";

\engine\modules\show.full.php

$full_link = $config['http_home_url'].get_url($category_id)."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($category_id)."/".$row['id']."/";

$print_link = $config['http_home_url'].get_url($category_id)."/print:page,".$news_page.",".$row['id']."-".$row['alt_name'].".html";

на

$print_link = $config['http_home_url'].get_url($category_id)."/print:page,".$news_page.",".$row['id']."/";

$full_link = $config['http_home_url'].get_url($related['category'])."/".$related['id']."-".$related['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($related['category'])."/".$related['id']."/";

\engine\modules\show.short.php

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."/";

\engine\modules\topnews.php

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."-".$row['alt_name'].".html";

на

$full_link = $config['http_home_url'].get_url($row['category'])."/".$row['id']."/";

это в 7.0, в поздних версиях наверное тоже самое

ещё в .htaccess нужно дописать

RewriteRule ^([^.]+)/([0-9]+)/(/?)+$ index.php?newsid=$2 [L]

должно всё полностью функционировать...

T
На сайте с 13.01.2009
Offline
50
#6

SAG, да , извини , забыл про остальные

W
На сайте с 10.05.2009
Offline
114
#7

Хозяин барин, но с точки зрения seo такое чпу site.ru/europe/123-article.html более предпочтительно чем такое site.ru/europe/123/

Надеюсь вы знаете, что если в адресе ссылки находится ключевое слово, то страница ранжируется выше в поиске...

Единственный смысл в такой замене - если портировать сайт с другой cms на dle, чтобы сохранить старые линки.

Константинович
На сайте с 13.09.2008
Offline
319
#8

GizmoKoenig, спасибо большое, в 7.5 отлично всё работает.

wolfston:
Надеюсь вы знаете, что если в адресе ссылки находится ключевое слово, то страница ранжируется выше в поиске...

Ключ в урле=ключу в тексте статьи, поэтому мне легче один лишний ключ запихнуть в статью, чем лицезреть кривые урлы, да и пользователем сайта легче будет урлы запоминать.

wolfston:
Единственный смысл в такой замене - если портировать сайт с другой cms на dle, чтобы сохранить старые линки.

как видно из темы, он не единственный...

R
На сайте с 11.09.2007
Offline
22
#9

Мне что то подсказывает, что страницы с урлями

site.ru/europe/123-article.html

site.ru/europe/124-article.html

site.ru/europe/125-article.html

--

объединенные похожей тематикой будут ранжироватся выше, чем скажем

site.ru/europe/123/

site.ru/europe/124/

site.ru/europe/125/

----

при тех же равных условия.

------

Все это ИМНО ест-но, заключенное на основании Яфака (что то там о рекомендации объединять релевантные страницы сайта в подкаталогах и рекомендации делать "древовидные" структуры).

---

Да и наводит на размышление переодический простук каталогов сайта на предмет удаления последнего слеша. Т.е. указана ссылка site.ru/europe/125/, а он же пытается обращаетя так site.ru/europe/125. У меня на одном из своих проектов даже в поиск упорно выкладывает без слеша (не предусмотрел эту фишку, надо было 404 ошибку сформировать).

Х.З, конечно же таким путем может и места пытается съэкономить в своей БД.

СМС биллинг на вашем сайте (/ru/forum/comment/5252768)
muratti
На сайте с 31.05.2008
Offline
238
#10

Может, кто скажет, как создавать новости с ЧПУ, но без id номера? site.ru/nazvanie-novosti.html

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий