Geliştirici Kılavuzu: PHP

Blogger Data API, istemci uygulamaların Blogger içeriğini Google Veri API'sı feed'leri biçiminde görüntülemesine ve güncellemesine olanak tanır.

İstemci uygulamanız, yeni blog yayınları oluşturmak, mevcut blog yayınlarını düzenlemek veya silmek ve belirli ölçütlerle eşleşen blog yayınlarını sorgulamak için Blogger Data API'yi kullanabilir.

Bu dokümanda, Blogger Data API'nin özellikleri hakkında biraz arka planın yanı sıra Zend Google Data API istemci kitaplığının kullanıldığı temel Data API etkileşimlerine dair örnekler verilmiştir. Kitaplığın kullandığı temel protokol hakkında daha fazla bilgi edinmek istiyorsanız bu geliştirici kılavuzunun Protokol bölümünü inceleyin.

İçindekiler

Kitle

Bu doküman, Blogger ile etkileşimde bulunabilecek PHP istemci uygulamaları yazmak isteyen programcılar için hazırlanmıştır.

Bu belgede, Google Veri API'leri protokolünün temelini oluşturan genel fikirleri anladığınız varsayılır.

İstemci kitaplığı tarafından sağlanan sınıflar ve yöntemler hakkında referans bilgileri için PHP istemci kitaplığı API referansına bakın. Blogger Data API ile ilgili genel referans bilgileri için Protokol referans kılavuzuna göz atın.

Başlarken

İstemci kitaplığını oluşturma konusunda yardım almak için Başlangıç Kılavuzu'na bakın.

Zend istemci kitaplığı için PHP 5.1.4 veya sonraki sürümler gerekir. Zend Framework kapsamında ve ayrı olarak indirilebilir. Blogger ile etkileşim kurmak için istemci kitaplığının 1.0.0 veya sonraki bir sürümünü kullanın.

Blogger hesabı oluşturma

Test amacıyla bir Blogger hesabına kaydolmak isteyebilirsiniz. Blogger Google Hesaplarını kullanır. Dolayısıyla, zaten bir Google hesabınız varsa hazırsınız demektir.

Örnek kodu çalıştırma

Bu belgede gösterilen tüm örnek kodları içeren, eksiksiz çalışan bir örnek istemci Zend Framework SVN deposunda bulunmaktadır. Örnek şu konumda bulunmaktadır: /framework/standard/trunk/demos/Zend/Gdata/Blogger.php. Örnekte, bu dokümanda açıklanan tüm işlevler yer almaktadır. Yalnızca komut satırından çalıştırılabilir:

php Blogger.php -- --user=[email_address] --pass=[password]

Bu örneği çalıştırmadan veya Zend Çerçevesini kullanarak kendi kodunuzu geliştirmeden önce include_path öğesini ayarlayıp uygun sınıfları yüklemeniz gerekebilir. Dahil etme yolu, bir php.ini ayarı ya da set_include_path yöntemi kullanılarak ayarlanabilir. Bu kod, temel Zend_Gdata sınıfına, Zend_Gdata_Query sınıfına ve Zend_Gdata_ClientLogin kimlik doğrulama sınıfına erişim ister.

require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_Query');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');

Sihirli belirleyicileri ve belirleyicileri kullanma

PHP istemci kitaplığının geneline, geliştiricilerin rahatlığı sağlamak amacıyla sihirli setter'lar/alıcılar için destek eklendi. Bunlar, geleneksel setter/alıcı yöntemleri kullanılarak veya özelliklere erişerek bir sınıfın özelliklerine güvenli bir şekilde erişilmesine olanak tanır. Örneğin, $gdataObject bu kitaplıktaki bir nesnenin örneğiyse aşağıdaki iki kod satırı benzer etkilere sahip olur:

$gdataObject->setFoo("bar");
$gdataObject->foo = "bar";

Benzer şekilde, şu iki kod satırı da aynı etkilere sahiptir:

$baz = $gdataObject->getFoo();
$baz = $gdataObject->foo;

Benzer şekilde, sihirli fabrika yöntemleri yeni nesnelerin tanımlanmasını kolaylaştırır. Zend adlandırma kuralının gerektirdiği uzun sınıf adlarını hatırlamak yerine, bir Zend hizmet istemcisinde newObject(); yöntemini çağırarak yeni bir object oluşturabilirsiniz. Örneğin, aşağıdaki iki snippet'in her ikisi de yeni bir draft uzantı nesnesi bildirir. drafts hakkında daha fazla bilgiyi yayın oluşturma bölümünde bulabilirsiniz.

// Traditional instantiation
$gdClient = new Zend_Gdata();
$draft = new Zend_Gdata_App_Extension_Draft();

// Magic factory instantiation
$gdClient = new Zend_Gdata();
$draft = $gdClient->newDraft();

Sihirli belirleyiciler/alıcılar ve fabrikalar isteğe bağlıdır. Bu nedenle, size en uygun yaklaşımı kullanın.

Diğer kaynaklar

Zend Çerçevesi'nin Google Veri API'leri bileşeni (Zend_Gdata) için diğer kaynaklar:

Blogger hizmeti için kimlik doğrulama

Blogger Veri API'sını kullanarak hem genel hem de özel yayınlara erişebilirsiniz. Herkese açık feed'ler herhangi bir kimlik doğrulaması gerektirmez ancak salt okunurdur. Blogları değiştirmek istiyorsanız özel feed'ler istemeden önce müşterinizin kimlik doğrulaması yapması gerekir. Şu üç yaklaşımdan birini kullanarak kimlik doğrulaması yapabilir: OAuth kimlik doğrulaması, AuthSub proxy kimlik doğrulaması veya ClientLogin kullanıcı adı/şifre kimlik doğrulaması.

Genel olarak Google Veri API'leriyle kimlik doğrulama hakkında daha fazla bilgi edinmek için kimlik doğrulama belgelerine bakın.

Bu belgenin sonraki bölümlerindeki örneklerin çoğu, $gdClient adında kimliği doğrulanmış bir istemci nesnenizin olduğunu varsayar.

OAuth kimlik doğrulaması

Zend PHP GData kitaplığını kullanarak OAuth kimlik doğrulaması hakkındaki dokümanlar için Google Veri Protokolü İstemci Kitaplıklarında OAuth bölümüne göz atın.

AuthSub proxy kimlik doğrulaması

AuthSub proxy kimlik doğrulaması, kullanıcılarının kimliklerini Google Hesaplarında doğrulaması gereken web uygulamaları tarafından kullanılır. Web sitesi operatörü ve istemci kodunun Blogger kullanıcısının kullanıcı adı ve şifresine erişimi yoktur. Bunun yerine istemci, istemcinin belirli bir kullanıcı adına işlem yapmasına olanak tanıyan özel AuthSub jetonları alır. Daha ayrıntılı bilgi için AuthSub dokümanlarına bakın.

Bir kullanıcı, uygulamanızı ilk kez ziyaret ettiğinde henüz kimliği doğrulanmamıştır. Bu durumda, bloglarına erişim isteğinizin kimliğini doğrulamak için bazı bilgiler ve kullanıcıyı bir Google sayfasına yönlendiren bir bağlantı görüntülemeniz gerekir. Zend istemci kitaplığı, Google sayfasının URL'sini oluşturmak için bir işlev sağlar. Aşağıdaki kod, AuthSubRequest sayfasının URL'sini alır:

function getAuthSubUrl()
{
  $next = getCurrentUrl();
  $scope = 'http://www.google.com/blogger/feeds/';
  $secure = false;
  $session = true;
  return Zend_Gdata_AuthSub::getAuthSubTokenUri($next, $scope, $secure, $session);
}

$authSubUrl = getAuthSubUrl();
echo '<a href=\"$authSubUrl\">login to your Google account</a>';

getAuthSubTokenUri yöntemi aşağıdaki parametreleri alır (AuthSubRequest işleyicisi tarafından kullanılan sorgu parametrelerine karşılık gelir):

sonraki
Google'ın, kimlik doğrulama işleminden sonra kullanıcıyı yönlendirmesi gereken sayfanın URL'si.
kapsam
Uygulamanın Blogger feed'lerine erişmek için jeton istediğini gösterir. Kullanılacak kapsam dizesi http://www.blogger.com/feeds/ şeklindedir (tabii ki URL olarak kodlanmış).
güvenli
İstemcinin güvenli bir jeton isteyip istemediğini gösterir.
oturum sayısı
Döndürülen jetonun, çok kullanımlık (oturum) jetonuyla değiştirilip değiştirilemeyeceğini gösterir.

Yukarıdaki örnek, güvenli jeton istemeyen bir çağrıyı gösterir (secure öğesinin değeri false). Sonuçta elde edilen istek URL'si şöyle görünebilir:

https://www.google.com/accounts/AuthSubRequest?scope=http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F&session=1&secure=0&next=http%3A%2F%2Fwww.example.com%2Fwelcome.php

Kullanıcı, Google sitesinin bağlantısını izler ve Google Hesabının kimliğini doğrular.

Kullanıcı kimliğini doğruladıktan sonra, AuthSub sistemi kullanıcıyı AuthSubRequest URL'sinin next sorgu parametresinde belirttiğiniz URL'ye yönlendirir. AuthSub sistemi bu URL'ye, token sorgu parametresinin değeri olarak bir kimlik doğrulama jetonu ekler. Örneğin:

http://www.example.com/welcome.php?token=yourAuthToken

Jeton değerini $_GET['token'] kullanarak alabilirsiniz.

Bu jeton değeri, tek kullanımlık bir AuthSub jetonunu temsil eder. Bu örnekte, $session = true belirtildiğinden, bu jeton AuthSubSessionToken hizmetini çağıran Zend_Gdata_AuthSub::getAuthSubSessionToken yöntemi kullanılarak AuthSub oturum jetonuyla değiştirilebilir:

if(! isset($_SESSION['sessionToken']) && isset($_GET['token'])) {
  $_SESSION['sessionToken'] =
      Zend_Gdata_AuthSub::getAuthSubSessionToken($_GET['token']);
}

Kod snippet'i öncelikle bir AuthSub oturum jetonunun mevcut olup olmadığını kontrol eder. Etkin değilse ancak URL'de tek kullanımlık jeton belirtilmişse kod snippet'i tek kullanımlık jetonu getAuthSubSessionToken yöntemine iletir ve AuthSub arayüzü bir oturum jetonu döndürür. Daha sonra kod, oturum jetonu değerini $_SESSION['sessionToken'] oturum değişkenine yerleştirir.

Böylece uygulamanız, Blogger ile sonraki etkileşimlerinde oturum jetonu değerini kullanabilir. AuthSub kimlik bilgilerini eklemek üzere Authorization üst bilgisi ön ayarına sahip bir Zend_Http_Client nesnesini almak için Zend_Gdata_AuthSub::getHttpClient yöntemini kullanabilirsiniz:

$client = Zend_Gdata_AuthSub::getHttpClient($_SESSION['sessionToken']);

ClientLogin kullanıcı adı/şifre doğrulaması

İstemciniz bağımsız, tek kullanıcılı "yüklü" bir istemciyse (masaüstü uygulaması gibi) ClientLogin kimlik doğrulamasını kullanın.

Aşağıdaki kod, ClientLogin hizmetine istek gerçekleştirmek, kimlik doğrulama jetonu almak ve uygun kimlik doğrulama başlığına sahip bir Zend_Http_Client nesnesi oluşturmak için Zend_Gdata_ClientLogin::getHttpClient yöntemini kullanır. Daha sonra, bu yöntemin döndürdüğü HttpClient, Zend_Gdata hizmet nesnesini oluşturmak için kullanılır.

$accountType öğesinin açıkça GOOGLE olarak ayarlandığına dikkat edin. Bu parametrenin ayarlanmaması G Suite kullanıcılarının Blogger API'yi başarılı bir şekilde kullanmasını engeller.

$user = 'user@example.com';
$pass = 'secretPasswd';
$service = 'blogger';

$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service, null,
        Zend_Gdata_ClientLogin::DEFAULT_SOURCE, null, null,
        Zend_Gdata_ClientLogin::CLIENTLOGIN_URI, 'GOOGLE');
$gdClient = new Zend_Gdata($client);

Örnek istekler ve yanıtlar da dahil olmak üzere ClientLogin kimlik doğrulaması hakkında daha fazla bilgi edinmek için Yüklü Uygulamalar İçin Kimlik Doğrulaması dokümanlarına bakın.

Not: Belirli bir oturumdaki tüm istekler için aynı jetonu kullanın; her Blogger isteği için yeni bir jeton almayın.

Not: ClientLogin belgelerinde açıklandığı gibi, kimlik doğrulama isteği başarısız olabilir ve bir CAPTCHA sorgulaması isteğinde bulunabilir. Google'ın CAPTCHA testini göndermesini ve işlemesini istiyorsanız kullanıcıyı, ClientLogin belgelerinde belirtilen CAPTCHA işleme URL'si yerine https://www.google.com/accounts/DisplayUnlockCaptcha?service=blogger adresine gönderin.

Blog listesi alınıyor

Blogger Data API, belirli bir kullanıcının bloglarını listeleyen bir özet akışı sağlar. Bu özet akışı, "meta feed" olarak bilinir.

Aşağıdaki örnek kod, meta feed'i almak için kimliği doğrulanmış bir $gdClient nesnesi kullanır ve ardından her blogun başlığını yazdırır.

Sorgu URL'sinin oluşturulmasıyla Zend_Gdata_Query sınıfı ilgilenir. Bu durumda başka bir işlem yapılması gerekmez ancak Query sınıfının faydası, bu belgenin yayınları sorgu parametrelerine göre alma bölümünde görünecektir.

function printAllBlogs()
{
  $query = new Zend_Gdata_Query('http://www.blogger.com/feeds/default/blogs');
  $feed = $gdClient->getFeed($query);
  printFeed($feed);
}

function printFeed($feed)
{
  $i = 0;
  foreach($feed->entries as $entry) {
    print $i ." ". $entry->title->text . "\n";
    $i++;
  }
}

getFeed yönteminin kullandığı URL'yi not edin. Bu, varsayılan meta feed URL'sidir. Kimliği doğrulanmış geçerli kullanıcı için blog listesini döndürür. Farklı bir kullanıcının feed'ine erişmek için meta feed URL'sindeki default yerine kullanıcı kimliğini ekleyebilirsiniz. Kullanıcı kimliği, kullanıcının profil URL'sinin sonundaki haneden oluşan dizedir.

Aşağıdaki kod snippet'i, feed'den bir blog kimliğinin nasıl çıkarılacağını gösterir. Yayınlar ve yorumlarda oluşturma, güncelleme ve silme işlemleri gerçekleştirmek için blog kimliğine ihtiyacınız vardır. $index değişkeni, kullanıcının blog feed'inde hangi blogun kullanıldığını temsil eder. id alanı tag:blogger.com,1999:user-userID.blog-blogID biçimini alır. Bu nedenle "-" karakterindeki bir split, blog kimliğini elde edilen dizinin son öğesine yerleştirir.

$idText = split('-', $feed->entries[$index]->id->text);
$blogID = $idText[2];

Yayın oluşturma

Blogger Data API, yeni blog girişleri oluşturmanıza ve yayınlamanıza, ayrıca giriş taslakları oluşturmanıza olanak tanır.

Not: Yayınlar için özel yazar ayarlama şu anda desteklenmemektedir. Tüm yeni yayınlar, kimliği doğrulanmış kullanıcı tarafından oluşturulmuş gibi görünür.

Blog yayını paylaşma

Yeni blog girişleri yayınlamak için PHP istemci kitaplığını kullanabilirsiniz.

Öncelikle blog yayınını temsil edecek bir giriş örneği oluşturun. Ardından blog yayınının başlığını, içeriğini ve diğer özelliklerini ayarlayabilirsiniz. Son olarak, gönderi eklemek için insertEntry yöntemini çağırın. Burada, yeni Zend_Gdata_Entry, Zend_Gdata_App_Extension_Title ve Zend_Gdata_App_Extension_Content nesneleriyle çalışan sihirli fabrika örneklendirmelerini görebilirsiniz.

function createPublishedPost($title='Hello, world!', $content='I am blogging on the internet.')
{
  $uri = 'http://www.blogger.com/feeds/' . $blogID . '/posts/default';
  $entry = $gdClient->newEntry();
  $entry->title = $gdClient->newTitle($title);
  $entry->content = $gdClient->newContent($content);
  $entry->content->setType('text');

  $createdPost = $gdClient->insertEntry($entry, $uri);
  $idText = split('-', $createdPost->id->text);
  $newPostID = $idText[2];

  return $newPostID;
}

Taslak blog yayını oluşturma

Taslak yayınlar, herkese açık yayınlarla aynı şekilde oluşturulur ancak giriş nesnesinin taslak özelliğini ayarlamanız gerekir. Vurgulanmış satırları ekleyerek yukarıdaki gibi bir taslak olarak blog yayını oluşturabilirsiniz:

function createDraftPost($title='Salutations, world!', $content='Hmm ... not quite right, must rework the title later.')
{
  $uri = 'http://www.blogger.com/feeds/' . $blogID . '/posts/default';
  $entry = $gdClient->newEntry();

  $entry->title = $gdClient->newTitle(trim($title));
  $entry->content = $gdClient->newContent($content);
  $entry->content->setType('text');

  $control = $gdClient->newControl();
  $draft = $gdClient->newDraft('yes');
  $control->setDraft($draft);
  $entry->control = $control;

  $createdPost = $gdClient->insertEntry($entry, $uri);
  $idText = split('-', $createdPost->id->text);
  return $idText[2];
}

Bir yayının başlığını veya içeriğini ayarlamakla aynı şekilde yeni Zend_Gdata_App_Extension_Control ve Zend_Gdata_App_Extension_Draft nesneleri oluşturur ve bunları girişin kontrol özelliğine atarsınız.

Mevcut bir taslak blog yayınını yayınlanmış bir yayına dönüştürmek için taslak yayını alıp taslak özelliğini no olarak ayarlayabilir ve ardından yayını güncelleyebilirsiniz. Sonraki iki bölümde, yayınları alma ve güncelleme konusunu ele alacağız.

Yayınlar alınıyor

Aşağıdaki bölümlerde, sorgu parametreleri olan ve olmayan blog yayınları listesinin nasıl alınacağı açıklanmaktadır.

Blogger genel özet akışını kimlik doğrulaması olmadan sorgulayabilirsiniz. Bu nedenle, herkese açık bir blogdan yayın almadan önce kimlik bilgileri ayarlamanız veya AuthSub kimlik doğrulaması yapmanız gerekmez.

Tüm blog yayınları alınıyor

Kullanıcının yayınlarını almak için blog meta feed'ini alırken kullanılan getFeed yöntemini çağırın, ancak bu sefer blog-yayını feed URL'sini gönderin:

function printAllPosts($gdClient, $blogID)
{
  $query = new Zend_Gdata_Query('http://www.blogger.com/feeds/' . $blogID . '/posts/default');
  $feed = $gdClient->getFeed($query);
  printFeed($feed);
}

Sorgu parametrelerini kullanarak yayınları alma

Blogger Data API, belirtilen ölçütlere uyan bir dizi giriş isteğinde bulunmanıza olanak tanır (ör. belirli bir tarih aralığında yayınlanmış veya güncellenmiş blog yayınlarını talep etme). Bunun için bir sorgu nesnesi oluşturur ve bunu getFeed yöntemine geçirirsiniz.

Örneğin, tarih aralığı sorgusu göndermek için sorgu nesnesinin published-min ve published-max parametrelerini ayarlayın. Aşağıdaki kod snippet'i, belirtilen başlangıç zamanı ile bitiş zamanı arasında yayınlanan her blog yayınının başlığını ve içeriğini yazdırır:

function printPostsInDateRange($gdClient, $blogID, $startDate='2007-04-01', $endDate='2007-04-25')
{
  $query = new Zend_Gdata_Query('http://www.blogger.com/feeds/' . $blogID . '/posts/default');
  $query->setParam('published-min', $startDate);
  $query->setParam('published-max', $endDate);

  $feed = $gdClient->getFeed($query);
  printFeed($feed);
}

getQueryUrl(), Zend_Gdata_Query sınıfı için kullanışlı bir hata ayıklama yöntemidir. Bu yöntem, oluşturulan kodlanmış URL'yi gösterir.

Not: Şu anda published-min ve published-max sorgu parametreleri için sihirli belirleyici yoktur. Ancak setStartIndex ve setMaxResults kullanabilirsiniz.

Blogger Data API, aşağıdaki sorgu parametrelerini destekler:

kategoriler
Feed sonuçlarını filtrelemek için kategorileri (etiket olarak da bilinir) belirtir. Örneğin, http://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie, hem Fritz hem de Laurie etiketlerine sahip girişleri döndürür.
max-results
Döndürülecek maksimum giriş sayısı.
yayınlanan-minimum, yayınlanmış-maks.
Girişlerin yayınlanma tarihleriyle ilgili sınırlar
start-index
Alınacak ilk sonucun 1 tabanlı dizini (sayfalara ayırma için).

Sorgu parametreleri hakkında daha fazla bilgi için Blogger Data API Başvuru Kılavuzu'na ve Google Veri API'leri Başvuru Kılavuzu'na bakın.

Yayınlar güncelleniyor

Mevcut bir blog yayınını güncellemek için önce güncellemek istediğiniz girişi alır, ardından bu girişi değiştirirsiniz ve save yöntemini kullanarak Blogger'a gönderirsiniz. Aşağıdaki kod snippet'i, girişi sunucudan zaten aldığınızı varsayarak blog girişinin başlığını ve içeriğini değiştirir.

public function updatePost($postID, $updatedTitle='Hello, World?',
                           $updatedContent='UPDATE: Still blogging',
                           $isDraft=False)
{
  $query = new Zend_Gdata_Query('http://www.blogger.com/feeds/' . $blogID . '/posts/default/' . $postID);
  $postToUpdate = $dClient->getEntry($query);
  $postToUpdate->title->text = $this->gdClient->newTitle($updatedTitle);
  $postToUpdate->content->text = $this->gdClient->newContent($updatedContent);

  if ($isDraft) {
    $draft = $gdClient->newDraft('yes');
  } else {
    $draft = $gdClient->newDraft('no');
  }

  $control = $gdClient->newControl();
  $control->setDraft($draft);
  $postToUpdate->control = $control;

  $updatedPost = $postToUpdate->save();
  return $updatedPost;
}

Not: Yayınlarla ilişkili yazar verilerinin değiştirilmesi şu anda desteklenmemektedir.

Yayınlar siliniyor

Bir yayını silmek için yayının düzenleme URL'sini $gdClient nesnenizde şu şekilde delete yöntemine iletin:

public function deletePost($gdClient, $blogID, $postID)
{
  $uri = 'http://www.blogger.com/feeds/' . $blogID . '/posts/default/' . $postID;
  $gdClient->delete($uri);
}

Yorum sayısı

Blogger Data API, yorum oluşturulmasına, alınmasına ve silinmesine olanak tanır. Yorumların güncellenmesi desteklenmez (web arayüzünde de kullanılamaz).

Yorum oluşturma

Yorum yayınlamak için bir giriş nesnesi oluşturun ve bunu aşağıdaki gibi ekleyin:

function createComment($gdClient, $blogID, $postID, $commentText)
{
  $uri = 'http://www.blogger.com/feeds/' . $blogID . '/' . $postID . '/comments/default';

  $newComment = $gdClient->newEntry();
  $newComment->content = $gdClient->newContent($commentText);
  $newComment->content->setType('text');
  $createdComment = $gdClient->insertEntry($newComment, $uri);

  $editLink = split('/', $createdComment->getEditLink()->href);
  $newCommentID = $editLink[8];

  return $newCommentID; 
}

Not: Şu anda yalnızca kimliği doğrulanmış kullanıcıya ait bir bloga yorum gönderebilirsiniz.

Not: Yorumlar için özel yazar ayarlama şu anda desteklenmemektedir. Tüm yeni yorumlar, kimliği doğrulanmış kullanıcı tarafından oluşturulmuş gibi görünür.

Yorum alma

Belirli bir yayına ilişkin yorumları, yayının yorumlar özet akışı URL'sinden alabilirsiniz:

public function printPostComments($gdClient, $blogID, $postID)
{
  $query = new Zend_Gdata_Query('http://www.blogger.com/feeds/' . $blogID . '/' . $postID . '/comments/default');
  $feed = $gdClient->getFeed($query);
  $printFeed($feed);
}

Blogun yorum feed'i URL'sini kullanarak tüm yayınlardaki yorumları alabilirsiniz:

http://www.blogger.com/feeds/blogID/comments/default

Yorumlar siliniyor

Bir yorumu silmek için yorumun düzenleme URL'sini $gdClient nesnenizdeki şu şekilde delete yöntemine iletin:

public function deleteComment($gdClient, $blogID, $postID, $commentID)
{
  $uri = 'http://www.blogger.com/feeds/' . $blogID . '/' . $postID . '/comments/default/' . $commentID;
  $gdClient->delete($uri);
}

Başa dön