Как запретить DLE генерировать страницу, если не заполнено полное описание?

12 3
Kislov
На сайте с 29.04.2006
Offline
185
1572

В каждой категории выводится краткое описание без ссылки на полное. При генерации карты сайта вылазит ссылка на полное описание, в индекс лезут дубли.

Как решить проблему? Есть ли готовые решения?

Рассматривались варианты:

- править карту и жить в постоянном страхе случайного нахождения страниц хитрым ботом;

- закрывать от индексации в robots.txt, десятки строк в котором не особо приветствуются (тем более там и так много чего);

sashka_
На сайте с 27.01.2010
Offline
103
#1

готового решения небыло ) щас поковырял класс )) протестил у ся вроде работает...

открывай файл engine/classes/google.class.php

109 строка

$result = $db->query( "SELECT id, date, alt_name, category, flag FROM " . PREFIX . "_post WHERE approve=1 " . $where_date . " ORDER BY date DESC" . $this->limit );

вот такая строка замени её на эту =)

$result = $db->query( "SELECT id, date, alt_name, category, flag FROM " . PREFIX . "_post WHERE approve=1 and full_story !=''" . $where_date . " ORDER BY date DESC" . $this->limit );

Знаю PHP, JS, jQuery. Помощь для вашего сайта. (/ru/forum/840509).
Kislov
На сайте с 29.04.2006
Offline
185
#2

sashka_, класс за генерацию карты отвечает?

S_A_N_T_A
На сайте с 23.11.2009
Offline
154
#3

Тоже очень интересует данная тема)))

sashka_
На сайте с 27.01.2010
Offline
103
#4
класс за генерацию карты отвечает?

Да...:)....

S_A_N_T_A
На сайте с 23.11.2009
Offline
154
#5

А кто нибудь знает как вообще отключить полную новость?

sashka_
На сайте с 27.01.2010
Offline
103
#6
А кто нибудь знает как вообще отключить полную новость?

всмысле отключить ? убераешь в шаблоне fullstory.tpl ссылку на неё , и в addnews.tpl стераешь поле полная новость вот и всё )

Kislov
На сайте с 29.04.2006
Offline
185
#7
sashka_:
Да.......

Это не совсем то, что нужно.

Нужно, чтобы DLE не создавал страницу вообще, если нет полного описания. Такое возможно сделать?

Braindbrigada
На сайте с 10.01.2010
Offline
84
#8

Легко...

Версия движка какая?

Новость добавляться из админки или с сайта будет?

Braindbrigada добавил 05.04.2010 в 21:19

открыть /engine/inc/addnews.php

найти:

if(document.addnews.title.value == '' || document.addnews.short_story.value == ''){alert('$lang[addnews_alert]');return false}

заменить:

if(document.addnews.title.value == '' || document.addnews.short_story.value == ''|| document.addnews.full_story.value == ''){alert('$lang[addnews_alert]');return false}

найти:

echo "if(document.addnews.short_story.value == '' || document.addnews.title.value == ''){ alert('$lang[addnews_alert]'); }

заменить:

echo "if(document.addnews.short_story.value == '' || document.addnews.title.value == ''|| document.addnews.full_story.value == ''){ alert('$lang[addnews_alert]'); }

открыть /engine/modules/addnews.php

найти:

$script .= "if(document.entryform.short_story.value == '' || document.entryform.title.value == '' ){ alert('$lang[add_err_7]'); }

заменить:

$script .= "if(document.entryform.short_story.value == '' || document.entryform.title.value == '' || document.entryform.full_story.value == ''){ alert('$lang[add_err_7]'); }

найти:

if(document.entryform.title.value == '' || document.entryform.short_story.value == ''){alert('$lang[add_err_7]');return false}\" action=\"\">";

заменить:

if(document.entryform.title.value == '' || document.entryform.short_story.value == '' || document.entryform.full_story.value == ''){alert('$lang[add_err_7]');return false}\" action=\"\">";

найти:

else $script .= "<form method=post name=\"entryform\" id=\"entryform\" onsubmit=\"if(document.entryform.title.value == '' || document.entryform.short_story.value == ''){alert('$lang[add_err_7]');return false}\" action=\"\">";

заменить:

else $script .= "<form method=post name=\"entryform\" id=\"entryform\" onsubmit=\"if(document.entryform.title.value == '' || document.entryform.short_story.value == ''  || document.entryform.full_story.value == ''){alert('$lang[add_err_7]');return false}\" action=\"\">";

открыть /language/Russian/adminpanel.lng

найти и поправить как нравиться

'addnews_alert'

открыть /language/Russian/website.lng

найти и поправить как нравиться

'add_err_7'

Вот и всё....

з.ы. сам не проверял, но должно работать....:)

Kislov
На сайте с 29.04.2006
Offline
185
#9
Braindbrigada:
Легко...

Версия движка какая?
Новость добавляться из админки или с сайта будет?

8.2.

Через админку.

Проглядел бегло код. Страница вообще добавляться не будет, если нет полного описания?

Если так, то мне нужно не совсем это, а:

1. Добавлять новость.

2. Не генерировать отдельную страницу *.html.

Т.е. в категории будет просто выводится краткое описание.

Braindbrigada
На сайте с 10.01.2010
Offline
84
#10

Не добавится если, нет заголовка краткой и полной новости....

Braindbrigada добавил 05.04.2010 в 21:35

Т.е. в категории будет просто выводится краткое описание.

Сейчас подумаю...

12 3

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