BITB社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 21|回复: 0

如何在DISCUZ论坛帖子页面加入OG标签?

[复制链接]
  • TA的每日心情
    奋斗
    前天 06:42
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    41

    主题

    18

    回帖

    689

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    689
    发表于 2024-12-21 08:00:18 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x

    在 Discuz! 论坛帖子页面添加 OG (Open Graph) 标签,可以让帖子在社交媒体分享时显示更丰富的信息,提升分享效果。以下是一些方法:

    1. 使用插件:

    这是最简单快捷的方法。Discuz! 应用中心有很多提供 OG 标签功能的插件,例如“Discuz! 帖子OG标签”等。这些插件通常提供友好的后台配置界面,可以方便地设置各种 OG 标签,例如 og:title、og:description、og:image 等。

    • 优点: 安装简单,配置方便,无需修改代码。
    • 缺点: 可能需要付费购买,插件质量参差不齐,需要选择信誉良好的开发者提供的插件。

    使用插件的步骤(以“Discuz! 帖子OG标签”为例,具体步骤可能因插件而异):

    • 登录 Discuz! 后台。
    • 在“应用中心”搜索并安装“Discuz! 帖子OG标签”插件。
    • 启用插件。
    • 进入插件设置页面,配置各项 OG 标签,例如:
      • og:title:帖子标题,通常设置为 {$thread['subject']}。
      • og:description:帖子描述,可以截取帖子内容的前 N 个字,或者使用插件提供的摘要功能。
      • og:image:帖子图片,可以设置为帖子中的第一张图片,或者使用默认的论坛 Logo。
      • og:url:帖子 URL,通常设置为 {eval echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];}。
    • 保存设置。

    2. 手动修改模板文件:

    如果你熟悉 HTML 和 PHP,也可以手动修改模板文件来添加 OG 标签。这种方法更加灵活,可以根据自己的需求进行定制。

    • 优点: 更加灵活,可以完全控制 OG 标签的生成。
    • 缺点: 需要一定的技术基础,修改不当可能会导致论坛出现问题。

    手动修改模板文件的步骤:

    • 使用 FTP 或其他方式连接到你的 Discuz! 论坛服务器。
    • 找到帖子模板文件,通常位于 template/你的模板目录/forum/viewthread.htm。
    • 在 <head> 标签内添加 OG 标签,例如:

    <!-- end list -->

    HTML

    <meta property="og:title" content="{$thread['subject']}" /><meta property="og:description" content="{echo cutstr(strip_tags($postlist[0]['message']), 200);}" /><meta property="og:image" content="{if $postlist[0]['attachments']}{eval $attach = C::t('forum_attachment_n')->fetch_all_by_id('tid:'.$thread['tid'], 'pid:'.$postlist[0]['pid']);if($attach){$attach = array_values($attach);echo 'http://'.$_SERVER['HTTP_HOST'].getforumimg($attach[0]['aid'], 0, 0);}}else{echo '你的默认图片URL';}" /><meta property="og:url" content="{eval echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];}" /><meta property="og:type" content="article" /><meta property="og:site_name" content="{$_G['setting']['bbname']}" />


    • {echo cutstr(strip_tags($postlist[0]['message']), 200);} 用于截取帖子内容的前 200 个字符作为描述。
    • {if $postlist[0]['attachments']} ... {/if} 用于判断帖子是否有附件,如果有则获取第一个附件的图片 URL 作为 og:image,否则使用默认图片。
    • {$_G['setting']['bbname']} 获取论坛名称。

    <!-- end list -->

    • 保存修改后的模板文件。

    注意事项:

    • 在修改模板文件之前,务必备份原始文件,以防修改出错导致论坛出现问题。
    • OG 标签的属性有很多,常用的包括 og:title、og:description、og:image、og:url、og:type、og:site_name 等。你可以根据自己的需求添加其他属性。
      可以使用 Facebook 的 Sharing Debugger (https://developers.facebook.com/tools/debug/) 来测试 OG 标签是否正确设置。

    通过以上方法,你就可以在 Discuz! 论坛帖子页面添加 OG 标签,提升帖子在社交媒体上的分享效果。建议优先使用插件,如果需要更高级的定制,再考虑手动修改模板文件。



    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    网站地图|Archiver|手机版|小黑屋|BITB

    GMT+8, 2025-1-23 03:49 , Processed in 0.015876 second(s), 15 queries , Yac On.

    Powered by BITB © 2023-2033

    世界上最遥远的距离,是星期一到星期五。

    快速回复 返回顶部 返回列表