Кросспост WordPress в Livejournal: Live+Press, LJ crosspost20 October 2008, 23:10:34 |
Today I set up plugin “LJ crosspost” for posting directly from wordpress to livejournal. Unlike Live+Press which has many interesting features, it’s not so customizable. However, it is enough for me and it works a little faster then the Live+Press. And finally, it works with russian language)))
But I missed one feature – it’s quite annoying that you can only post to livejournal the same text as to wordpress. I wanted to have two quite different variants of text. So I modified plugin a little to work with excerpts.
If you need the same feature – just replace the first code fragment with the second. You can check cross-posted entry .
Решила всё-таки дублировать посты из своего основного блога в . Хотя бы для оповещения. Отвечать там мне не надо.
По поводу процесса: есть два плагина, которые реализуют такой кросспост.
1) Live+Press очень красивый, со множеством настроек, полностью заменяющий интерфейсы жж… Только вот с русским языком он не работает. А я так и не смогла его отстроить для этого. В интернете тоже решений нет. Обещают в следующей версии сделать поддержку.
2) LJ crosspost. Не такой красивый, меньше опций. Однако работает по ощущениям быстрее и не так заси… засоряет базу :) И вдобавок работает с русским языком. Сразу и без ковыряния. Ещё один плюс – для него есть русификация. Ссылку искать не буду так как у меня все интерфейсы на английском.
Единственный момент – LJ crosspost имеет два варианта:
1) Целиком копировать запись в жж
2) Копировать только до вордпрессовского тэга “<!–more–>”
А мне хотелось, чтобы записи могли существенно различаться. Для этого мы можем использовать такое поле в wordpress как excerpt. По-русски это что-то вроде краткого содержания. Итак, мы пишем это содержание – а оно появляется в жж. Удобнее ведь? Сделать элементарно.
Для этого открываем файл “lj_crosspost.php” (это там единственный php файл), после чего берём фрагмент
609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 | if(!$post->post_password) { // and if there's no <!--more--> tag, we can spit it out and go on our // merry way if(strpos($post->post_content, "<!--more-->") === false) { $the_event .= apply_filters('the_content', $post->post_content); } else { $content = explode("<!--more-->", $post->post_content, 2); $the_event .= apply_filters('the_content', $content[0]); switch($options['more']) { case "copy": $the_event .= apply_filters('the_content', $content[1]); break; case "link": $the_event .= sprintf(' <a href="%s#more-%s">', get_permalink($post_id), $post_id) . __('Read the rest of this entry »', LJXP_DOMAIN) . '</a> '; break; case "lj-cut": $the_event .= '<lj-cut text="' . __('Read the rest of this entry &raquo;', LJXP_DOMAIN) . '">' . apply_filters('the_content', $content[1]) . '</lj-cut>'; break; } } } |
И жестоко заменяем на
609 610 | if(!$post->post_password) $the_event=apply_filters('the_content',$post->post_excerpt).'<a href="'.get_permalink($post_id).'#more-'.$post_id.'">Read the rest of this entry »</a>'; |
Номера строк идентичны. Думаю, и в русской версии так же.
И получаем то же, что и у меня.
Примеры кросспоста в лайвжорнал – .
Дальше буду рассказывать другие решения для миграции с livejournal.
| Tags: livejournal, wordpress | Comments [ 25 ] |

Subscribe? Sure? What for?

26 October at 3:57 pm
Самое прикольное, что сам плагин написан несколько хреново – я описывал это, он не воспринимает расширинный . Но это тоже легко исправляется – если нужен не ексерпт, а нормальный вывод в ЖЖ до ката.
26 October at 4:15 pm
Да, прочитал у Вас, посмотрел исправление. Сам просто не успел столкнуться :)
14 December at 9:46 pm
Что-то меня вдруг испугал род глаголов в этом комментарии…
14 December at 10:18 pm
Я посто кавайная няка ^_^
:)
14 December at 10:23 pm
Я – молчок.
9 January at 10:20 pm
Подскажите, пожалуйста. Поставил себе LJ crosspost на WordPress 2.8. Настройка – добавил login+password и т. п.
Теперь, при опубликовании статей на основном блоге у меня вылетает такая ошибка:
Something went wrong – -32300 : transport error – could not open socket: -803328216 Unable to find the socket transport “http” – did you forget to enable it when you configured PHP?
Подскажите, кто знает. Сам в PHP нуль с палочкой :-))
10 January at 12:12 am
Это означает, что настройка PHP на вашем хостинге запрещает доступ сценариям вовне (по http, в данном случае).
Возможно, у вас не стоит параметр allow_url_fopen = On
А автоапдейты работают у вордпресса?
Если работают, то можно допиливать плагин, чтобы работал через другие функции. Если нет – разбираться с конфигурацией PHP (менять хостинг, например :)
11 January at 5:22 pm
Разобрался с этой ошибкой. Как всегда, все было просто – даже стыдно сказать… :-) Но теперь появляется вот эта при попытке crossposting’а:
Something went wrong – 152 : Can’t make back-dated entries in non-personal journal.
Правильно ли я понимаю, что плагин не может увидеть или войти в мой журнал на LJ?
Поменял уже несколько версий этого плагина – не работает кросспостинг у меня. А жаль! Имхо – зело удобная штучка, насколько могу судить…
11 January at 5:34 pm
То ли ему не нравится то, что вы пишете в сообщество, а не в дневник пользователя, то ли то, что добавляете записи с датой более ранней, чем уже есть в сообществе.
То ли комбинация того и другого :)
Посмотрите – всё заработает, я до сих пор кросспостю ;)
14 January at 12:08 am
Уже посмотрел… С помощью техподдержки… Обрадовали меня – у них в apache отключен crossposting из соображений безопасности… Вот. :-(
14 January at 6:04 pm
Меняйте хостинг… Сейчас он ничего не стоит, а вордпресс без выхода наружу это уже пол-вордпресса…
9 January at 10:24 pm
Гм… А что это за плагин такой интересный: при добавлении комментов автоматически определяется ОС того, кто писал коммент и ее тип? Правильно я понял? Хочу себе такой! :-)
10 January at 12:14 am
Это доработанный мной плагин WP-UserAgent.
В штатном варианте он громоздкий и некрасивый, а в моём не получает никаких апдейтов. Но меня это особо не волнует :)
1 February at 12:01 am
Здравствуйте Jehy, установил LJ-XP он выдает такую ошибку
Something went wrong – Server : Can’t call method “is_validated” on an undefined value at /home/lj/cgi-bin/Apache/LiveJournal.pm line 1780.
Это проблемы с хостером или я что-то напортачил?
1 February at 8:24 pm
Какая-то волшебная ошибка.
А что за модуль такой
>>/home/lj/cgi-bin/Apache/LiveJournal.pm
?
Но вообще, судя по ошибке, что-то где-то не определено ))
Больше сказать не могу, я не разработчик модуля и я даже не занимаюсь его поддержкой…
1 February at 8:59 pm
А. Я туплю. Это ошибка сервера лайвжорнала – так что понятия не имею, что может быть не так)
имхо, вы таки какие-то данные недоввели.
1 February at 9:27 pm
Спасибо. решил проблему. Обновил до последней версии все стало на анг. Затем появилась ошибка
Something went wrong – -32300 : transport error – could not open socket: -803328216 Unable to find the socket transport “http” – did you forget to enable it when you configured PHP
Это ошибка плагина в поле имя хостинга он для примера вводит
а нужно
без “/”
Еще раз спасибо за нужные советы, буду следить за вашим блогом.
26 March at 5:00 pm
Jehy, добрый день.
Сейчас сижу настраиваю свой блог, и кросспостинг в ЖЖ у меня почему-то не работает. В ИТ-сфере я не нуб, хотя и не шарю в CSS :) Плагин настроил (там ничего сложного), но посты в ЖЖ не публикуются.
Нет ли ещё каких подводных камней?
27 March at 3:36 pm
Честно говоря, там этих камней может быть дофига :)
Перечислить все нет никакой отдельной возможности.
Нужно отлаживать в конкретном случае.
Хоть ошибки-то вам выдаются какие-то?
12 May at 4:25 pm
Скачал плагин с сайта вордпресса – всё хорошо.
21 May at 8:15 am
Ммм. А только оттуда и надо качать :)
24 November at 4:28 pm
а как сделать так, чтобы отображались картинки из WP, даже если пути их прописаны как /img/picture.jpg
13 May at 11:54 pm
вечер добрый
у меня в плагине постоянно одна и та же ошибка –
Something went wrong – -32301 : transport error – HTTP status code was not 200 –
как от нее избавится? и вообще реально через плагин старые записи отправить на ЖЖ?
с уважением Алексей
14 May at 12:22 am
Да, реально, у меня отправлялись…
Не знаю, как плагин работает сейчас – давно ничего сюда не писал.
Возможно, после атаки ботов жж стал защищаться от всего – включая этот плагин. Автор не я, я его не поддерживаю – большего сказать не могу.
14 May at 10:58 am
ясно, спасибо!
буду думать что с ним делать!