多说社会化评论系统 – WordPress后台深度整合

7

安装了多说插件之后,后台对WordPress的评论做任何操作都不会对多说有影响,不过服务器与多说的同步仍然存在延时,有时候我们登录到后台,提醒到处都是

duoshuo

既然激活了多说之后系统的评论功能已经完全不用,那么对有强迫症的朽木来说,还是动一下手术比较好。

打开wp-content\plugins\duoshuo\duoshuo.php文件

1
2
3
4
5
6
7
8
9
10
			else{
				add_object_page(
					'多说评论管理',
					'多说评论',
					'moderate_comments',
					'duoshuo',
					array($duoshuoPlugin,'manage'),
					$duoshuoPlugin->pluginDirUrl . 'images/menu-icon.png' 
				);
			}

找到上面这段代码,替换为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
			else{
				add_menu_page(
					'多说评论管理',
					sprintf( __('Comments %s'), "<span class='awaiting-mod count-$awaiting_mod'><span class='pending-count'>" . number_format_i18n(3) . "</span></span>" ),
					'moderate_comments',
					'duoshuo',
					array($duoshuoPlugin,'manage'),
					$duoshuoPlugin->pluginDirUrl . 'images/menu-icon.png',
					25
				);
			}
 
			remove_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu', 60 );
			add_action( 'admin_bar_menu', 'duoshuo_wp_admin_bar_comments_menu', 60 );
 
			add_submenu_page(
		         'duoshuo',//$parent_slug
		         '全部评论',//page_title
		         '全部评论',//menu_title
		         'manage_options',//权限
		         'duoshuo',//menu_slug
		         array($duoshuoPlugin, 'manage')//function
		    );

在文件底部加入下面的代码

1
2
3
4
5
6
7
8
9
10
11
function duoshuo_wp_admin_bar_comments_menu( $wp_admin_bar ) {
	$awaiting_mod = 5;
	$awaiting_title = esc_attr( sprintf( _n( '%s comment awaiting moderation', '%s comments awaiting moderation', $awaiting_mod ), number_format_i18n( $awaiting_mod ) ) );
 
	$wp_admin_bar->add_menu( array(
		'id'    => 'comments',
		'title' => '<span class="ab-icon"></span><span id="ab-awaiting-mod" class="ab-label awaiting-mod pending-count count-' . $awaiting_mod . '">' . $awaiting_mod . '</span>',
		'href'  => 'admin.php?page=duoshuo',
		'meta'  => array( 'title' => $awaiting_title ),
	) );
}

代码中的$awaiting_mod是要读取多说的当前未审核帖子数量,官方没有提供接口,还在调试中。

理论最终效果

duoshuo-fix

得到官方答复,调用未审核评论数功能暂时无法实现,可以通过在functions.php中添加代码暂时屏蔽系统自带的评论提醒。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//多说 FIX
If (in_array( 'duoshuo/duoshuo.php',apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
	//定义工具条
	function my_edit_toolbar($wp_toolbar) {
	    $wp_toolbar->remove_node('wp-logo');
	    $wp_toolbar->remove_node('updates');
	    $wp_toolbar->remove_node('comments');
	}
	add_action('admin_bar_menu', 'my_edit_toolbar', 999);
 
	//移除评论主菜单
	function remove_menu() {
	global $menu;
	unset($menu[25]);
	}
	add_action('admin_head', 'remove_menu');
}

共 7 条评论

  1. 回复

    最近发现多说会暴露我们的后台登录地址,也想换掉多说了。

  2. 回复

    很喜欢你的代码高亮风格。可不可以告知是哪款插件啊?

    • 回复

      不是哪款插件的问题. CSS样式 是自己写的. 呵呵

      • 回复

        挺好的。很喜欢这种风格。

        • 回复

          就是配色的问题,你可以对比我的写下CSS或者 直接带走

          • 我直接使用了KE For WP编辑器。里面有这个代码高亮。引用的是google代码高亮。但是没你这个风格好看。我博客现在在备案中。暂未开放出来。我主要是自己写一些纯软件开发方面的技术文章。代码高亮有就行,不太重要。希望以后多多沟通。

  3. 回复

    测试一下,多说同步速度。

回复 boke123 X

您的邮箱不会公开,当您的评论有新的回复时,会通过您填写的邮箱向您发送评论内容。 必填字段 *

为何看不到我发布的评论?

正在提交, 请稍候...