You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP+Curl实现LinkedIn发帖:如何添加可点击图片与跳转链接

解决LinkedIn帖子同时显示可点击图片与跳转链接的问题

核心解决思路

LinkedIn的ARTICLE类型分享支持自定义封面图+跳转链接的组合,你之前的错误是因为媒体字段的格式不符合ARTICLE类型的要求——不能直接使用图片URN,需要将其嵌套到thumbnails数组中。

正确的JSON请求体结构

构造符合要求的请求体,示例如下:

{
  "author": "urn:li:person:你的个人URN",
  "lifecycleState": "PUBLISHED",
  "specificContent": {
    "com.linkedin.ugc.ShareContent": {
      "shareCommentary": {
        "text": "你的帖子文案"
      },
      "shareMediaCategory": "ARTICLE",
      "media": [
        {
          "status": "READY",
          "description": {
            "text": "图片描述文字"
          },
          "originalUrl": "https://你的目标跳转链接.com",
          "title": {
            "text": "链接标题"
          },
          "thumbnails": [
            {
              "resolvedUrl": "urn:li:digitalmediaAsset:你上传得到的图片URN"
            }
          ]
        }
      ]
    }
  },
  "visibility": {
    "com.linkedin.ugc.MemberNetworkVisibility": "PUBLIC"
  }
}

关键注意点

  • 媒体格式适配:ARTICLE类型的media对象中,必须把图片URN放在thumbnails[0].resolvedUrl字段下,而非直接使用urn字段(那是IMAGE类型的用法)。
  • 状态设置:media对象的status必须设为READY,否则LinkedIn会判定媒体资源未就绪。
  • 权限验证:确保认证令牌包含w_member_social权限,这是发布UGC内容的必要条件。

PHP+Curl请求示例代码

<?php
$accessToken = "你的访问令牌";
$personUrn = "urn:li:person:你的个人ID对应的URN";
$imageUrn = "urn:li:digitalmediaAsset:你上传图片后得到的URN";

$postData = [
    "author" => $personUrn,
    "lifecycleState" => "PUBLISHED",
    "specificContent" => [
        "com.linkedin.ugc.ShareContent" => [
            "shareCommentary" => [
                "text" => "测试带可点击图片与跳转链接的帖子"
            ],
            "shareMediaCategory" => "ARTICLE",
            "media" => [
                [
                    "status" => "READY",
                    "description" => [
                        "text" => "自定义图片描述"
                    ],
                    "originalUrl" => "https://example.com/target-page",
                    "title" => [
                        "text" => "目标页面标题"
                    ],
                    "thumbnails" => [
                        [
                            "resolvedUrl" => $imageUrn
                        ]
                    ]
                ]
            ]
        ]
    ],
    "visibility" => [
        "com.linkedin.ugc.MemberNetworkVisibility" => "PUBLIC"
    ]
];

$ch = curl_init("https://api.linkedin.com/v2/ugcPosts");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer {$accessToken}",
    "Content-Type: application/json",
    "X-Restli-Protocol-Version: 2.0.0"
]);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($postData));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

// 处理并输出响应
var_dump(json_decode($response, true));
?>

常见问题排查

  • 若提示URN无效:检查图片上传后的状态是否为AVAILABLE,上传完成后需等待几秒让LinkedIn处理资源,再使用该URN。
  • 链接无法跳转:确认originalUrl是合法的HTTPS链接,LinkedIn会校验链接有效性。

内容的提问来源于stack exchange,提问作者Andy Wallace

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.06 20:03:09