:-)
  • Пригодился класс?

    Яндекс Яндекс. Деньги Хочу такую же кнопку

    Скачать можно:

    Wp-poster (13.8 KiB)

    Вопросы:

    1. Что это такое?
    2. Зачем это надо?
    3. Как мне отправить пост на блог?
    4. Что значит '32700 parse error. not well formed'
    5. Что значит 'XML-RPC services are disabled on this blog.'
    6. Как мне создать категории?
    7. Как мне узнать ID поста?
    8. Когда будет можно делать ххххх?
    9. Какие версии WordPress совместимы?
    10. Какие условия использования?
    11. У меня вырезаются все теги, что делать?

    Ответы:

    1. Что это такое?

    Это PHP класс написанный мной на работе для упрощения отправки постов в блог на WordPress. По сути, сам класс является лишь фасадом к классу IXR_Client, который производит общение по протоколу XML-RPC с блогом. Класс мной выложен в свободное использование.


    2. Зачем это надо?

    Некоторые люди хотят организовать кросс-постинг, некоторые хотят иметь возможность сразу отправлять несколько постов. У каждого свои цели. Класс - это лишь инструмент, а уж цель придумывает пользователь.


    3. Как мне отправить пост на блог?

    Пример:

    <?php

    require ('/wp_poster.php');

    require ('/ixr_client.php');

    $poster = wp_poster::getInstance();

    $blog = new wp_blog('http://wordpress/xmlrpc.php', 'test', 'test', 0);

    $post = new wp_post();

    $post->setTitle('Заголовок поста');

    $post->setDescription('Текст до _читать далее_');

    $post->setPostStatus('publish');

    $poster->post($blog, $post);


    4. Что значит '32700 parse error. not well formed'

    Это значит, что XML запрос к серверу или ответ содержат ошибки. Для начала проверьте, что вы посылаете текст в формате UTF-8.


    5. Что значит 'XML-RPC services are disabled on this blog.'

    Это означает, что в блоге выключена настройка, позволяющая отправлять посты через протокол XML-RPC. Вы можете ее включить в панели администратора.


    6. Как мне создать категории?

    $blog->createCategories(array('категория1', 'категория2'));


    7. Как мне узнать ID поста?

    Сейчас так:

    $id = $poster->post($blog, $post);

    Со временем будет изменено на:

    $posted = $poster->post($blog, $post);

    $id = $posted->getId();


    8. Когда будет можно делать ххххх?

    Тогда, когда руки дойдут. Я за это не получаю денег и делаю в свое свободное время, котрого к сожалению не очень много.


    9. Какие версии WordPress совместимы?

    Могу отвечать только за 2.6 и 2.7. С остальными не пробовал.


    10. Какие условия использования?

    Условия использования WordPress и класса IXR_Client смотрите на сайте вордпресса. Мой класс разрешено использовать и изменять по желанию, запрещено только коммерческое распространение. Класс предоставляется as is, я не не несу ответственности за результаты его использования, все только на свой страх и риск. Все авторские права принадлежат мне. Так же желательно, хотя и не обязательно указывать ссылку на эту страницу.


    11. У меня вырезаются все теги, что делать?

    Это багрепорт от Kirill'a. Он говорит, что дело в libxml2. При передаче тегов нужена версия <=2.6.32

    Update:
    Решение проблемы с удалением угловых скобок (тегов). Для вордпресса есть специальный плагин:
    http://josephscott.org/code/wordpress/plugin-libxml2-fix/. Говорим спасибо Kinslayer.

  • 104 Responses to “WP-poster”

    Страниц: « 11 10 9 8 7 6 5 4 3 [2] 1 » Show All

    1. 14
      Viper Says:

      Да, ругается на эту строку. Убрать ‘=array()’ пробовал – не помогло. Проверял на 2-х разных хостингах, на первом версия PHP – 4.4.9, на втором – 5.2.9. Скачана последняя версия класса, для добавления постов использую Ваш пример.

    2. 13
      CharnaD Says:

      У меня на 17й строке находится
      private $posts = array();

      Можете попробовать убрать ‘=array()’
      Какая у вас версия PHP? Попробуйте скачать последнюю версию класса.

    3. 12
      Viper Says:

      Никак не хочет работать класс, постоянно пишет ошибку:

      Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or ‘}’ in /***/wp_poster.php on line 17

      В чём может быть проблема?

    4. 11
      CharnaD Says:

      Задавайте-задавайте)

      Пока что можно сделать так: wp_blog->wp_deleteCategory(id), но это временно. Потом переделаю. Теги и посты пока удалять нельзя..

      Автора можно задавать. wp_post->setAuthorId(id)

    5. 10
      Юрий Says:

      И еще вопрос. Можно ли как-то задавать имя автора? У меня столько вопросов…:)

    6. 9
      Юрий Says:

      Все отлично работает! А можно ли сделать удаление всех записей, категорий, меток? Если да, то как?

    7. 8
      CharnaD Says:

      Пожалуйста) Для ответов я тут и есть)

      После читать далее: wp_post->setTextMore(‘…’);
      Категории: wp_post->setCategories()

      учтите, что категории не создаются сами собой, для этого надо wp_poster->createCategories(wp_blog, array(‘кат1′, ‘кат2′))

    8. 7
      Юрий Says:

      «Текст до _читать далее» понятно, а как сделать «Текст После читать далее»? И как задавать категории? Как создавать понятно, а вот для нового поста прикрепить категорию как? Спасибо за Ваши ответы:)

    9. 6
      CharnaD Says:

      Дату ставить нужно с помощью одной из 2х функций setDateGmt() или setDate() у объекта wp_post.

    10. 5
      Юрий Says:

      Добавьте, пожалуйста код для отложенной публикации.
      Я так понимаю это $content_struct['date_created_gmt'] = чему?

    Страниц: « 11 10 9 8 7 6 5 4 3 [2] 1 » Show All

    Leave a Reply