Опубликовано: 20 марта 20187 г Возможно ли импорт RSS для разделов, настроить так что бы при импорте информация генерировалась не новой темой, а указывалась тема куда будет генерироваться новое сообщение?
Опубликовано: 30 апреля 20187 г В автоматическом режиме - не срабатывает.А вообще задача полностью отрабатывает?
Опубликовано: 30 апреля 20187 г Автор А вообще задача полностью отрабатывает? В том то и дело что в журнале задач фиксируется выполнения задачи этой.
Опубликовано: 30 апреля 20187 г В том то и дело что в журнале задач фиксируется выполнения задачи этой.Запись в любом случае будет. Нужно пройтись по всем этапам. Откройте файл задачи. Найдите $rss->rssImportRebuildCache( implode( ",", $feeds_to_update), 0, 1 );Выше добавьте IPSDebug::addLogMessage('Rss Log', 'rsslog', $feeds_to_update, true); После нескольких запусков проверьте файл \cache\rsslog.cgi
Опубликовано: 1 мая 20187 г Автор После нескольких запусков проверьте файл \cache\rsslog.cgi Вот результат: --------------------------------------------------------------------------------> Time: 1525117561 / Mon, 30 Apr 2018 19:46:01 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525119361 / Mon, 30 Apr 2018 20:16:01 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '3', 1 => '4', 2 => '1', 3 => '2',)--------------------------------------------------------------------------------> Time: 1525121162 / Mon, 30 Apr 2018 20:46:02 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525122960 / Mon, 30 Apr 2018 21:16:00 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '8',)--------------------------------------------------------------------------------> Time: 1525124761 / Mon, 30 Apr 2018 21:46:01 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525126563 / Mon, 30 Apr 2018 22:16:03 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '5', 1 => '6', 2 => '7', 3 => '1', 4 => '2',)--------------------------------------------------------------------------------> Time: 1525130166 / Mon, 30 Apr 2018 23:16:06 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525131998 / Mon, 30 Apr 2018 23:46:38 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '3', 1 => '4', 2 => '1', 3 => '2',)--------------------------------------------------------------------------------> Time: 1525135563 / Tue, 01 May 2018 00:46:03 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '8', 1 => '1', 2 => '2',)--------------------------------------------------------------------------------> Time: 1525139164 / Tue, 01 May 2018 01:46:04 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '5', 1 => '6', 2 => '7', 3 => '1', 4 => '2',)--------------------------------------------------------------------------------> Time: 1525142778 / Tue, 01 May 2018 02:46:18 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525144574 / Tue, 01 May 2018 03:16:14 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '3', 1 => '4',)--------------------------------------------------------------------------------> Time: 1525146363 / Tue, 01 May 2018 03:46:03 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525148163 / Tue, 01 May 2018 04:16:03 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '8', 1 => '1', 2 => '2',)--------------------------------------------------------------------------------> Time: 1525151764 / Tue, 01 May 2018 05:16:04 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '5', 1 => '6', 2 => '7', 3 => '1', 4 => '2',)--------------------------------------------------------------------------------> Time: 1525153565 / Tue, 01 May 2018 05:46:05 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525157164 / Tue, 01 May 2018 06:46:04 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '3', 1 => '4', 2 => '1', 3 => '2',)--------------------------------------------------------------------------------> Time: 1525160764 / Tue, 01 May 2018 07:46:04 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '8', 1 => '1', 2 => '2',)--------------------------------------------------------------------------------> Time: 1525164362 / Tue, 01 May 2018 08:46:02 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '5', 1 => '6', 2 => '7', 3 => '1', 4 => '2',)--------------------------------------------------------------------------------> Time: 1525166162 / Tue, 01 May 2018 09:16:02 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525167962 / Tue, 01 May 2018 09:46:02 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)--------------------------------------------------------------------------------> Time: 1525169765 / Tue, 01 May 2018 10:16:05 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '3', 1 => '4', 2 => '1', 3 => '2',)--------------------------------------------------------------------------------> Time: 1525173363 / Tue, 01 May 2018 11:16:03 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '8', 1 => '1', 2 => '2',)--------------------------------------------------------------------------------> Time: 1525175166 / Tue, 01 May 2018 11:46:06 +0000> URL: /index.php?app=core&module=task> Rss Logarray ( 0 => '1', 1 => '2',)
Опубликовано: 3 мая 20187 г Вот результат: Так тут Вам нужно посмотреть. Если есть ID'шник "проблемного" RSS в логах, то импорт происходит, и нужно дальше искать причину.Добавить в файл импорта в разные места по порядку.if ($row['rss_import_id'] == X) { IPSDebug::addLogMessage("Point 1", 'rsslog', false, true); }if ($row['rss_import_id'] == X) { IPSDebug::addLogMessage("Point 2", 'rsslog', false, true); }и т.д.X - ID Rss
Опубликовано: 16 октября 20187 г Автор rss.zip (13,9К) Можно вас попросить сделать такое же самое но для Экспорта? То есть что бы была возможность в настройках выставлять для экспорта не только разделов (то есть всех тем) а также и тем (сообщений)?
Опубликовано: 17 октября 20187 г Можно вас попросить сделать такое же самое но для Экспорта? То есть что бы была возможность в настройках выставлять для экспорта не только разделов (то есть всех тем) а также и тем (сообщений)? Так в RSS идут темы, а не посты.
Опубликовано: 17 октября 20187 г Автор Так в RSS идут темы, а не посты. Ну да. А мне бы хотелось что бы был такой же фикс как и в Импорте - что бы можно для экспорта указывать не только разделы, но и тему.
Опубликовано: 23 октября 20187 г Автор Ну да. А мне бы хотелось что бы был такой же фикс как и в Импорте - что бы можно для экспорта указывать не только разделы, но и тему. Я так понял что такое реализовать на IPB невозможно? :(
Опубликовано: 24 октября 20187 г Я так понял что такое реализовать на IPB невозможно? Выполнить запросALTER TABLE rss_export ADD rss_export_tids TEXT NULL DEFAULT NULL;###################################################################################################################################################### \admin\applications\forums\skin_cp\cp_skin_rss.phpНайти <li> <label>{$this->lang->words['rss_ex_cache']}<span class='desctext'>{$this->lang->words['rss_ex_cache_info']}</span></label> {$form['rss_export_cache_time']} </li> Выше добавить <li> <label>Темы<span class='desctext'>Укажите темы (через запятую) для экспорта.</span></label> {$form['rss_export_tids']} </li>###################################################################################################################################################### \admin\applications\forums\modules_admin\rss\export.phpНайти $form['rss_export_forums'] = $this->registry->output->formMultiDropdown( 'rss_export_forums[]', $dropdown, explode( ",", $rss_export_forums ), 7 ); Ниже добавить $form['rss_export_tids'] = $this->registry->output->formInput('rss_export_tids', (isset($this->request['rss_export_tids']) and $this->request['rss_export_tids']) ? $this->request['rss_export_tids'] : $rssstream['rss_export_tids']); Найти $rss_export_order = trim( $this->request['rss_export_order'] ); Ниже добавить $rss_export_tids = implode(',', array_map('trim', array_filter(explode(',', $this->request['rss_export_tids']), 'is_numeric'))); Найти 'rss_export_order' => $rss_export_order, Ниже добавить 'rss_export_tids' => $rss_export_tids, Найти if ( ! $rss_export_title OR ! $rss_export_count OR ! $rss_export_forums ) Заменить на $fidsOrTids = false; if ($rss_export_forums) { $fidsOrTids = true; } elseif ($rss_export_tids) { $fidsOrTids = true; if (!$rss_export_forums) { $rss_export_forums = 0; } } if ( ! $rss_export_title OR ! $rss_export_count OR ! $fidsOrTids ) Найти if ( $row['rss_export_include_post'] ) { $this->DB->build( array( 'select' => 't.*', 'from' => array( 'topics' => 't' ), 'where' => "t.forum_id IN( " . $row['rss_export_forums'] . " ) AND t.state != 'link' AND t.approved=1", 'order' => 't.' . $row['rss_export_order'] . ' ' . $row['rss_export_sort'], 'limit' => array( 0, $row['rss_export_count'] ), 'add_join' => array( array( 'select' => 'p.pid, p.post, p.use_emo, p.post_htmlstate', 'from' => array( 'posts' => 'p' ), 'where' => 't.topic_firstpost=p.pid', 'type' => 'left' ) ) ) ); } else { $this->DB->build( array( 'select' => '*', 'from' => 'topics', 'where' => "forum_id IN( ".$row['rss_export_forums']." ) AND state != 'link' AND approved=1", 'order' => $row['rss_export_order'].' '. $row['rss_export_sort'], 'limit' => array( 0, $row['rss_export_count'] ) ) ); }Заменить на if ($row['rss_export_tids']) { $this->DB->build( array( 'select' => 't.*', 'from' => array( 'topics' => 't' ), 'where' => "t.tid IN( " . $row['rss_export_tids'] . " ) AND t.state != 'link' AND t.approved=1 AND p.queued=0", 'order' => 'p.post_date' . ' ' . $row['rss_export_sort'], 'limit' => array( 0, $row['rss_export_count'] ), 'add_join' => array( array( 'select' => 'p.post_date, p.pid, p.post, p.use_emo, p.post_htmlstate', 'from' => array( 'posts' => 'p' ), 'where' => 't.tid=p.topic_id', 'type' => 'left' ) ) ) ); } else { if ( $row['rss_export_include_post'] ) { $this->DB->build( array( 'select' => 't.*', 'from' => array( 'topics' => 't' ), 'where' => "t.forum_id IN( " . $row['rss_export_forums'] . " ) AND t.state != 'link' AND t.approved=1", 'order' => 't.' . $row['rss_export_order'] . ' ' . $row['rss_export_sort'], 'limit' => array( 0, $row['rss_export_count'] ), 'add_join' => array( array( 'select' => 'p.pid, p.post, p.use_emo, p.post_htmlstate', 'from' => array( 'posts' => 'p' ), 'where' => 't.topic_firstpost=p.pid', 'type' => 'left' ) ) ) ); } else { $this->DB->build( array( 'select' => '*', 'from' => 'topics', 'where' => "forum_id IN( ".$row['rss_export_forums']." ) AND state != 'link' AND approved=1", 'order' => $row['rss_export_order'].' '. $row['rss_export_sort'], 'limit' => array( 0, $row['rss_export_count'] ) ) ); } } Найти 'link' => $this->registry->output->buildSEOUrl( 'showtopic=' . $topic['tid'], 'publicNoSession', $topic['title_seo'], 'showtopic' ), Заменить на 'link' => $row['rss_export_tids'] ? $this->registry->output->buildSEOUrl( "showtopic={$topic['tid']}&view=findpost&p={$topic['pid']}", "publicNoSession", $topic['title_seo'], 'showtopic' ) : $this->registry->output->buildSEOUrl( 'showtopic=' . $topic['tid'], 'publicNoSession', $topic['title_seo'], 'showtopic' ), Найти 'pubDate' => $class_rss->formatDate( $row['rss_export_order'] == 'last_post' ? $topic['last_post'] : $topic['start_date'] ), Заменить на 'pubDate' => $row['rss_export_tids'] ? $class_rss->formatDate($topic['post_date']) : ($class_rss->formatDate($row['rss_export_order'] == 'last_post' ? $topic['last_post'] : $topic['start_date'])), Найти 'guid' => $this->registry->output->buildSEOUrl( 'showtopic=' . $topic['tid'], 'publicNoSession', $topic['title_seo'], 'showtopic' ) Заменить на 'guid' => $row['rss_export_tids'] ? $this->registry->output->buildSEOUrl( "showtopic={$topic['tid']}&view=findpost&p={$topic['pid']}", "publicNoSession", $topic['title_seo'], 'showtopic' ) : $this->registry->output->buildSEOUrl( 'showtopic=' . $topic['tid'], 'publicNoSession', $topic['title_seo'], 'showtopic' ),
Опубликовано: 24 октября 20187 г Автор @newbie, Большое спасибо за помощь! Чуть позднее потестю и отпишусь.
Опубликовано: 25 октября 20187 г Автор Поместил список тем в "Темы Укажите темы (через запятую) для экспорта."Однако в самом канале выдаёт сообщения не с списка указанных тем, а сообщение с темы, ид которой имеет ид канала RSS
Опубликовано: 25 октября 20187 г Автор Я сам ошибся. В поле я указывал не ссылки на темы, а их иды. Хотя если ставлю полную ссылку на тему, пишет такое - "Вы должны заполнить все поля. Попробуйте еще раз." Ссылка на RSS-канал - http://test.imtw.ru/rss/forums/30-testovaya/
Опубликовано: 25 октября 20187 г Я сам ошибся. В поле я указывал не ссылки на темы, а их иды. Хотя если ставлю полную ссылку на тему, пишет такое - "Вы должны заполнить все поля. Попробуйте еще раз."Писать нужно ID'шники через запятуюСейчас, судя по всему, там указан 30
Возможно ли импорт RSS для разделов, настроить так что бы при импорте информация генерировалась не новой темой, а указывалась тема куда будет генерироваться новое сообщение?