Nektov 59 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 И так, для начала здравствуйте. Вопрос: Как сделать собственный информер с сайта? Пользователь (кто угодно) копирует нужный код (предпочтительно через ява или пхп), а затем вставляет его на своём сайте в результате чего на его сайте выводятся новости (заглавия новостей) с моего. Требования: Возможность настройки количества импортируемых новостей Возможность настройки дизайна для вывода новостей Возможность настройки вывода с изображением и без (всё это настраивается пользователем на моём сайте, после выбора настроек появляется нужный код для вставки). Заранее спасибо. Цитата Ссылка на сообщение Поделиться на других сайтах
Danila 8 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 Я уже задавался таким вопросом. До версии 6.3 прекрасно работал информер этот: ===================================================== Plugin for DataLife Engine - JavaScript News ----------------------------------------------------- Copyright (c) 2007 ko1yan ===================================================== Данный код защищен авторскими правами ===================================================== Файл: news.php ----------------------------------------------------- Назначение: Экспорт новостей c помощью "script" ===================================================== Поищи на форуме мое сообщение, там на него ссылка есть. Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 Nektov, Также такой информер делал IT-Security... спроси у него... Цитата Ссылка на сообщение Поделиться на других сайтах
Nektov 59 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 (изменено) Автор И та, благодаря Danila был найден его пост со ссылкой на первоисточник. Дабы не искали долго и нудно, привожу пример решения. <?php /* ===================================================== Plugin for DataLife Engine - JavaScript News ----------------------------------------------------- Copyright (c) 2007 ko1yan ===================================================== Данный код защищен авторскими правами ===================================================== Файл: news.php ----------------------------------------------------- Назначение: Экспорт новостей c помощью "script" ===================================================== */ define('DATALIFEENGINE', true); define('ROOT_DIR', dirname (__FILE__)); define('ENGINE_DIR', ROOT_DIR.'/engine'); @include (ENGINE_DIR.'/data/config.php'); require_once ENGINE_DIR.'/inc/mysql.php'; require_once ENGINE_DIR.'/data/dbconfig.php'; require_once ENGINE_DIR.'/modules/functions.php'; check_xss (); // Начало настроек модуля //---------------------------- $limit=10; // количество выводимых новостей $simbol=55; // обрезание ссылок //---------------------------- // Конец настроек модуля $this_month = date ('Y-m-d', time()-(3600*24*30)); $result = $db->query("SELECT id, title, date, alt_name FROM " . PREFIX . "_post WHERE approve='1' ORDER BY id DESC LIMIT 0,{$limit}"); $newsexport = ''; while($row = $db->get_row($result)) { $row['date'] = strtotime($row['date']); if (strlen($row['title']) > $simbol) $title = substr ($row['title'], 0, $simbol)." ..."; else $title = $row['title']; if ($config['allow_alt_url'] == "yes") $newsexport .= "<a href=\"".$config['http_home_url'].date('Y/m/d/', $row['date']).$row['alt_name'].".html\">".stripslashes($title)."</a><br>"; else $newsexport .= "<a href=\"$PHP_SELF?newsid=".$row['id']."\">".stripslashes($title)."</a><br>"; } echo "text='"; echo "$newsexport"; echo "';document.write(text);" ?> + Информация по установке модуля 1. Возможности скрипта □ Защита от XSS атак. □ Обрезание ссылок до определенного размера. □ Вывод опреденного количества новостей. □ Работа при включеном или отключенным ЧПУ. 2. Установка модуля на сервер 1. Откройте в текстовом редакторе файл news.php, настройте под себя. 2. Cкопируйте файл news.php в корневую директорию модуля, там где index.php и admin.php. 3. В нужное место вставляейте <script src="http://сайт.ру/news.php"></script> Надеемся что работа с нашим модулем доставим Вам только удовольствие. Автор сего творения ko1yan Всем спасибо за оказанную помощь. Если есть какие другие решения пишите. Изменено 7 декабря 2007 пользователем Nektov Цитата Ссылка на сообщение Поделиться на других сайтах
kosen 3 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 Nektov, Имей в виду... если этот информер поставят очень многие... то загнётся твой хостер от нагрузки... Цитата Ссылка на сообщение Поделиться на других сайтах
Danila 8 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 и он не работает на 6.3. Цитата Ссылка на сообщение Поделиться на других сайтах
max-money 0 Опубликовано: 7 декабря 2007 Рассказать Опубликовано: 7 декабря 2007 Вот вариант http://webset.com.ua/category/2-3-8/inform...ya_CMS_DLE.html Гибкости не много. Но зато не давит на сервер, при использовании nginx, сервер вобще ничего не почувствует кроме трафика и файловий системы. Цитата Ссылка на сообщение Поделиться на других сайтах
Nektov 59 Опубликовано: 10 декабря 2007 Рассказать Опубликовано: 10 декабря 2007 Автор И так. Скачано. По ссылке предложенной max-money скачан архив в котором 2 .php файла. 1. informer.php (пустой файл) 2. start_informer.php Код start_informer.php <? /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Подключение информера В корне разместить: informer.php (доступ для записи) start_informer.php код что указан ниже добавить в index.php перед $config['http_home_url'] = reset(explode("index.php", $_SERVER['PHP_SELF'])); //******информер (в index.php)******** $thisdate1 = date("U"); $da_f = filemtime ("start_informer.php"); if ($thisdate1 - $da_f > 1000) { include ROOT_DIR.'/start_informer.php'; } else { } clearstatcache; //******конец - информер******** Загрузка информера: <script type="text/javascript" src="http://ваш.сайт/informer.php"></script> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ if(!defined('DATALIFEENGINE')){ die("Hacking attempt!");}; $kol = 10; //Количество выводимых новостей $rezerv = 30; $sbor = "document.write('<table border=0><tr><td><table border=0><tr><td><img src={$config['http_home_url']}admin.gif width=80 height=20 align=left></td><td><a class=informer_webset target=_blank href=".$config['http_home_url']."index.php><b>Новости сайта "{$config['home_title']}"</b></a></td></tr></table></td></tr><tr><td>"; $thisdate = date("Y-m-d H:i:s"); $ath = mysql_query("select date, title, alt_name, fixed use index(date) from dle_post order by date DESC limit 0, $rezerv"); if ($ath) { //фиксиров. $i=0; $fix=0; while($i <= $rezerv) { $i=$i+1; $row=mysql_fetch_array($ath); if ($row['fixed'] > 0) { $fix=$fix + 1; $todays_date = $row['date']; $_year = substr($todays_date ,0,4); $_month = substr($todays_date ,5,2); $_day = substr($todays_date ,8,2); $_hour = substr($todays_date,11,2); $_minute = substr($todays_date,14,2); $sbor=$sbor."<a class=informer_webset href=".$config['http_home_url'].$_year."/".$_month."/"."$_day"."/".$row['alt_name'].".html target=_blank>"; $p_date = $_day.".".$_month.".".$_year." "; $sbor=$sbor."<font color=#666666><b>"; $sbor=$sbor.$p_date; $sbor=$sbor."</b></font> "; $sbor=$sbor.$row['title']."</a><br>"; } } } $ath = mysql_query("select date, title, alt_name, fixed from dle_post order by date DESC limit 0, $rezerv"); if ($ath) { //по датам $i=0; $maxi=0; while($i <= $kol-1-$fix) { $maxi=$maxi+1; $row=mysql_fetch_array($ath); if ($thisdate > $row['date'] and $row['fixed'] != 1 xor $maxi > 100) { $i=$i+1; $todays_date = $row['date']; $_year = substr($todays_date ,0,4); $_month = substr($todays_date ,5,2); $_day = substr($todays_date ,8,2); $_hour = substr($todays_date,11,2); $_minute = substr($todays_date,14,2); $sbor=$sbor."<a class=informer_webset href=".$config['http_home_url'].$_year."/".$_month."/"."$_day"."/".$row['alt_name'].".html target=_blank>"; $p_date = $_day.".".$_month.".".$_year." "; $sbor=$sbor."<font color=#666666><b>"; $sbor=$sbor.$p_date; $sbor=$sbor."</b></font> "; $sbor=$sbor.$row['title']."</a><br>"; } } } $sbor=$sbor."<A target=_blank class=informer_webset href=".$config['http_home_url']."><b>ВСЕ НОВОСТИ</b></A></td></tr></table>');"; $file=fopen("informer.php", "w+"); if(!$file) { echo ("Ошибка открытия файла"); } else { fputs($file, $sbor); } fclose ($file); ?> Пробуем отписываемся. Цитата Ссылка на сообщение Поделиться на других сайтах
max-money 0 Опубликовано: 10 декабря 2007 Рассказать Опубликовано: 10 декабря 2007 И так. Скачано. По ссылке предложенной max-money скачан архив в котором 2 .php файла. если не выйдет стукни в аську, помогу icq:214536176 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.