Pi Music 用户手册

欢迎使用 PiMusic — 轻量高效的Wordpress音乐插件

即刻下载 Pi Music

Pi Music

主文件
PiMusic.php
样式部分
逻辑部分
前端模板
后端模板
图片部分

主文件 - PiMusic.php

程序的核心控制文件,负责管理所有组件和模块。

功能说明

此文件是程序的入口点,主要执行以下操作:

  • 定义插件常量和版本信息
  • 注册激活/停用钩子
  • 加载所有必要组件(前端/后端)
  • 初始化现代代码和样式支持
  • 设置本地文化文本
// 插件初始化代码
// 版本信息
define('PI_MUSIC_VERSION', '1.0.0');
define('PI_MUSIC_PATH', dirname(__FILE__) . '/');

// 加载核心组件
require_once PI_MUSIC_PATH . 'inc/admin-settings.php';
require_once PI_MUSIC_PATH . 'inc/shortcode.php';

// 激活/停用钩子
register_activation_hook(__FILE__, 'pi_music_activate');
register_deactivation_hook(__FILE__, 'pi_music_deactivate');

// 初始化函数
function pi_music_init() {
    // 设置文本域
    load_plugin_textdomain('pi-music', false, PI_MUSIC_PATH . 'languages/');
    
    // 初始化前端功能
    if (!is_admin()) {
        add_action('wp_enqueue_scripts', 'pi_music_enqueue_scripts');
    }
}

文件结构

主文件负责组织整个插件的架构,确保各个模块能够协同工作。

前端样式 - frontend.css

负责播放器前端界面的样式设计和响应式布局。

主要功能

  • 播放器界面样式
  • 响应式布局适配
  • 动画效果和过渡
  • 主题颜色变量
  • 自定义滚动条样式
/* 播放器容器样式 */
.pi-music-player {
    width: 100%;
    max-width: 600px;
    background: var(--player-bg);
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* 进度条样式 */
.pi-progress-bar {
    height: 4px;
    background: var(--progress-bg);
    border-radius: 2px;
    cursor: pointer;
}

/* 播放控制按钮 */
.pi-control-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    background: var(--accent-color);
    color: white;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.pi-control-btn:hover {
    transform: scale(1.05);
}

前端逻辑 - frontend.js

处理播放器的交互逻辑和音频控制功能。

主要功能

  • 音频播放控制
  • 进度条交互
  • 播放列表管理
  • 音量控制
  • 键盘快捷键支持
// 播放器类
class PiMusicPlayer {
    constructor(element) {
        this.player = element;
        this.audio = element.querySelector('audio');
        this.playBtn = element.querySelector('.pi-play-btn');
        this.progressBar = element.querySelector('.pi-progress-bar');
        
        this.initEvents();
    }
    
    initEvents() {
        // 播放/暂停按钮
        this.playBtn.addEventListener('click', () => this.togglePlay());
        
        // 进度条点击
        this.progressBar.addEventListener('click', (e) => this.seek(e));
        
        // 音频时间更新
        this.audio.addEventListener('timeupdate', () => this.updateProgress());
    }
    
    togglePlay() {
        if (this.audio.paused) {
            this.audio.play();
            this.playBtn.innerHTML = '&pause;';
        } else {
            this.audio.pause();
            this.playBtn.innerHTML = '&play_arrow;';
        }
    }
    
    seek(e) {
        const width = this.progressBar.clientWidth;
        const clickX = e.offsetX;
        const duration = this.audio.duration;
        
        this.audio.currentTime = (clickX / width) * duration;
    }
    
    updateProgress() {
        const progress = (this.audio.currentTime / this.audio.duration) * 100;
        this.progressBar.querySelector('.pi-progress-fill').style.width = `${progress}%`;
    }
}

// 初始化所有播放器
document.querySelectorAll('.pi-music-player').forEach(player => {
    new PiMusicPlayer(player);
});

后台样式 - admin.css

管理后台界面的样式设计,提供良好的用户体验。

主要功能

  • 设置页面样式
  • 媒体库集成样式
  • 自定义元框样式
  • 响应式表格样式
  • 管理通知样式

后台逻辑 - admin.js

处理管理后台的交互逻辑和表单验证。

主要功能

  • 设置表单验证
  • 媒体上传处理
  • 动态选项切换
  • AJAX请求处理
  • 预览功能实现

播放器页面 - player-page.php

完整播放器页面的模板文件。

主要功能

  • 全屏播放器界面
  • 播放列表展示
  • 歌词显示区域
  • 相关歌曲推荐
  • 分享功能集成

迷你播放器 - mini-player.php

嵌入式迷你播放器的模板文件。

主要功能

  • 简约播放器界面
  • 悬浮播放控制
  • 底部固定显示
  • 歌曲信息展示
  • 展开/收起动画

设置页面 - admin-settings.php

插件设置页面的后台模板。

主要功能

  • 全局设置选项
  • 播放器样式配置
  • API接口设置
  • 缓存清理功能
  • 高级选项控制

文章元数据 - post-meta.php

为文章添加音乐相关元数据的界面。

主要功能

  • 音乐URL输入框
  • 歌曲信息表单
  • 封面图片上传
  • 歌词文本编辑
  • 播放列表关联

短代码功能 - shortcode.php

提供各种短代码功能的实现。

主要功能

  • [pi_music] 播放器短代码
  • [pi_playlist] 播放列表短代码
  • [pi_song] 单曲展示短代码
  • 参数配置支持
  • 自定义样式选项

图标资源 - icons/

存放播放器使用的图标资源。

包含文件

  • play.svg - 播放按钮图标
  • pause.svg - 暂停按钮图标
  • next.svg - 下一曲图标
  • prev.svg - 上一曲图标
  • volume.svg - 音量控制图标
  • playlist.svg - 播放列表图标

封面图片 - covers/

默认封面图片和专辑封面资源。

包含文件

  • default.png - 默认封面图片
  • album-placeholder.png - 专辑占位图
  • artist-placeholder.png - 艺术家占位图
  • gradient-bg.jpg - 渐变背景图片

本页目录

PiMusic.php