WhiteDevil66
Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Купил парсер, которий парсит содержимое. Потом через модуль импорта заливал это содержимое в систему IPB 2.2.2. Модулем импорта служил вот такой файл. Код модуля импорта Код: <? ///////////////////////////////////////////////////////// // // Данный модуль служит для использования VaLaR-пакетов в IPB 2.3.x; // Скопируйте данный скрипт в директорию с форумом; // Пакеты должны находится в директории ./packs/ на форуме (необходимо создать директорию); // // Если требуется отключить авто-преобразование (парс) ссылок, // 1. откройте файл ./sources/classes/bbcode/class_bbcode.php; // 2. Найдите строку: // $txt = preg_replace_callback( "#(^|\s|>)((http|https|news|ftp)://\w+[^\s\[\]\<]+)#i", array( &$this, '_regex_build_url_manual' ), $txt ); // // 3. Закомментируйте ее, добавив в начале строки "//" (без кавычек); ///////////////////////////////////////////////////////// // Конфиг $forum_user='admin'; // Подключаем API require_once( './init.php' ); require_once( ROOT_PATH."sources/api/api_topics_and_posts.php" ); /////////////////////////////////////////////// // Получаем список пакетов $sPath = './packs/'; $dDir = opendir($sPath); $packs_list="<select name='pack_name'> "; while ($sFileName=readdir($dDir)) { if ($sFileName!='.' && $sFileName!='..' && $sFileName!=".htaccess") { $packs_list .= "<option value='$sFileName'>$sFileName</option> "; } } closedir ($dDir); $packs_list .="</select>"; /////////////////////////////////////////////// if ('1' == '1') // можете заменить на любое условие, например, для защиты скрипта от посторонних глаз { @set_time_limit(0); // Не ограничием временем время работы скрипта // Получаем текущий шаг $step=$_POST['step']; if ($step != '1' and $step != '2' and $step != '3') $step='1'; echo "<html><body>"; if ($step == '1') { echo" <form method=\"post\" action=\"\"> Пакет: $packs_list <br><br> <input type='submit' value='Выполнить VaLaR-Grabber Packet!'> <input type='hidden' name='step' value='2'> </form> "; } else if ($step == '2') { // Создаем объект поста $api = new api_topics_and_posts(); $api->api_init(); $api->post_settings['parse_bbcode'] = 0; $api->post_settings['show_emoticons'] = 0; // Получаем пакет unset($pack); if (!empty($_POST['pack_name'])) $pack_n=$_POST['pack_name']; if (preg_match("/^[a-zA-Z0-9.]+$/", $pack_n)) @include('./packs/'.$pack_n); if (!empty($pack)) { $packs_counts=count($pack); for ($i=$packs_counts-1; $i >= 0; $i--) { $api->set_author_by_name($forum_user); $api->allow_unicode='cp1251'; $api->set_post_content($pack[$i]['content_head']."<br><br>".$pack[$i]['content_body']); $api->set_forum_id($pack[$i]['my_category']); $api->set_topic_title($pack[$i]['title']); $api->set_topic_state('open'); if ($api->create_new_topic()==false) { echo"Ошибка при добавлении новости[ID-$i]: ".$pack[$i]['title']."<br>"; } } echo "<hr> Успешно добавлено $packs_counts новостей из пакета. Рекомендуется удалить файл-пакет!"; } else echo "Невозможно выполнить VG-Packet!"; } echo "</body></html>"; } else { Header("Location: http://forum.anour.ru"); } ?> | Но вот беда - обновил версию форума и данный модуль не дружит с новой версией. может Есть люди который помогут подточить этот модуль импорта под новую версию IPB 3.1.x и под 3.2. За проделанную работу отблогадарю + заплачу WMZ если кто возьмется сделать стукните в ПМ предложу еще пару таких работ. |