PIX主题文章嵌入回复可见功能(站长直接可见无需回复)

不得不说,有时候确实需要嵌入回复可见功能,以便提升网站的互动性,可惜PIX主题不支持,只有自己动手了。

先看效果图,已适配PIX主题:

PIX主题文章嵌入回复可见功能(站长直接可见无需回复)-似水流年

开始改造:

一、pix/func.php或者pix/functions.php中(任选一个),添加如下代码:

[reply]

function reply_to_read($atts, $content=null) {
    extract(shortcode_atts(array(
        "notice" => '<div class="reply-to-read"><p><font color="#ff0000">温馨提示: </font>此处为隐藏内容,需要<a href="#respond" title="评论本文">评论本文</a>后才能查看.<br><font size="2"><b>评论后请刷新一次页面,但注意不要清除缓存,否则还需要再次评论!</b></font></p></div>'
    ), $atts));

    $email = null;
    $user_ID = (int) wp_get_current_user()->ID;

    if ($user_ID > 0) {
        $email = get_userdata($user_ID)->user_email;
        // 对博主直接显示内容
        $admin_email =  get_userdata($user_ID)->user_email; // 博主Email
        if ($email == $admin_email) {
            return $content;
        }
    } else if (isset($_COOKIE['comment_author_email_' . COOKIEHASH])) {
        $email = str_replace('%40', '@', $_COOKIE['comment_author_email_' . COOKIEHASH]);
    } else {
        return $notice;
    }

    if (empty($email)) {
        return $notice;
    }

    global $wpdb;
    $post_id = get_the_ID();
    $query = "SELECT `comment_ID` FROM {$wpdb->comments} WHERE `comment_post_ID`={$post_id}  and `comment_author_email`='{$email}' LIMIT 1";

    if ($wpdb->get_results($query)) {
        return do_shortcode($content);
    } else {
        return $notice;
    }
}
add_shortcode('reply', 'reply_to_read');

[/reply]

二、pix/style.css中添加如下代码:

.reply-to-read {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border: 2px dashed #8B4513;
    border-radius: 10px;
    padding: 10px;
    color: #333;
    background-color: #F7F1E3;
    text-align: center;
}

三、就这么简单。如何使用?只需要添加reply即可,请务必使用简码,简码框里先插入【reply】,确定回车,然后写需要隐藏的内容,结束在后面再加简码,简码框里插入【/replay】即可。

【reply】需要隐藏的内容【/replay】

消息盒子
# 您需要首次评论以获取消息 #
# 您需要首次评论以获取消息 #

只显示最新10条未读和已读信息