Introdução
Precisva gerar posts no meu blog a partir de um gerenciar externo NÃO o do próprio wordpress.
Pré-Requisitos
- Módulo php5-curl
- Módulo instalado noservidor onde está rodando oaplicativo
Para instalar isso no linux com o apt é muito fácil
sudo apt-get install php5-curl
sudo apt-get install php5-xmlrpc
Reinicie o apache e os módulos já estão habilitados
O seu blog deve estar configurado para receber conexões va nas confiurações do wordpress na opção escrita e habiite o XML-RPC
O PHP que cria o Post
function wpPostXMLRPC($title,$body,$rpcurl,$username,$password,$categories=array(18))
{
$categories = implode(",", $categories);
$XML = "$title".
"$categories".
$body;
$params = array('','',$username,$password,$XML,1);
$request = xmlrpc_encode_request('blogger.newPost',$params);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
curl_setopt($ch, CURLOPT_URL, $rpcurl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
curl_exec($ch);
curl_close($ch);
}
Ao executar esta função se tudo der certo será criado um post no seu blog!
Uma dica a variável $rpcurl deve ser o endereço do seu blog/xmlrpc.php caso o blog esteja no diretório raiz! se não estiver coloque o endereo correto OK
Caso aparecer a mensagem:
Call to undefined function xmlrpc_encode_request()
Call to undefined function curl()
significa que você não instalou as 2 extensões necessárias que eu falei antes!
Referência
http://www.nickycakes.com/post-to-wordpress-remotely-with-xmlrpc-in-php/
Não Me faça Pensar - Usabilidade na Web - 2ºed. - 100% colorido
Desenvolvendo Websites com PHP
Gerenciamento de Projetos com dotProject