Block, Suspend, Report for BuddyPress
Block, Suspend, Report for BuddyPress is a must-have plugin for EVERY BuddyPress installation. For a full list of features, documentation, screenshots and videos, head to the plugin page. Each tool is explained further below. Block The Block tool allows your members to block another member. They simply click on a ‘block’ button, either on another member’s profile, or on the member list. Once blocked, neither member can send a message to the other. Each member’s profile pages become inaccessible, and display a simple message. Neither can view each other’s activity updates, or replies, and neither can send a friend request to one another. A simple solution to deal with disputes between members. Prevents escalation of abusive or unacceptable conduct between your members. Lets your members deal with disputes by themselves, saving you time. Suspend The Suspend tool allows you, as an administrator, to suspend a member. Available only to administrators is a ‘suspend’ button on your member’s profiles, the member directory, and the admin users screen. Once clicked by you, all of that member’s sessions are terminated, and they will be unable to log back in, instead seeing a custom message explaining the situation. Quickly deals with members who have breached your acceptable standards policies. Allows you to disable an account – until now, you would have to delete the account, or mark them as a spammer. Keeps their profile, uploads, messages and other assets ready, should you decide they can return to the site. See all your suspended members from the back end. Report Flag inappropriate, abusive, or otherwise unacceptable behaviour to the site administrator. Each member’s profile now incorporates a ‘report’ button. This creates a new report, which administrators can see in the backend. You can specify a report type, similar to social media networks such as Facebook, to designate that report as ‘spam’ or ‘abusive’ and so on. You can set Block, Suspend, Report to email you when a new report is received. Gives your members peace of mind that the site is open to moderation. Allows you to deal with any report in your own time, without having to respond to internal messages or other notifications. Set a threshold to automatically suspend a user when a number of reports are received. Mark new reports as read/unread Mark reports as unsubstantiated See number of unread reports from the menu or the dashboard Block, Suspend, Report for BuddyPress Premium Editions The Premium editions adds the following features: Pre-approval system for new activities and group posts A ‘Latest Reports’ box in the dashboard A ‘Most Blocked’ box, showing your site’s worst offenders Integration with Paid Memberships Pro – enable blocking and reporting for certain levels only. Assign a role to a suspended user Automatically receive new features as they are built Ability to add custom CSS to match your theme’s styling perfectly Premium email support Plus, a super-charged report system: You can allow a huge range of content to be reported and moderated, not just members themselves: WordPress Comments Activity Updates Activity Comments Groups Private Messages Forum Topics Forum Replies rtMedia Uploads Create your own report types, or edit the default ones. Add your own reports from the backend, ideal for when your members flag content directly to you via a private message or similar. Whitelist any user roles that cannot be reported Blacklist members so they can’t send reports (ideal for malicious complaints) Quickly moderate (hide) any activity from the dashboard Add your own moderators who have front-end access to the reporting system Let your moderators deal with reports, suspensions, activity moderation Fully Tested With Beehive Theme BP Better Messages Not compatible with Vikinger Theme
Breadcrumb Block
This is a single-block plugin for the breadcrumb trail. It’s simple, lightweight, SEO-friendly, and WooCommerce compatibility. It also includes some simple separator icons. It works everywhere: Page Editor, Site Editor, and template files. How to customize the breadcrumb How to change/remove an item? add_filter( 'breadcrumb_block_get_item', function ( $item_args, $context, $breadcrumbs_instance ) { // Ignore items without context. if ( ! $context || ! ( $context['object'] ?? false ) ) { return $item_args; } // Eg: remove a term. if ( 'term' === ( $context['type'] ?? '' ) && 'term-slug' === $context['object']->slug ) { return false; } // Eg: Change the title of a page. if ( 'page' === ( $context['type'] ?? '' ) && page_id_to_change === $context['object']->ID ) { $item_args[0] = 'Make it shorter'; } return $item_args; }, 10, 3 ); $item_args is a 3-item array: [$item_label, $item_link, $item_attrs] $context is an associative array: ['type' => 'item type', 'object' => 'item object']. type can be one of the following values: front_page, home, shop, page, post, single, term, taxonomy, post_type_archive, search, 404, paged, author, date_year, date_month, date_day, attachment. How to change the markup of the block? add_filter( 'breadcrumb_block_get_breadcrumb_trail', function ( $markup, $args, $breadcrumbs_instance ) { return $markup; }, 10, 3 ); How to add or remove the items from the breadcrumb trail? add_filter( 'breadcrumb_block_get_items', function ( $items, $breadcrumbs_instance ) { return $items; }, 10, 2 ); How to use a custom separator for the breadcrumb trail? add_filter( 'breadcrumb_block_get_args', function ( $args ) { // For example, change separator. $args['separator'] = ' '; return $args; } ); The custom separator should be an inline SVG. To make sure it displays properly, it should have three attributes: width, height, and fill. The values of these attributes should be as follows: fill="currentColor" width="1em" height="1em". Using this hook, you can customize other attributes such as container, before, after, list_tag, item_tag, item_before, item_after, separator. How to prepend the blog page to all single posts? add_action( 'breadcrumb_block_single_prepend', function ( $post, $breadcrumbs_instance ) { if ( 'post' === $post->post_type ) { $blog_id = get_option( 'page_for_posts'); if ( $blog_id ) { $breadcrumbs_instance->add_item( get_the_title( $blog_id ), get_permalink( $blog_id ) ); } } }, 10, 2 ); If this plugin is useful for you, please do a quick review and rate it on WordPress.org to help us spread the word. I would very much appreciate it. Please check out my other plugins if you’re interested: Content Blocks Builder – Build custom layouts and blocks visually in the Block Editor without needing a code editor, using only core blocks and native Gutenberg features. Meta Field Block – A single block to display custom fields in the Block Editor without coding. It supports ACF, MetaBox, WooCommerce, meta, rest field, shortcode and more. Works everywhere: in the Site Editor (FSE), the Block Editor, inside Query Loop, WooCommerce Product Collection, Term Query blocks, and even in template files. SVG Block – A block to display SVG images as blocks. Useful for images, icons, dividers, and buttons. It allows you to upload SVG images and load them into the icon library. Icon separator – A tiny block just like the core/separator block but with the ability to add an icon. Block Enhancements – Adds practical features to blocks like icons, box shadows, transforms, etc. Counting Number Block – A block to display numbers with a counting effect Better YouTube Embed Block – A block to solve the performance issue with embedded YouTube videos. It can also embed multiple videos and playlists. The plugin is developed using @wordpress/create-block.