Меня спрашивают - как программно из php постить в блоголёте. Это просто. Для начала - в блоголёте почти все - это объекты и их свойства, и дело нужно иметь с ними. Первое - создание новой записи


$post = new TPost(); //создаю новый обект для нового поста
$post->title = 'какой нибудь заголовок';
$post->content = 'Какой то текст поста, он будет приведен к html, и из него будут заполнены другие свойства, такие как description, moretitle, excerpt...';
$post->tagnames = 'метка первая, метка вторая';
$post->catnames = 'Новости, Запись'; //рубрики будут созданы, если их еще не было
// и остальные поля
//далее надо добавить новый пост к другим записям
$posts= TPosts::Instance();
$posts->Add($post)
//это все - пост добавлен;

Если хочется отредактировать существующий пост, то это следует делать следующим образом:


$id = 1;//необходимо знать id поста для редактирования
$post = TPost::Instance($id); //получаем обект с полным содержанием поста
$post->title = 'Новый заголовок';
//  .. меняем другие свойства
$posts = TPosts::Instance();
$posts->Edit($post); //сохранить сделанные изменения

Сохранять можно также и прямым путем, через метод Save(), но я не рекомендую его использовать, если вы только начинаете изучать блоголёт, так как этот метод сохранить изменения в записи, но без изменений в всем остальном, в том числе без цепочки событий настроенных на редактирование записи.

Также следует рассказать, как добавить новый коммент. Вообще же говоря все примеры можно найти в installerclass.php - там по умолчанию создаются пост, меню, комментарий. И так комментарий:


$post = TPost::Instance($id); //надо знать id записи, куда добавлять комментарий
//вначале надо задать автора
    $users = TCommentUsers::Instance();
    $userid = $users->Add('Имя комментатора', 'email@domain.com', 'http://litepublisher.com/');

<pre><code>$CommentManager = &amp;TCommentManager::Instance();
$CommentManager-&gt;AddToPost($post, $userid,'текс комментария');

Сейчас вот написал пример и призадумался - что то как то слишком сложно, сейчас объеденю все это в одну функцию для TCommentManager - в следующей версии уже будет, а назову как я новый метод Add. Чтобы редактировать комментарий, необходимо знать, что редактируется: собственно текст комментария, или информация об авторе. Если автор - то для этого есть класс TCommentUsers, с которым необходимо работать. Если текст комментария, то для этого надо знать id комментария. Вот пример редакции:


$comment = TComments::GetComment($postid, $id);
//альтернативный способ:
//$CommentManager = TCommentManager::Instance();
//$comment =  $CommentManager->Getcomment($id);
//независимо от спсоба мы имеем комментарий, с которым можно делать желаемое
$comment->content = 'Новый текст комментария';
$comment->Save(); //не забыть после этого очистить кеш, чтобы результат был виден

Класс TComment предназначен прежде всего для получения информации о комментарии, например для вывода списка, где удобно управлять при помощи этого класса. Если же требуется массовое редактирование комментариев, то для этого есть класс TComments, чтобы получить комментарии для записи, следует написать одну строку:


$comments = $post->comments; //где $post уже ранее был создан