簡體   English   中英

如何使用帶有PHP的API在Tumblr中的帖子中添加多個標簽?

[英]How to add multiple tags to a post in Tumblr using the API with PHP?

我正在使用其API在Tumblr上發布。 我可以成功發布一個標簽並將其添加到任何帖子,但是添加多個標簽時遇到了麻煩。

這是他們在其指南中建議的內容:

{
"response": {
"posts": [
     {
        "blog_name": "blogname",

        "type": "text",
        "tags": [
           "tumblrize",
           "milky dog",
           "mini comic"
        ],
        "title": "A title",
        "body": "Some text for the post"
     },
     ...
  ]
 }
}

我在PHP中執行以下操作:

$data = array('title' => 'My Title', 'body' => 'My Content', 'tags' => 'A Single Tag');
$client->createPost($blog_n, $data);

為了使用多個標簽,我編寫了以下代碼:

$data = array('title' => 'My Title', 'body' => 'My Content', 'tags' => array('A', 'Single', 'Tag'));

但這引發了一個例外。

任何人都可以幫助我了解如何發布多個標簽。

這是我得到的例外:

PHP致命錯誤:未捕獲的Tumblr \\ API \\ RequestException:[500]:內部服務器錯誤

扔在/home/freadioc/public_html/socialmedia/tumblr/lib/Tumblr/API/Client.php中

鏈接到文檔

更新

在以下答案中提出建議之后,我使用了以下代碼:

$data = array('title' => 'My Title', 'body' => 'My Content', 'tags' => 'Multiple', 'Tags'));

使用上面的代碼只會在帖子上附加一個標簽,即Multiple 我認為這是因為關聯數組本身具有逗號分隔的值。

這是他們在其指南中建議的內容:

不,不是。 這是您在閱讀帖子信息時可以期望從API 取回的JSON數據結構。 在這種情況下, tags屬性將是標簽數組

你想使一張貼在這里然而,這意味着正確的文檔部分是https://www.tumblr.com/docs/en/api/v2#posting

如您所見,它描述了請求參數tags ,如下所示:

標簽| 字串| 此帖子的逗號分隔標簽

因此,您必須傳遞一個字符串 ,而不是數組


這是我得到的例外:

而且也不是...

不,這不是您所獲得的異常,這是您由於忽略捕獲該異常而導致的致命錯誤。

您應該閱讀有關如何使用try / catch來正確處理異常的信息,以及如何查看它們實際包含的錯誤信息: http : //php.net/manual/zh/language.exceptions.php


編輯:

在以下答案中提出建議之后,我使用了以下代碼:

  $data = array('title' => 'My Title', 'body' => 'My Content', 'tags' => 'Multiple', 'Tags')); 

沒有人建議。

您在這里沒有為鍵tags添加兩個值,而僅添加了一個( Multiple )-然后添加了一個具有值Tags的完全獨立的新數組元素。

一個帶有逗號分隔標簽的字符串就是這樣- 一個string

$helloIAmAString = 'with,comma,separated,tags';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM