О боже.Вы хоть сами знаете что советуете? : )
Хотя, учитывая шаблонизатор DLE возможно вы и правы, НО оно будет работать только в шаблонах, и то я почти уверен что только в main.tpl( Почему? Взгляните на код. ) ; ) А в новостях не будет. Т.к. переменная текста новости отдаётся почти напрямую, без участия шаблонизатора.
P.s: Обоснования где? : ) Точнее даже не так, где обоснование того что указанный мной вариант решения проблемы не делает то-же что и в первом посте(Хотя это с точностью до наоборот), и что он хуже или медленнее, или не будет работать?
P.p.s: Код из первого поста без корректировок вызове Parse error т.к. кавычки экранируются обратным слешем, о чём я так-же написал выше.
Пройтись по dle_images.
Могу написать скрипт за небольшую плату : )
Если согласны - ICQ в профиле : )
Делайте как я показал.
P.s: ТС, только увидел.Символы экранируются обратным слешем.
🤣
P.p.s: $tpl->set( '{reklama}', 'код рекламы' ); Не подойдёт как минимум потому что это нужно писать в шаблон, и выводиться оно будет в каждой новости.А в моём варианте только заменяться в тексте новости.
Для DLE 9.6:
Файл: /engine/modules/show.full.php(Строку 582):
Заменить на:
$db->query( "SELECT id, date, short_story, xfields, title, category, alt_name FROM " . PREFIX . "_post WHERE {$allowed_cats}MATCH (title, short_story, full_story, xfields) AGAINST ('$body') AND id != " . $row['id'] . " AND category IN({$row['category']}) AND approve=1" . $where_date . " LIMIT " . $config['related_number'] );
И почистить КЭШ.
Это будет показывать их в определённых разделах, точнее даже по модулям. Тогда уже [category=ID][/category], но это не то : )
tradeinvestor, Ответил в ICQ, напишу и сюда:
{related-news} разве не то что вам нужно? Там выбираются похожие новости, правда скорее всего не в рамках одного раздела. Для одного раздела нужно будет просто поменять запросик : )
Умные есть, но вы написали откровенный говнокод : )
Вам подсказали как сделать выше множество людей.
По хорошему нужны ещё одна таблица со связями.Или как написали выше разделитель.
P.s: php.net рулит : )
О боже!ereg_replace, всё накручено, ЗАЧЕМ?!
Достаточно заменить:
$tpl->set( '{full-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . $row['full_story'] . "</div>
На:
$advert = <<<HTMLКод рекламыHTML;$tpl->set( '{full-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . str_replace( '{advert}', $advert, $row['full_story'] ) . "</div>
P.s: По хорошему нужно создать рекламный материал в админке с названием advert и написать вот так(Пишу по памяти, данный вариант может НЕ работать):
$tpl->set( '{full-story}', stripslashes( "<div id=\"news-id-" . $row['id'] . "\" style=\"display:inline;\">" . str_replace( '{advert}', $banner_advert, $row['full_story'] ) . "</div>
И после использовать тег {advert}.
P.p.s: Ещё лучше можно связать их с баннерами из админки, но это уже тянет на больший хак : )
А include_path прописан? Скрипт находится в одной папке с подключаемым?
Ну а на самом деле скорее всего проблема с кодировкой или как я написал выше : )
Да уже всё перенесено, отписал вам в ICQ, жду ответа :)
sima007 добавил 02.05.2011 в 17:15
Сайт успешно перенесён и продан jcrush, деньги получены.
Сделка прошла без сучка и задоринки :)