如何在Discord欢迎消息中添加可跳转至其他频道的按钮
实现Discord欢迎消息添加跳转频道按钮的方法
前置要求
- 确保你使用的
discord.py版本 >= 2.0,低版本不支持消息组件功能,可执行以下命令更新:pip install -U discord.py - 提前复制好要跳转的目标频道链接:右键目标频道 -> 复制频道链接即可
实现代码
首先导入需要的UI组件:
import discord from discord.ui import Button, View
修改你的on_member_join事件代码如下:
@client.event async def on_member_join(member): # 欢迎消息发送的频道,替换为你实际的欢迎频道ID welcome_channel = client.get_channel(channelID) # 构造跳转按钮:style设为link类型,url填你提前复制的目标频道链接,label是按钮显示的文字 jump_button = Button( label="跳转至指定频道", style=discord.ButtonStyle.link, url="你复制的目标频道完整链接" ) # 构造视图容器,把按钮添加进去 view = View() view.add_item(jump_button) # 发送欢迎消息,携带视图组件 await welcome_channel.send(f'Hello {member.mention} 欢迎加入服务器!', view=view)
注意事项
- 链接类型的按钮不需要额外写回调函数,跳转逻辑由Discord原生处理
- 请确保目标频道对新成员开放了可见权限,否则用户点击按钮后会提示无权限访问频道
- 请确保机器人在欢迎频道拥有
发送消息、嵌入链接相关权限
内容的提问来源于stack exchange,提问作者Dmitriy
相关产品推荐
相关产品推荐

