Archive for the ‘Products’ Category

Mass Post Manager Updated

Wednesday, May 16th, 2007

I’m pleased to announce update of wordpress plugin Mass Post ManagerThis plugin allow to do the following things:

  • Delete all posts and/or commentsOF selected state
  • Move all posts from one category to another

UPDATE: Now you may delete all unapproved/spam comments (i e spam) in one click. Very useful if your blog full of pending junk!More details available here

Popularity: 15% [?]

How to post remotely to blogger.com - Working PHP Example

Thursday, May 3rd, 2007

Recently i met curious problem – how to make remote post to blogger.com.

This task was really trivial before Google implemented their complex authentication mechanisms. After spending 3 hours to debug things i made simple solution which is working fine for me.

All code was written and based on GData API .

I will not comment my code below – you must easily inderstand it yourself:

  • $arr – array to post ( indexes – title, subtitle, body, d_date, etc)
  • $blog – external blog parameters. $blog['xmlrpc'] – XML RPC URL of your blogger blog to post to (see link above)

Here we go:

$entry .= “\r\n”;
$entry .= ““;
$entry .= ”

” . date(”c”, strtotime($arr['d_date'])) . ““;
<![CDATA[{$arr['title']}]]> $entry .= “”;

if( $arr['category'] ) {
$entry .= ““;
}

if( $arr['body'] ) {
$entry .= ““;
$entry .= ““;
$entry .= “
“;
if( $arr['subtitle'] ) {
$entry .= ““;
$entry .= ““;
$entry .= “
“;
}
}elseif( $arr['subtitle'] ) {
$entry .= ““;
$entry .= ““;
$entry .= “
“;
}
if( $arr['author'] ) {
$entry .= ““;
$entry .= “{$arr['author']}“;
$entry .= “
“;
}
$entry .= “”;

if( ! $this->blog_token[$this->blog_id]['Auth'] )
{
// AUTHENTICATE WITH GOOGLE !!!
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, “https://www.google.com/accounts/ClientLogin” );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 4);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, “Email={$blog['auth_login']}&Passwd={$blog['auth_pwd']}&service=blogger&source=Nst-Nst-4.0″);
curl_setopt($ch, CURLOPT_POST, true);

$this->client->auth = curl_exec($ch);

if (curl_errno($ch)) {
$this->ret = curl_error($ch);
break;
} else {
curl_close($ch);
$this->ret = 0;

if( strpos( $this->client->auth, ‘Auth=’) == false) {
$this->ret = 1;
$this->clent->error = “Google Unauthorized”;
break;
}
preg_match_all(’!(\S+)=(\S+)!msi’, $this->client->auth, $o, PREG_SET_ORDER);
for($_i=0; $_i
$this->blog_token[$this->blog_id][$o[$_i][1]] = $o[$_i][2];
}
}
}

$ch = curl_init();

$headers = array( “Authorization: GoogleLogin Auth={$this->blog_token[$this->blog_id]['Auth']}”, “Content-type: application/atom+xml” );
curl_setopt($ch, CURLOPT_URL, $blog['xmlrpc']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 4);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_UNRESTRICTED_AUTH, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $entry);
curl_setopt($ch, CURLOPT_POST, true);

$this->client->message = curl_exec($ch);

if (curl_errno($ch)) {
$this->ret = curl_error($ch);
} else {
curl_close($ch);
$this->ret = 0;
}

Popularity: 28% [?]

Mass Post Manager Plugin for Wordpress released

Monday, April 30th, 2007

I’m pleased to announce my new wordpress plugin Mass Post Manager

This plugin allow to do the following things:

  • Delete all posts and/or comments in selected category
  • Move all posts from one category to another

Plugin was developed for may needs so its functionality is quite limited right now. Рowever i plan to add more and more features upon request.

More details available here

Popularity: 18% [?]