当前位置: 首页 > news >正文

WordPress通过简码插入bilibili视频

目录

一、前言

二、代码

三、WPCode

3.1、WPCode介绍

3.2、自定义代码到WPCode

3.3、使用简码


发布于:

WordPress通过简码插入bilibili视频 | Eucalyptushttps://blog.eucalyptus.cc/2025/03/25/BILIBILI%E7%AE%80%E7%A0%81/

一、前言

B站是国内非常受欢迎的视频分享平台,上面不仅内容丰富,而且很多视频制作精良、趣味十足。很多人,比如我,就喜欢将B站的视频通过 iframe 嵌入到自己的网页中,但这段代码又长又复杂,字符长度大约有230个,每次使用都很麻烦。为了让大家更方便地在 WordPress 网站中插入B站视频,我准备了一个简单实用的短代码教程,轻松几步就能搞定。

二、代码

将以下代码复制到网站主题的 functions.php 文件末尾即可完成添加。

/** * 添加插入Bilibili视频的短代码 * * @param array $atts 短代码属性数组 * @param string|null $content 短代码内容(未使用) * @return string 返回生成的HTML代码 */ function vbilibili_shortcode( $atts, $content = null ) { // 默认参数值 $defaults = array( 'av' => '', // Bilibili视频的AV号 'bv' => '', // Bilibili视频的BV号 'w' => '100%', // 默认宽度为100% ); // 解析短代码中的参数 $atts = shortcode_atts( $defaults, $atts ); // 如果参数 av 和 bv 都为空,则返回错误信息 if ( empty( $atts['av'] ) && empty( $atts['bv'] ) ) { return '<p>av 和 bv 不可为空</p>'; } // 如果参数 av 和 bv 同时存在,则返回错误信息 if ( ! empty( $atts['av'] ) && ! empty( $atts['bv'] ) ) { return '<p>av 和 bv 不可同时存在</p>'; } // 根据参数 av 或 bv 构建 iframe 的 URL if ( ! empty( $atts['av'] ) ) { $iframe_url = 'https://player.bilibili.com/player.html?aid=' . esc_attr( $atts['av'] ) . '&high_quality=1'; } elseif ( ! empty( $atts['bv'] ) ) { $iframe_url = 'https://player.bilibili.com/player.html?bvid=' . esc_attr( $atts['bv'] ) . '&high_quality=1'; } // 构建 iframe 的 HTML 代码,并直接应用内联样式 $iframe = '<div style="position:relative; padding-bottom:56.25%; height:0; overflow:hidden; margin:0 auto;"><iframe src="' . $iframe_url . '" style="position:absolute; top:0; left:0; width:100%; height:100%;" frameborder="no" scrolling="no" allowfullscreen="allowfullscreen"></iframe></div>'; // 返回 iframe 的 HTML 代码 return $iframe; } add_shortcode( 'vbilibili', 'vbilibili_shortcode' );

将内容嵌入到<iframe>中,并通过设置相关属性来限制<iframe>内的页面无法在新窗口或新标签页中打开,从而防止跳转到 B 站。可以通过在<iframe>标签中添加 sandbox 属性,结合 allow 属性精确控制权限,确保用户在当前页面内浏览,不被引导至其他网站。这种方式有助于提升用户体验的连续性,同时防止意外跳转带来的干扰。

sandbox="allow-top-navigation allow-same-origin allow-forms allow-scripts"

三、WPCode

如果你使用的是一个经常更新的主题,每次更新后都需要将代码添加到 functions.php 文件中,这显然十分麻烦。为了解决这个问题,你可以使用 WPCode 插件,在不修改主题文件的情况下,轻松实现自定义代码片段的添加和管理。

3.1、WPCode介绍

WPCode 是一款流行的WordPress插件,它允许用户在不修改主题文件的情况下,向WordPress网站添加自定义代码片段。这款插件非常适合需要在网站中添加额外功能的站长,例如,添加Google分析或百度统计的代码,或者插入自定义CSS、JavaScript等。

WPCode插件还提供了一个代码片段库,您可以在这个库里面找到经过验证的PHP代码片段,例如:禁用REST API、禁用 XML-RPC、禁用注释、允许 SVG 文件上传、禁用 Gutenberg、添加经典编辑器等,而无需为每个请求安装单独的插件。使用这个插件,还可以控制代码的激活状态,如果需要在调试情况下先不适用某个功能,可以先不激活,而不是直接删除。

总之非常方便,如果您的网站也是WordPress网站,那么站长建议您可以安装下这个插件试一试。

3.2、自定义代码到WPCode

3.3、使用简码

[vbilibili 参数名="参数值"][/vbilibili]

参数:

参数名可选值默认值解释是否必须
avBilibili 视频的 AV 号
bvBilibili 视频的 BV 号

示例:

[vbilibili bv=BV1SoZ5YVEJg][/vbilibili]

注意:
Bilibili 视频的 AV 号或 BV 号是必须的,但只要输入 AV 号或 BV 号的其中一个即可。
Bilibili 视频的 AV 号不要带上 av

http://www.cnnetsun.cn/news/3668004.html

相关文章:

  • 大模型技术入门与实战:从原理到应用开发
  • AI数字人产品架构深度解构(行业首份L3级能力矩阵白皮书)
  • Adobe Illustrator脚本集合:27款高效工具提升您的工作流程
  • Palworld Host Save Fix 终极指南:轻松解决服务器存档迁移问题
  • Ubuntu虚拟机安装有道龙虾全攻略
  • 告别重复图片困扰:AntiDupl.NET如何帮你智能清理图像库
  • 实战指南:如何用C版网易云音乐API快速构建音乐应用
  • SRIO高速串行互连技术实战:从初始化到错误恢复的嵌入式系统通信指南
  • PL2303驱动终极解决方案:3分钟解决Windows 10/11老芯片兼容性问题
  • FLUX.1-Kontext-dev深度解析:突破性多模态AI如何重塑图像编辑工作流
  • 3个核心优势:为什么FLUX.1 Kontext-dev正在重新定义AI图像编辑
  • ComfyUI-WanVideoWrapper完全指南:零基础创建专业AI视频的终极方案
  • 3分钟部署!CZSC缠论插件:通达信量化交易的终极解决方案
  • [具身智能-665]:ROS2 Humble / Jazzy 为什么不能合并为单一分支统一演进
  • AM1806引脚复用与GPIO配置:嵌入式硬件设计的核心逻辑与实践
  • Cairo与Rust智能合约安全扫描:semgrep-smart-contracts多语言支持详解
  • Gluten 开源项目教程
  • ndexTTS–B站、HuMo、Stand-In视觉生成框架、Youtu-GraphRAG、MobileLLM-R–Meta、PP-OCRv
  • 3步掌握Midscene.js:用AI视觉驱动跨平台UI自动化的完整指南
  • Palworld存档迁移终极指南:告别角色丢失,轻松转移服务器
  • SDR++:重新定义软件定义无线电的无冗余架构与技术突破
  • drawio-desktop:免费跨平台图表工具如何彻底改变你的工作流程
  • Git 在团队中的最佳实践--如何正确使用Git Flow
  • 那些年不该放到事务中的操作,你实现过哪些
  • ChatPicMigrator4QQNT:3步完成QQ聊天记录图片视频迁移的终极方案
  • 3分钟上手Sketch批量文本替换神器:告别繁琐手动修改
  • 华为防火墙产品介绍和工作原理介绍、注意问题
  • 免费获取9大网盘真实下载链接:网盘直链下载助手终极指南
  • 艾尔登法环终极调试工具:如何掌控交界地的每一个秘密
  • GetQzonehistory:如何快速找回QQ空间全部历史说说的完整教程