为了避免嵌套的

为了避免嵌套的,第1张

WordPress嵌套回复(优缺点对照)

有些人对这个功能垂涎已久,在WordPress原生支持嵌套回复之前就尝试用一些插件来支持。嵌套回复有很多优点

1.它可以提高用户体验,调动访客回复的积极性,从而增加评论的数量,能让博客变得像社区一样活跃.
2.博客的回复邮件通知功能越来越被重视,因为它可以为你挽留一些游客.另外评论者发表评论后也不用经常回来查看是否被答复,可以在一定程度上提高互动性.嵌套回复可以有针对性的对评论进行答复,评论者只要收到邮件便可知其所答.
另一部分人不使用嵌套回复,我就是其中之一.为什么呢?且听我慢慢道来.任何事物都有其利弊,嵌套回复也存在一些缺点:
1.嵌套回复是一种依赖程序的显示结构,也就是说,只要你使用了一次,以后必须使用,否则评论的顺序就乱了.假设现在有A,B,C三人,他们都进行了一次评论, *** 作如下:
A添加了一条评论.
B也添加了一条评论.
C回复了A的评论.
如果主题支持嵌套回复,会得到以下的显示结构: 
  
但如果主题不支持嵌套,则会显示如下:
 
也就是说,页面结构将变得无比的混乱,你不得不让当前主题支持嵌套回复,或者使用插件对其进行支持.这就是对程序的依赖,除非精通其制作原理,否则它会限制你对主题和插件的选择.

2.嵌套回复定向回复功能(回复一条评论)是它的优点也是它的缺点。如果你的一篇文章已经有100个人评论了,你习惯回复大部分评论,那你是不是也需要回复差不多100次?如果是这样的话,@reply比嵌套回复更适合你。

3.嵌套回复依赖于浏览器对JavaScript的支持。

由于前两个原因,我不使用嵌套回复。我不确定以后会不会一直用嵌套回复,而且在我的回答者中,经常会有几个人问同一个问题。使用@reply是一种妥协,我可以一次回复回答网友的评论,同样的问题不需要多次回答;另外,通过一些插件,我也可以回复邮件通知,只是邮件内容略复杂。

怎样将嵌套回复功能集成到主题中?

主题中实现嵌套回复有两种方法,包括WordPress提供的默认方法和自定义回调方法。下面我会解释如何实现嵌套结构,CSS部分请自行研究。

默认方式:
WordPress提供的基本嵌套样式,默认主题使用该模式。
优点:简单易用,减少代码量。
缺点:代码结构不好,不能适合所有主题。
实施步骤如下:

1.在header.php<?PHPWP_head();?>在前面加上下面的代码。

复制代码如下:
<?php</SPAN>。<SPANstyle="COLOR:#b1b100">。如果</SPAN>。<SPANstyle="COLOR:#009900">(</SPAN>。is_单数<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。wp_enqueue_script<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#0000ff">;评论-回复'</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。

它的作用是加载嵌套回复所需的JavaScript代码。(即如果浏览器不支持JavaScript,嵌套回复无法实现)
2。将以下代码添加到comments.php文件的顶部。

复制代码如下:
<?php</SPAN>。
<;SPANstyle="COLOR:#b1b100">。如果</SPAN>。<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#339933">!</SPAN>。<SPANstyle="COLOR:#990000">empty</SPAN>。<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#000088">$_SERVER</SPAN>。<SPANstyle="COLOR:#009900">[<;/SPAN>。<SPANstyle="COLOR:#0000ff">;脚本文件名'</SPAN>。<SPANstyle="COLOR:#009900">]<;/SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">&&</SPAN>。<SPANstyle="COLOR:#0000ff">;comments.php'</SPAN>。<SPANstyle="COLOR:#339933">==</SPAN>。<SPANstyle="COLOR:#990000">basename</SPAN>。<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#000088">$_SERVER</SPAN>。<SPANstyle="COLOR:#009900">[<;/SPAN>。<SPANstyle="COLOR:#0000ff">;脚本文件名'</SPAN>。<SPANstyle="COLOR:#009900">]<;/SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#009900">{</SPAN>。
<;SPANstyle="COLOR:#990000">die</SPAN>。<SPANstyle="COLOR:#009900">(</SPAN>。__<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#0000ff">;请不要直接加载此页面。“谢谢,”</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。
<;SPANstyle="COLOR:#009900">}</SPAN>。
<;SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。
[br/]3。在comments.php文件的注释列表元素中添加以下代码,以调用所有相关的注释。

复制代码如下:
<?php</SPAN>。wp_list_comments<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。

4。将以下代码添加到commentform的id="commentform"元素中。

复制代码如下:
<?php</SPAN>。comment_id_fields<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。

和适当的取消回复按钮,代码如下。

复制代码如下:
<?php</SPAN>。取消_评论_回复_链接<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。5.
。复制从
1

调用注释部分的所有代码。代码如下:
<?php</SPAN>。comments_template<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。
<;?PHPcomments_template();?>

修改为以下代码
1

复制代码如下:
<?php</SPAN>。comments_template<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#0000ff">;'</SPAN>。<SPANstyle="COLOR:#339933">,</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#009900">true</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。
<;?phpcomments_template(',true);?>

回调方法:
在基本嵌套的基础上,定义回调方法重新定义评论的内容和布局。
优点:灵活性
缺点:增加了很多代码
关于自定义嵌套回复,我在之前的文章《WordPress2.7正式版更新》中误报了一个bug。在此,我向所有看过这篇文章的读者道歉。
1。在默认方法的基础上,增加一个回调函数,替换WordPress的默认评论布局。我在function.php添加了一个名为custom_comments的方法。这里请注意,请不要加结尾2。将
1
在comments.php的代码复制如下:
<?php</SPAN>。wp_list_comments<SPANstyle="COLOR:#009900">(</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。
<;?PHPWP_list_comments();?>

修改为下面的代码调用自定义的custom_comments方法
1

复制代码如下:
<?php</SPAN>。wp_list_comments<SPANstyle="COLOR:#009900">(</SPAN>。<'SPANstyle="COLOR:#0000ff">callback=custom_comments'</SPAN>。<SPANstyle="COLOR:#009900">)</SPAN>。<SPANstyle="COLOR:#339933">;</SPAN>。<SPANstyle="FONT-WEIGHT:bold。COLOR:#000000">?></SPAN>。
<;?phpwp_list_comments('回调=custom_comments');?>

详细代码请参考我的Blocks主题。
什么主题适合添加嵌套回复?
给主题添加嵌套回复很麻烦。很累,而且会打乱整个话题结构。直到现在,我仍然怀疑官方是否应该原生支持嵌套回复。但既然有,就应该试一试。所有主题都适合添加嵌套回复吗?我不这么认为。
对于一些图片比较多或者评论页面结构比较复杂的话题显然不合适,这也是我一直没有在iNove中加入嵌套回复功能的原因。但是对于一些不依赖图片的话题,比如积木,加进去就很合适了。
另外,还要根据你的需求判断是否支持嵌套回复,支持多少层回复?最深一级是10级,但我们只能支持到二级或三级,以降低开发成本。
后记
不知怎么的,在没有使用嵌套回复的情况下,我被问了很多次相关问题。由于嵌套回复实现复杂,维护困难,以及其他原因,很多话题不支持嵌套回复,但很多人却对其情有独钟。我想我可以和你分享我的理解。
接下来我会再写一篇文章来解释“嵌套回复是如何工作的”和“如何在兼容多个WordPress版本的前提下实现嵌套回复”。如果你有更好的建议或任何意见,请在这里留言。
WP绝招评论、Talk、主题、教程、WordPress
声明:本站同样遵循签名-非商业使用-共享3.0共享协议。转载请注明转自NeoEase
相关帖子
至WordPress博客中的预览文章(33篇)。通常,在一个电视节目的结尾,会播放下一集的一些片段作为预览。这可以让观众更感兴趣,...
WordPress嵌套回复的构成原理(30)在上一篇文章(WordPress嵌套回复)中,我已经介绍了嵌套回复的优缺点、制作方法等...
WordPress多级导航菜单(57)难度:★★★★多级导航菜单是指有多级菜单,层层嵌套。当鼠标移动到某个菜单时,...
在iNove中使用图像标题(57)关于iNove的最常见问题...
更改iNove(67)的标题颜色现在我将向您展示如何更改标题颜色...

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/772716.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-03
下一篇2022-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存