- 进入 WP 后台 → 外观 → 主题文件编辑器 → 找到
functions.php - 拉到文件最底部,粘贴下面全部代码保存即可
-
/** * 全局自动解析所有MP3链接为子比audio短代码 * 不限域名、不限中转接口、支持中文文件名、a标签/纯文本链接 */ function global_mp3_auto_convert(string $content): string { // 防止重复多次替换 if (str_contains($content, '(https?:\/\/[^\'"]+?\.mp3)["\'][^>]*>.*?<\/a>/is'; $content = preg_replace_callback($pattern_a, function ($matches) use ($get_title) { $url = urldecode($matches[1]); $title = $get_title($url); return sprintf('%s', esc_attr($url), esc_attr($title)); }, $content); // 2. 匹配页面裸露纯文本MP3链接(任意域名、任意接口路径) $pattern_text = '/(https?:\/\/[^\s<>"\']+?\.mp3)/is'; $content = preg_replace_callback($pattern_text, function ($matches) use ($get_title) { $url = urldecode($matches[1]); $title = $get_title($url); return sprintf('%s', esc_attr($url), esc_attr($title)); }, $content); return $content; } // 1. 发布/更新文章时自动转换入库 add_filter('wp_insert_post_data', function ($post_data, $postarr) { $allow_type = ['post', 'page']; if (!in_array($post_data['post_type'], $allow_type)) { return $post_data; } $post_data['post_content'] = global_mp3_auto_convert($post_data['post_content']); return $post_data; }, 999, 2); // 2. 前台访问实时解析(旧文章不用重新保存也能自动播放) add_filter('the_content', 'global_mp3_auto_convert', 5);
© 版权声明
THE END










暂无评论内容