使用官方JS SDK(推荐,功能更强大)
这种方法可以获取到用户授权,实现“登录微博、分享内容、带图片”等更高级的功能,它适用于需要深度集成微博分享的场景。

(图片来源网络,侵删)
第一步:申请成为新浪微博开发者
- 访问 新浪微博开放平台。
- 使用你的微博账号登录,并创建一个新的应用,选择应用类型为“网站应用”。
- 填写应用信息,包括应用名称、应用网站等。
- 创建成功后,在应用详情页的“基本信息”中,你可以找到 App Key 和 App Secret,这两个是后续开发必需的。
- 在应用设置中,设置你的“授权回调页”和“应用首页”,可以都填写你的网站域名。
第二步:在织梦模板中引入JS SDK
你需要在你希望显示分享按钮的模板文件中(通常是 article_article.htm 文章详情页),引入官方的JS SDK。
在模板文件的 <head> 标签内或 <body> 标签结束前,添加以下代码:
<!-- 引入微博JS SDK -->
<script>
// 此处填写你在开放平台申请到的App Key
var wb_wid = "你的App_Key";
(function (d, s, id) {
var js, ojs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "https://tjs.sinaimg.cn/open/api/js/wb.js";
ojs.parentNode.insertBefore(js, ojs);
}(document, "script", "wbjs"));
</script>
注意: 将 "你的App_Key" 替换为你自己申请到的App Key。
第三步:在模板中添加分享按钮和分享内容
在你需要显示分享按钮的位置(例如文章标题下方、内容底部),添加HTML代码。

(图片来源网络,侵删)
示例代码:
<!-- 使用wb:sharebutton标签创建分享按钮 -->
<div>
<wb:sharebutton type="button" title="{dede:field.title/}" pic="{dede:field.litpic/}" appkey="你的App_Key" ralateUid="你的微博UID"></wb:sharebutton>
</div>
<!-- 或者,使用更灵活的wb:share标签 -->
<div>
<wb:share appkey="你的App_Key" ralateUid="你的微博UID" type="3" size="middle" pic="{dede:field.litpic/}" language="zh_cn">
分享到微博
</wb:share>
</div>
代码解释:
wb:sharebutton或wb:share:这是微博官方提供的分享组件标签。type="button":按钮类型,可以是button,icon,number等。"{dede:field.title/}"`:分享的标题,这里使用了织梦的文章标题字段。pic="{dede:field.litpic/}":分享的图片地址,这里使用了织梦的文章缩略图字段。注意: 如果文章没有缩略图,这个字段可能为空,分享时可能不会显示图片。appkey="你的App_Key":再次填写你的App Key。ralateUid="你的微博UID":可选,分享后会在你的微博主页中显示相关微博。type="3":表示图文分享,size="middle"表示按钮大小。
第四步:确保织梦字段正确
- :确保文章详情页模板中使用了
{dede:field.title/}来显示标题。 - 文章缩略图:确保文章详情页模板中使用了
{dede:field.litpic/}来获取缩略图,你在发布文章时,已经上传了缩略图,如果文章没有缩略图,你可能需要添加判断,或者提供一个默认图片。
示例:带默认图片的分享代码
<div>
<wb:sharebutton type="button" title="{dede:field.title/}"
pic="{dede:field name='litpic' function='(@me ? @me : "/images/default-share.jpg")'}"
appkey="你的App_Key">
</wb:sharebutton>
</div>
这里使用了织梦的function属性,如果litpic为空,则使用一个默认的分享图片路径 /images/default-share.jpg。

(图片来源网络,侵删)
使用简单的分享链接(快速实现)
这种方法不需要申请App Key,直接生成一个分享链接,用户点击后会跳转到微博的分享页面,手动填写内容后发布,非常简单,但功能有限。
第一步:构造分享URL
新浪微博的分享URL格式如下:
https://service.weibo.com/share/share.php?url=[分享页的URL]&title=[分享标题]&pic=[分享图片的URL]&appkey=[你的App_Key(可选)]
第二步:在织梦模板中添加分享按钮
在文章详情页模板(article_article.htm)中,添加一个普通的 <a> 链接,并使用织梦的[field]标签动态填充URL、标题和图片。
示例代码:
<div>
<a href="https://service.weibo.com/share/share.php?url={dede:global.cfg_basehost/}{dede:field.arcurl/}&title={dede:field.title/}&pic={dede:field.litpic/}" target="_blank" class="weibo-share-btn">
<img src="/images/weibo-icon.png" alt="分享到新浪微博" />
</a>
</div>
代码解释:
href="...":这是核心的分享链接。url={dede:global.cfg_basehost/}{dede:field.arcurl/}:{dede:global.cfg_basehost/}:获取你网站的基础域名,如https://www.yourdomain.com。{dede:field.arcurl/}:获取当前文章的URL路径。- 两者拼接起来就是完整的文章地址。{dede:field.title/}`:分享的标题,使用文章标题。
pic={dede:field.litpic/}:分享的图片URL,使用文章缩略图。target="_blank":在新窗口中打开分享页面。<img src="...">:这里用一个微博的图标作为按钮,你也可以用文字按钮,如<span>分享到微博</span>。
注意:
- 同样,如果文章没有缩略图,
pic参数可能无效,你可以用与方法一类似的function处理来提供一个默认图片。 - 这种方式无法实现自动登录和一键分享,用户体验稍差。
总结与对比
| 特性 | 官方JS SDK | 分享链接 |
|---|---|---|
| 申请App Key | 必须 | 可选 |
| 功能 | 强大,支持授权、一键分享、带图文等 | 基础,跳转到分享页面手动填写 |
| 用户体验 | 优秀,集成度高,无缝衔接 | 一般,需要手动操作 |
| 实现复杂度 | 较高,需要申请和配置 | 非常简单,直接修改模板 |
| 推荐场景 | 商业网站、对分享体验要求高的站点 | 个人博客、快速实现、功能要求不高的站点 |
建议: 对于大多数网站,特别是商业性质的网站,强烈推荐使用方法一(官方JS SDK),虽然前期配置麻烦一点,但带来的用户体验和功能扩展性是完全值得的,对于简单的个人博客或测试,方法二是一个快速可行的选择。
希望这份详细的教程能帮助你在织梦CMS中成功实现新浪微博分享功能!
