使用BuddyPress 2.0,WP 3.9.1
我可以用Font Awesome图标替换活动流项目Delete
文本,但点击它会导致页面重新加载而不是使用ajax。
用基本的img标签替换文本具有相同的效果,所以我不认为它特定于字体真棒。
关于为什么或解决方案的任何想法?
function sc_swap_delete_text( $link ) {
$trash = '<i class="icon-trash icon-large"></i>';
$link = str_replace("Delete", $trash, $link);
return $link;
}
add_filter( 'bp_get_activity_delete_link', 'sc_swap_delete_text', 1, 1 );
答案 0 :(得分:0)
这是global.js中的jquery
'target'成为图标而不是标签。
所以if ( target.hasClass('delete-activity')
失败了。
解决方案,例如,您使用font-awesome中的垃圾桶图标:
更改为此目标会获得正确的目标:if ( target.hasClass('icon-trash')
然后你需要改变:var link_href = target.attr('href');
至:var link_href = target.closest("a").attr("href");
否则将无法找到nonce并且ajax将失败。
注意:为什么在使用BP Legacy Theme时从BuddyPress默认主题加载global.js?不知道,但在这个特定的安装中有些东西是时髦的。