|
| Дата |
|
USD/RUB | 76.8373 | BTC/USD | 28683.6571 |
|
|
|
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии. |
31.08.2017, 12:05
|
#1
|
★☆★☆★
Регистрация: 01.10.2009
Сообщений: 444
Бабло: $166295
|
WordPress: как удалить дубли постов в XML?
Как можно удалить дубли постов в XML файле перед импортом в вордпресс? Может быть, есть какие-то спец. скрипты или софт?
Извращался в Notepad++ путём объёдинения строк -> удаления дублей -> через поиск/замену восстановление правильного формата XML, но это просто пздц когда всё зависает на обработке крупных файлов =\
Ещё как вариант делаю предварительно импорт XML в вордпресс на локалхосте, после чего вордпресс сам отсеивает дубли постов. Затем закачиваю чистый XML через export тулзу. Тоже геморой, т.к. процесс проходит очень долго.
Как-то можно ускорить импорт XML на локалхосте? Разбивать файлы на несколько мелких не вариант, при условии что файлов очень много.
Заранее спасибо, если что можно за $ накидать решение.
__________________
I shave my balls
|
|
|
31.08.2017, 13:07
|
#2
|
сыроед
Регистрация: 01.10.2015
Сообщений: 15,385
Бабло: $1804980
|
ты бы сюда кинул пример чтоли... под офф
и что значит "много"? а в байтах?
|
|
|
31.08.2017, 13:21
|
#3
|
Юниор
Регистрация: 12.06.2014
Сообщений: 12
Бабло: $2655
|
Цитата:
Сообщение от Dr.EVIL
Как можно удалить дубли постов в XML файле перед импортом в вордпресс? Может быть, есть какие-то спец. скрипты или софт?
Извращался в Notepad++ путём объёдинения строк -> удаления дублей -> через поиск/замену восстановление правильного формата XML, но это просто пздц когда всё зависает на обработке крупных файлов =\
Ещё как вариант делаю предварительно импорт XML в вордпресс на локалхосте, после чего вордпресс сам отсеивает дубли постов. Затем закачиваю чистый XML через export тулзу. Тоже геморой, т.к. процесс проходит очень долго.
Как-то можно ускорить импорт XML на локалхосте? Разбивать файлы на несколько мелких не вариант, при условии что файлов очень много.
Заранее спасибо, если что можно за $ накидать решение.
|
Сталкивался с проблемой редактирования огромного количества строк еще пару лет назад вот мое решение EmEditor Text Editor Professional открывает и редактирует фалйы с лямами строк на которых Notepad ++ умирает
|
|
|
31.08.2017, 14:02
|
#4
|
★☆★☆★
Регистрация: 01.10.2009
Сообщений: 444
Бабло: $166295
ТС -->
|
ТС
Пример XML
В примере первый блок и последний являются одинаковыми. Нужно удалить повторный.
PHP код:
<item>
<title>title1</title>
<dc:creator><![CDATA[admin]]></dc:creator>
<category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category>
<category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category>
<content:encoded><![CDATA[
<p>text</p>
]]></content:encoded>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>close</wp:ping_status>
<wp:post_name>title1</wp:post_name>
<wp:status>publish</wp:status>
<wp:post_type>post</wp:post_type>
</item>
<item>
<title>title2</title>
<dc:creator><![CDATA[admin]]></dc:creator>
<category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category>
<category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category>
<content:encoded><![CDATA[
<p>text</p>
]]></content:encoded>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>close</wp:ping_status>
<wp:post_name>title1</wp:post_name>
<wp:status>publish</wp:status>
<wp:post_type>post</wp:post_type>
</item>
<item>
<title>title1</title>
<dc:creator><![CDATA[admin]]></dc:creator>
<category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category>
<category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category>
<content:encoded><![CDATA[
<p>text</p>
]]></content:encoded>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>close</wp:ping_status>
<wp:post_name>title1</wp:post_name>
<wp:status>publish</wp:status>
<wp:post_type>post</wp:post_type>
</item>
EmEditor и Netepad++ это я уже пробовал, очень много гемора с обработкой файлов. Проще импортировать в вордпресс и ждать пока он обработает, затем делать экспорт. Но это очень долго =\
__________________
I shave my balls
|
|
|
31.08.2017, 14:45
|
#5
|
Senior Member
Регистрация: 25.11.2013
Сообщений: 272
Бабло: $47215
|
Код:
sed '/./{H;$!d;};x;s/\n/={NL}=/g' file.txt | sort -u | sed '1s/={NL}=//;s/={NL}=/\n/g' > out.txt
|
|
|
31.08.2017, 15:00
|
#6
|
Senior Member
Регистрация: 06.04.2007
Сообщений: 1,509
Бабло: $121755
|
вроде как textkit делал такое, можно попробовать проверить, кидай файл
|
|
|
31.08.2017, 15:20
|
#7
|
★☆★☆★
Регистрация: 01.10.2009
Сообщений: 444
Бабло: $166295
ТС -->
|
ТС
capturis, что-то не работает, на выходе файл без изменений.
holms, TextKit не юзал. Вот такой XML файл он сможет обработать? Здесь на выходе должно получиться два поста, если эта прога правильно всё делает.
PHP код:
<item>
<title>title1</title>
<dc:creator><![CDATA[admin]]></dc:creator>
<category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category>
<category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category>
<content:encoded><![CDATA[
<p>text</p>
]]></content:encoded>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>close</wp:ping_status>
<wp:post_name>title1</wp:post_name>
<wp:status>publish</wp:status>
<wp:post_type>post</wp:post_type>
</item>
<item>
<title>title2</title>
<dc:creator><![CDATA[admin]]></dc:creator>
<category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category>
<category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category>
<content:encoded><![CDATA[
<p>text</p>
]]></content:encoded>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>close</wp:ping_status>
<wp:post_name>title1</wp:post_name>
<wp:status>publish</wp:status>
<wp:post_type>post</wp:post_type>
</item>
<item>
<title>title1</title>
<dc:creator><![CDATA[admin]]></dc:creator>
<category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category>
<category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category>
<content:encoded><![CDATA[
<p>text</p>
]]></content:encoded>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>close</wp:ping_status>
<wp:post_name>title1</wp:post_name>
<wp:status>publish</wp:status>
<wp:post_type>post</wp:post_type>
</item>
__________________
I shave my balls
|
|
|
31.08.2017, 15:37
|
#8
|
★☆★☆★
Регистрация: 01.10.2009
Сообщений: 444
Бабло: $166295
ТС -->
|
ТС
holms, спасибо)
Вот точнее полный код с заголовками:
PHP код:
<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:excerpt="http://wordpress.org/export/1.2/excerpt/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wp="http://wordpress.org/export/1.2/" >
<channel> <title>site</title> <link>http://localhost/</link> <description>Just another WordPress site</description> <pubDate>Thu, 31 Aug 2017 07:46:06 +0000</pubDate> <language>en-US</language> <wp:wxr_version>1.2</wp:wxr_version> <wp:base_site_url>http://localhost/</wp:base_site_url> <wp:base_blog_url>http://localhost/</wp:base_blog_url>
<wp:author><wp:author_id>1</wp:author_id><wp:author_login><![CDATA[admin]]></wp:author_login><wp:author_email><![CDATA[[email protected]]]></wp:author_email><wp:author_display_name><![CDATA[admin]]></wp:author_display_name><wp:author_first_name><![CDATA[]]></wp:author_first_name><wp:author_last_name><![CDATA[]]></wp:author_last_name></wp:author>
<generator>https://wordpress.org/?v=4.8.1</generator>
<item> <title>title1</title> <dc:creator><![CDATA[admin]]></dc:creator> <category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category> <category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category> <content:encoded><![CDATA[ <p>text</p> ]]></content:encoded> <wp:comment_status>open</wp:comment_status> <wp:ping_status>close</wp:ping_status> <wp:post_name>title1</wp:post_name> <wp:status>publish</wp:status> <wp:post_type>post</wp:post_type> </item>
<item> <title>title2</title> <dc:creator><![CDATA[admin]]></dc:creator> <category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category> <category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category> <content:encoded><![CDATA[ <p>text</p> ]]></content:encoded> <wp:comment_status>open</wp:comment_status> <wp:ping_status>close</wp:ping_status> <wp:post_name>title1</wp:post_name> <wp:status>publish</wp:status> <wp:post_type>post</wp:post_type> </item>
<item> <title>title1</title> <dc:creator><![CDATA[admin]]></dc:creator> <category><![CDATA[Uncategorized]]></category><category domain="category" nicename="uncategorized"><![CDATA[Uncategorized]]></category> <category domain="tag"><![CDATA[Tag1]]></category><category domain="tag" nicename="tag1"><![CDATA[Tag1]]></category> <content:encoded><![CDATA[ <p>text</p> ]]></content:encoded> <wp:comment_status>open</wp:comment_status> <wp:ping_status>close</wp:ping_status> <wp:post_name>title1</wp:post_name> <wp:status>publish</wp:status> <wp:post_type>post</wp:post_type> </item>
</channel> </rss>
Затестил TextKit, всё ок. Тлько автор походу перестал продавать прогу, а из демки сохранить нельзя. И прогу никак не купить, вот зе фак!?
"Продажа новых копий программы приостановлена."
__________________
I shave my balls
Последний раз редактировалось Dr.EVIL; 31.08.2017 в 15:47.
|
|
|
31.08.2017, 15:48
|
#9
|
Senior Member
Регистрация: 06.04.2007
Сообщений: 1,509
Бабло: $121755
|
Dr.EVIL, прога работает удаляет дубли, я проверил, но твой формат не приняла прога, не стал заморачиваться с ним, сделал экспорт записей с вп, сделал два дубля поста одного, он его и нашел) так что все норм) вообще прога очень хорошо мне както помогла с подготовкой контента для вп.
попробуй ему написать, новый ключ он мне недели две высылал)) а так да забросил проект, а подобной другой проги такой я не нашел.
|
|
|
31.08.2017, 15:53
|
#10
|
★☆★☆★
Регистрация: 01.10.2009
Сообщений: 444
Бабло: $166295
ТС -->
|
ТС
Спасибо 
__________________
I shave my balls
|
|
|
Опции темы |
|
Опции просмотра |
Линейный вид
|
|