自制版权©️声明

注意事项:

  1. 仅限于zaxu 主题使用
  2. 文件保存为php格式,压缩成zip格式
  3. 上传至WordPress后台插件使用

PHP
<?php
/*
Plugin Name: 版权声明插件
Description: 一个简单的插件,在每篇文章底部添加自定义版权声明,并带有磨砂透明玻璃效果。
Version: 1.4
Author: 小四口
*/

// 添加设置页面链接到设置菜单
function custom_copyright_settings_menu() {
    add_options_page('自定义版权声明', '自定义版权声明', 'manage_options', 'custom-copyright', 'custom_copyright_settings_page'); // 添加选项页到设置菜单
}
add_action('admin_menu', 'custom_copyright_settings_menu'); // 将函数挂载到 admin_menu 钩子

// 显示设置页面内容
function custom_copyright_settings_page() {
    ?>
    <div class="wrap">
        <h1>自定义版权声明</h1>
        <p><strong>版权声明:</strong> 该插件为站点 <a href="https://skben.com/" target="_blank">四口北廿「https://skben.com/」</a> 编写,仅对于自己站点的兼容性,如有bug请联系站点管理员。版本V1.4</p>
        <form method="post" action="options.php">
            <?php
            settings_fields('custom_copyright_group');
            do_settings_sections('custom-copyright');
            submit_button();
            ?>
        </form>
    </div>
    <?php
}

// 注册并定义设置
function custom_copyright_settings_init() {
    register_setting('custom_copyright_group', 'custom_copyright_site_name');
    register_setting('custom_copyright_group', 'custom_copyright_site_url');
    register_setting('custom_copyright_group', 'custom_copyright_site_content');
    register_setting('custom_copyright_group', 'custom_copyright_backdrop_opacity');

    add_settings_section(
        'custom_copyright_main',
        '',
        '__return_false', // 不需要回调函数
        'custom-copyright'
    );

    add_settings_field(
        'custom_copyright_site_name',
        '站点名称',
        'custom_copyright_site_name_callback',
        'custom-copyright',
        'custom_copyright_main'
    );

    add_settings_field(
        'custom_copyright_site_url',
        '站点地址',
        'custom_copyright_site_url_callback',
        'custom-copyright',
        'custom_copyright_main'
    );

    add_settings_field(
        'custom_copyright_site_content',
        '站点内容',
        'custom_copyright_site_content_callback',
        'custom-copyright',
        'custom_copyright_main'
    );

    add_settings_field(
        'custom_copyright_backdrop_opacity',
        '毛玻璃效果透明度',
        'custom_copyright_backdrop_opacity_callback',
        'custom-copyright',
        'custom_copyright_main'
    );
}
add_action('admin_init', 'custom_copyright_settings_init'); // 将函数挂载到 admin_init 钩子

// 设置字段回调函数
function custom_copyright_site_name_callback() {
    $site_name = get_option('custom_copyright_site_name', ''); // 获取设置值
    echo "<input type='text' name='custom_copyright_site_name' value='" . esc_attr($site_name) . "' />";
    echo "<p class='description'>填写自己站点名称</p>";
}

function custom_copyright_site_url_callback() {
    $site_url = get_option('custom_copyright_site_url', ''); // 获取设置值
    echo "<input type='text' name='custom_copyright_site_url' value='" . esc_attr($site_url) . "' />";
    echo "<p class='description'>自己站点链接</p>";
}

function custom_copyright_site_content_callback() {
    $site_content = get_option('custom_copyright_site_content', '内除注明转载文章,其他均为老俍独立创作,采用「CC BY-NC-ND 4.0」创作共享协议。原创不易,希望保留原文链接转载,'); // 获取设置值
    wp_editor($site_content, 'custom_copyright_site_content', array('textarea_name' => 'custom_copyright_site_content')); // 使用WP编辑器支持HTML
    echo "<p class='description'>自定义内容,支持简单的HTML内容</p>";
}

function custom_copyright_backdrop_opacity_callback() {
    $backdrop_opacity = get_option('custom_copyright_backdrop_opacity', '0.8'); // 获取设置值,默认为0.8
    echo "<input type='number' step='0.1' min='0.1' max='1.0' name='custom_copyright_backdrop_opacity' value='" . esc_attr($backdrop_opacity) . "' />";
    echo "<p class='description'>最低透明:0.1,最高不透明:1.0</p>";
}

// 在文章底部显示版权声明
function custom_copyright_display_notice($content) {
    if (is_single()) { // 检查是否为单篇文章页面
        $site_name = get_option('custom_copyright_site_name', ''); // 获取站点名称
        $site_url = get_option('custom_copyright_site_url', ''); // 获取站点地址
        $site_content = get_option('custom_copyright_site_content', ''); // 获取站点内容
        $backdrop_opacity = get_option('custom_copyright_backdrop_opacity', '0.8'); // 获取毛玻璃效果透明度

        if (!empty($site_name) && !empty($site_url)) { // 如果站点名称和站点地址不为空
            $content .= '<div class="post-copyright">';
            $content .= '<span class="corner top-left"></span>'; // 左上角对标的符号
            $content .= '<span class="corner bottom-right"></span>'; // 右下角对标的符号
            $content .= '网站声明:本站 [<a href="' . esc_url($site_url) . '">' . esc_html($site_name) . '</a>] '; // 输出站点名称和链接
            $content .= wp_kses_post($site_content); // 输出站点内容
            $content .= '</div>';
        }
    }
    return $content; // 返回修改后的内容
}
add_filter('the_content', 'custom_copyright_display_notice'); // 将函数挂载到 the_content 钩子

// 添加自定义样式用于版权声明
function custom_copyright_add_styles() {
    ?>
    <style type="text/css">
        .post-copyright {
            background-color: rgba(255, 255, 255, <?php echo esc_attr(get_option('custom_copyright_backdrop_opacity', '0.8')); ?>); /* 半透明白色背景 */
            backdrop-filter: blur(10px); /* 磨砂玻璃效果 */
            border-radius: 8px; /* 圆角 */
            padding: 10px;
            margin-top: 20px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* 微弱阴影 */
            font-weight: bold; /* 字体加粗 */
            position: relative;
            overflow: hidden;
        }
        .post-copyright a {
            color: blue; /* 蓝色字体 */
        }
        .post-copyright .corner {
            position: absolute;
            width: 20px;
            height: 20px;
            background-color: #ccc;
            border-radius: 50%;
        }
        .post-copyright .corner.top-left {
            top: -10px;
            left: -10px;
            transform: rotate(-45deg);
        }
        .post-copyright .corner.bottom-right {
            bottom: -10px;
            right: -10px;
            transform: rotate(45deg);
        }
        .post-copyright p.description {
            margin-top: 5px;
            color: #666;
            font-size: 12px;
        }
    </style>
    <?php
}
add_action('wp_head', 'custom_copyright_add_styles'); // 将函数挂载到 wp_head 钩子


文章导航
  • 云服务器测速
  • 关于Umami
  • 上一篇云服务器测速
  • 下一篇关于Umami