Como fazer um trackback em PHP
Já vimos o que é um trackback, como ele funciona e como fazer para manda-lo. Agora vamos receber um trackback.
Não podemos nos esquecer do que é importante para nós. Por exemplo, iremos querer ter pelo menos a url do post que fez uma referencia nossa.
Vamos por a mão na massa...
A URL do nosso trackback é:
http://www.seusite.com.br/trackback.php?id=500
No nosso arquivo trackback.php iremos receber toda a requisição, mas o importante é ter o id, pois somente assim saberemos a qual post pertence. No meu caso eu irei cadastrar num banco de dados, numa tabela especifica somente para isso.
Com isso estaremos aptos a receber trackbacks.
Agora é só fazer as referencias no seu blog e aproveitar
Não podemos nos esquecer do que é importante para nós. Por exemplo, iremos querer ter pelo menos a url do post que fez uma referencia nossa.
Vamos por a mão na massa...
A URL do nosso trackback é:
http://www.seusite.com.br/trackback.php?id=500
No nosso arquivo trackback.php iremos receber toda a requisição, mas o importante é ter o id, pois somente assim saberemos a qual post pertence. No meu caso eu irei cadastrar num banco de dados, numa tabela especifica somente para isso.
<?php //Precisamos do id do post e queremos no minimo a url de referencia if (isset($_POST['url']) AND isset($_GET['id'])){ mysql_connect(LOCALHOST,USER,PASSWORD); mysql_select_db(DB); $query ="INSERT INTO `trackback` " ."(`id_blog`, `url`, `title`, `excerpt`, `blog_name`)" ." VALUES (" ."'".addslashes($_GET['id'])."'," ."'".$_POST['url']."'," ."'".$_POST['title']."'," ."'".$_POST['excerpt']."'," ."'".$_POST['blog_name']."'" .")"; $result = mysql_query($query); if ($result){ $errorn = 0; } } else { //caso não tenhamos o que queremos vamos retornar um erro $errorn = 1; $errorm = 'You must include a URL and ID'; } //Crio a resposta do TrackBack seguindo instruções bem claras $xml = '<?xml version="1.0" encoding="iso-8859-1"?>'; $xml .= "\n\t".'<response>'; $xml .= "\n\t\t<error>$errorn</error>"; if ($errorn == 1){ $xml .= "\n\t\t<message>$errorm</message>"; } $xml .= "\n\t".'</response>'; //Mando a resposta para a requisição do trackback, definindo o header como XML... header('Content-Type: text/xml'); echo ($xml); ?>
Com isso estaremos aptos a receber trackbacks.
Agora é só fazer as referencias no seu blog e aproveitar