WordPress教程:WordPress添加回复可见内容

自从用了7b2主题后,没有了回复可见功能,苦苦寻求找了很多都不行,经过坚持不懈的努力终于找到,下面分享下添加过程

WordPress添加回复可见内容

functions.php

在主题根目录下的functions.php文件中添加以下代码:

  1. //内容回复可见
  2. function reply_to_read($atts$content = null) {
  3.  extract(shortcode_atts(array(
  4.  "notice" => '<div class="reply">隐藏内容,回复可见“<a href="' . get_permalink() . '#respond" title="回复可见">回复本文</a>”后“<a href="javascript:window.location.reload();" title="刷新页面">刷新页面</a>”查看隐藏内容!</div>'
  5.  ) , $atts));
  6.  $email = null;
  7.  $user_ID = (int)wp_get_current_user()->ID;
  8.  if ($user_ID > 0) {
  9.  $email = get_userdata($user_ID)->user_email;
  10.  //站长可见
  11.  $admin_email = get_bloginfo('admin_email');
  12.  if ($email == $admin_email) {
  13.  return $content;
  14.  }
  15.  } else if (isset($_COOKIE['comment_author_email_' . COOKIEHASH])) {
  16.  $email = str_replace('%40', '@', $_COOKIE['comment_author_email_' . COOKIEHASH]);
  17.  } else {
  18.  return $notice;
  19.  }
  20.  if (emptyempty($email)) {
  21.  return $notice;
  22.  }
  23.  global $wpdb;
  24.  $post_id = get_the_ID();
  25.  $query = "SELECT `comment_ID` FROM {$wpdb->comments} WHERE `comment_post_ID`={$post_id} and `comment_approved`='1' and `comment_author_email`='{$email}' LIMIT 1";
  26.  if ($wpdb->get_results($query)) {
  27.  return do_shortcode($content);
  28.  } else {
  29.  return $notice;
  30.  }
  31. }
  32. add_shortcode('reply', 'reply_to_read');

接着需要在编辑器中添加自定义按钮functions.php添加以下代码:

  1. //添加HTML编辑器自定义快捷标签按钮
  2. add_action('after_wp_tiny_mce', 'bolo_after_wp_tiny_mce');
  3. function bolo_after_wp_tiny_mce($mce_settings) {
  4. ?>
  5. <script type="text/javascript">
  6. QTags.addButton( 'reply', '回复可见', '[@reply]\n\n[/reply]\n', "" );
  7. </script>

以上代码其中[@reply]中的@去掉

style.css

在主题根目录下的style.css文件中添加以下代码:

  1. /*回复可见*/
  2. .reply {
  3.   padding10px;
  4.   border1px #49aff9 dashed;
  5.   background-color#fafafa;
  6.   color#f40000;
  7.   text-aligncenter;
  8.   font-size14px;
  9. }

以上代码根据自己喜欢可以适当修改

调用代码

在文本编辑框可看到回复可见按钮,插入即可,或者输入[@reply][/reply],其中@删除掉

效果演示

隐藏内容,回复可见“回复本文”后“刷新页面”查看隐藏内容!
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
Win软件
7 条回复 A 作者 M 管理员
  1. 调用隐藏呢?

    • [@reply]隐藏内容[/reply],把@去掉

  2. 这个文件在哪个目录下啊

    • 主题根目录

  3. 接着需要在编辑器中添加自定义按钮function.php添加以下代码:

    少加了一个s,主题目录下只有functions.php

    • 对的

  4. 回复一下

欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论