如何在WordPress中加入评论插件

如何在WordPress中加入评论插件,第1张

登陆你的WordPress管理员账号,进入后台的仪表盘。

在左边栏菜单中选择插件—安装插件。

下面你需要输入搜索的关键词,建议使用“comments”。

你会发现浩如烟海的comments插件,你可以任意选择一个(英文不懂的确实压力很大啊)。这里演示时使用的是Comment Guestbook。

点击安装后就开始了安装进程。一分钟内安装完成。

点击启用插件,你就可以为这个评论插件进行设置了!

注意事项

注意你的WordPress版本是否支持你所选择的插件~

1、 在comments.php评论表单中添加自己想要的字段,如:

<p>

<input type="text" name="tel" id="tel" size="22" tabindex="4" />

<label for="tel">电话</label>

</p>

tabindex 这个属性按照从小到大排,为什么要这样?你可以自己试试….

2、如果评论表单是使用系统自带的,那么请用以下方法添加表单字段,如果不是,请略过

add_filter('comment_form_default_fields','comment_form_add_ewai')

function comment_form_add_ewai($fields) {

$label1 = __( '国家/地区' )

$label2 = __( 'Skype账号' )

$label3 = __( '电话' )

$label4 = __( '传真' )

$label5 = __( '地址' )

$value1 = isset($_POST['guojia']) ? $_POST['guojia'] : false

$value2 = isset($_POST['skype']) ? $_POST['skype'] : false

$value3 = isset($_POST['tel']) ? $_POST['tel'] : false

$value4 = isset($_POST['fax']) ? $_POST['fax'] : false

$value5 = isset($_POST['address']) ? $_POST['address'] : false

$fields['guojia'] =<<<HTML

<p>

<label for="guojia">{$label1}</label>

<input id="guojia" name="guojia" type="text" value="{$value1}" size="30" />

</p>

HTML

return $fields

}

3、 接收表单字段并写入数据库

在主题目录的 functions.php添加以下代码

add_action('wp_insert_comment','wp_insert_tel',10,2)

function wp_insert_tel($comment_ID,$commmentdata) {

$tel = isset($_POST['tel']) ? $_POST['tel'] : false

//_tel 是存储在数据库里的字段名字,取出数据的就会用到

update_comment_meta($comment_ID,'_tel',$tel)

}

这两步就可以将数据写入数据库了,不信你试试看

add_action()参数中的10和2分别表示该函数执行的优先级是10(默认值,值越小优先级越高),该函数接受2个参数。

4、在后台显示额外字段

前面两步只是接收和写入到数据库,那么要怎么在后台评论列表中显示呢?将以下代码复制到主题目录的functions.php 中:

add_filter( 'manage_edit-comments_columns', 'my_comments_columns' )

add_action( 'manage_comments_custom_column', 'output_my_comments_columns', 10, 2 )

function my_comments_columns( $columns ){

$columns[ '_tel' ] = __( '电话' ) //电话是代表列的名字

return $columns

}

function output_my_comments_columns( $column_name, $comment_id ){

switch( $column_name ) {

case "_tel" :

echo get_comment_meta( $comment_id, '_tel', true )

break

}

如果要在前台的留言列表中调用,就用以下代码,_tel就是你在数据库中存储的字段名字

<?php

$tel = get_comment_meta($comment->comment_ID,'_tel',true)

if( !empty($tel)){

echo "电话".$tel

}

?>

5、 大功告成,看看后台的评论列表,是不是多了一列电话,那样的话就没错了。

6、如果要移除某一个自带的表单字段,可以使用以下代码

function tel_filtered($fields){

if(isset($fields['tel']))

unset($fields['tel'])

return $fields

}

add_filter('comment_form_default_fields', 'tel')


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

原文地址: http://outofmemory.cn/bake/11940470.html

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

发表评论

登录后才能评论

评论列表(0条)

保存