WordPress通过简码插入bilibili视频

article/2025/6/19 5:59:46

发布于:Eucalyptus-Blog

一、前言

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 的 URLif ( ! 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 

示例:WordPress通过简码插入bilibili视频 - Eucalyptus 


http://www.hkcw.cn/article/lekeSfjQqm.shtml

相关文章

【Unity博客节选】Timeline 的 Traversal mode参数

注&#xff1a;软件版本Unity 6.0 Timeline 1.8.7 作者&#xff1a;CSDN RingleaderWang 原文&#xff1a;《Unity第25期——Timeline结构及其源码浅析》 文章首发Github&#x1f44d;&#xff1a;《Timeline结构及其源码浅析》 Bilibili 视频版&#x1f44d;&#x1f44d;&a…

Constraints and Triggers

目录 Kinds of Constraints Single-Attribute Keys Multiattribute Key Foreign Keys Expressing Foreign Keys Enforcing Foreign-Key Constraints Actions Taken Attribute-Based Checks Timing of Checks Tuple-Based Checks Assertions Timing of Assertion Ch…

免费且好用的PDF水印添加工具

软件介绍 今天要给大家推荐一款超实用的PDF添加水印工具&#xff0c;它能够满足用户给PDF文件添加水印的需求&#xff0c;而且完全免费。 这款PDF添加水印的软件有着简洁的界面&#xff0c;操作简便&#xff0c;无需安装&#xff0c;解压后即可使用。 在使用前&#xff0c;先…

设计模式——面向对象设计六大原则

摘要 本文详细介绍了设计模式中的六大基本原则&#xff0c;包括单一职责原则、开放封闭原则、里氏替换原则、接口隔离原则、依赖倒置原则和合成复用原则。每个原则都通过定义、理解、示例三个部分进行阐述&#xff0c;旨在帮助开发者提高代码的可维护性和灵活性。通过具体代码…

DO指数GPU版本

大指数下DO指数模型计算优化 DO指数模型概述 DO指数&#xff08;Duranton-Overman Index&#xff09;是由Duranton和Overman于2005年提出的产业空间集聚测度方法&#xff0c;它通过分析企业间的精确地理距离分布来识别产业集聚模式。与传统集聚指标相比&#xff0c;DO指数具有…

工业物联网中的事件驱动采样架构及优化

论文标题 Event-Based Sampling Architecture and Optimization for Industrial Internet of Things 工业物联网中的事件驱动采样架构及优化 作者信息 Tejas Thosani Process Control Systems, Micron Technology Inc., Manassas, USA tthosanimicron.com Andres Prado Esp…

Windows | 总误按Num Lock?修改注册表永久禁用Numlk键使小键盘一直输入数字

先说需修改注册表的位置与键值 路径&#xff1a;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\ 二进制键&#xff1a;Scancode Map 键值&#xff1a; 00 00 00 00 00 00 00 00 01 00 00 00 00 00 45 00 00 00 00 00 00 00 00 00如下图&#xff1a; …

c#与halcon环境配置,导出算法库,使用halcon环境编程

目录 1. C#配置halcon运行环境 2.导出halcon算法库 3.使用方法 记录下C#配置halcon环境的方法&#xff0c;以及halcon导出库的使用方法。 1. C#配置halcon运行环境 VS版本&#xff1a; vs2019 halcon版本: 20.11 创建c#工程&#xff0c;点击“创建新项目”&#xff0c;…

tomcat yum安装

使用yum安装 yum install -y java-1.7.0-openjdk* tomcat* --disablerepoepel## java-1.7.0-openjdk* 注意&#xff1a;最终安装的是java-1.8.0版本## --disablerepoepel 禁用&#xff1a;EPEL源&#xff0c;防止版本冲突 java -version (2) 启停&#xff1a;Tomcat 7 s…

时间的基本概念与相关技术三

1.5 守时技术 所谓守时&#xff08;time keeping&#xff09;是指一个时频系统&#xff08;包括频标和分频钟&#xff09;对时间信号和时间信息的保持。频率标准&#xff08;简称频标&#xff09;的频率准确度、频率稳定度和守时系统的环境条件是决定守时能力的三个关键因素。…

云原生安全基石:Kubernetes 核心概念与安全实践指南

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. Kubernetes 架构全景 Kubernetes&#xff08;简称 K8s&#xff09;采用主从架构&#xff0c;由控制平面&#xff08;Control Plane&…

【python】uv管理器

uv是一个速度极快的 Python 包和项目管理器&#xff0c;用 Rust 编写。 安装 安装uv之前&#xff0c;确保你的电脑不需要安装了python 在Windows下&#xff0c;可以使用官方的脚本直接安装 powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.…

2021 年 12 月大学英语四级考试真题(第 1 2 3 套)——解析版——篇章题

&#x1f3e0;个人主页&#xff1a;fo安方的博客✨ &#x1f482;个人简历&#xff1a;大家好&#xff0c;我是fo安方&#xff0c;目前中南大学MBA在读&#xff0c;也考取过HCIE Cloud Computing、CCIE Security、PMP、CISP、RHCE、CCNP RS、PEST 3等证书。&#x1f433; &…

【Linux】mmap文件内存映射

&#x1f4dd;前言&#xff1a; 这篇文章我们来讲讲Linux——mmap mmap介绍mmap接口介绍mmap使用示例 &#x1f3ac;个人简介&#xff1a;努力学习ing &#x1f4cb;个人专栏&#xff1a;Linux &#x1f380;CSDN主页 愚润求学 &#x1f304;其他专栏&#xff1a;C学习笔记&a…

深度学习驱动的超高清图修复技术——综述

Deep Learning-Driven Ultra-High-Definition Image Restoration: A Survey Liyan Wang, Weixiang Zhou, Cong Wang, Kin-Man Lam, Zhixun Su, Jinshan Pan Abstract Ultra-high-definition (UHD) image restoration​​ aims to specifically solve the problem of ​​quali…

【Docker系列】Docker 容器内安装`ps`命令

博客目录 一、为什么需要在 Docker 容器中安装ps命令二、不同 Linux 发行版的安装方法1. Alpine Linux 镜像的安装方法2. Debian/Ubuntu 镜像的安装方法3. CentOS/RHEL 镜像的安装方法 三、验证安装与基本使用四、永久解决方案&#xff1a;修改 Dockerfile1. Alpine 基础镜像的…

【KWDB 创作者计划】_再热垃圾发电汽轮机仿真与监控系统:KaiwuDB 批量插入10万条数据性能优化实践

再热垃圾发电汽轮机仿真与监控系统&#xff1a;KaiwuDB 批量插入10万条数据性能优化实践 我是一台N25-3.82/390型汽轮机&#xff0c;心脏在5500转/分的轰鸣中跳动。垃圾焚烧炉是我的胃&#xff0c;将人类遗弃的残渣转化为金色蒸汽&#xff0c;沿管道涌入我的胸腔。 清晨&#x…

对蚁群算法的理解和实例详解

目录 一、算法概述 二、实例详解 1&#xff09;问题分析 2&#xff09;初始化参数 2&#xff09;设置蚂蚁初始位置 3&#xff09;选择路径 4&#xff09;记录本次最佳路径 5&#xff09;更新信息素 6&#xff09;清空禁忌表 三、计算结果 四、总结 一、算法概述 一群…

【PowerPoint专栏】PowerPoint的保存选项

在PowerPoint的保存选项中有非常多的可用选项,保存的类型也非常多。 在PowerPoint中的工具选项中同样有一些相关的菜单操作帮助用户完成一些特殊操作。 在

直击2025粤港澳大湾区车展 科技引领未来车展

5月31日,第二十九届粤港澳大湾区车展在深圳国际会展中心(宝安)拉开帷幕。本届车展延续“面向科技、面向未来、面向市场”的主题,以“科技Alpha车展”为核心方向,探索汽车前沿科技。展会规模超过26万平方米,有超8万平方米的户外活动体验区及试驾专区。车展期间,全球近百家…