AsynCRONous bbPress Subscriptions
Per default, bbPress is sending subscription notification emails as one email with a bunch of BCCs. There are various reasons why it would make more sense to send individual emails. This plugin does that, quietly in the background via WP cron, without slowing down page load times. Also increases notification performance and reduces database load on large sites. Translations by @mauriciogarofalo and @mechter Defaults If you don’t customize this plugin, this is what you’ll get: Sends mails from "MyBlog " (with your Blog’s name and admin email) Sends mail to "Markus " (with the name being the user’s display name on the forums, not their username) Subject and Message have more user friendly defaults, use the available filters (see below) to make them your own. Customization You can install and activate this plugin and it just works, but you have full control over the details if you want to. Below are some filters and code snippets that help you do what you want. If you’re new to working directly with code, please see the example at the bottom of this page. Available filters bbp_subscription_email_from( $from ) // $from can be a string or array('name'=>string, 'address'=>string) bbp_subscription_email_recipients( $recipients ) // $recipients is array of array('name'=>string, 'address'=>string) bbp_subscription_email_headers( $headers ) bbp_forum_subscription_email_subject( $subject, $forum_id, $topic_id ) bbp_forum_subscription_email_message( $message, $forum_id, $topic_id ) bbp_topic_subscription_email_subject( $subject, $forum_id, $topic_id, $reply_id ) bbp_topic_subscription_email_message( $message, $forum_id, $topic_id, $reply_id ) bbp_bounce_address( $bounce_address ) bbp_subscription_disable_async( false ) bbp_forum_subscription_disable_async( false ) bbp_topic_subscription_disable_async( false ) bbp_forum_subscription_notify_author( false ) bbp_topic_subscription_notify_author( false ) Helpful Snippets Here are some pointers to get the data you might want in your notifications: $blog_name = get_bloginfo( 'name' ); $forum_title = bbp_get_forum_title( $forum_id ); $topic_author_user_id = bbp_get_topic_author_id( $topic_id ); $topic_author_display_name = bbp_get_topic_author_display_name( $topic_id ); $topic_title = wp_specialchars_decode( strip_tags( bbp_get_topic_title( $topic_id ) ), ENT_QUOTES ); $topic_content = wp_specialchars_decode( strip_tags( bbp_get_topic_content( $topic_id ) ), ENT_QUOTES ); $topic_url = get_permalink( $topic_id ); $reply_author_user_id = bbp_get_reply_author_id( $reply_id ); $reply_author_display_name = bbp_get_topic_author_display_name( $reply_id ); $reply_content = strip_tags( bbp_get_reply_content( $reply_id ) ); $reply_url = bbp_get_reply_url( $reply_id ); // note that it's not get_permalink() Example To have a nice subject line for new topic notifications, add this to your theme’s functions.php. If your theme does not have this file, you can simply create it and it will be loaded automatically. Note how the example is basically just one of the filters above, mixed with some of the snippets and a return statement. It’s that simple. add_filter( 'bbp_forum_subscription_email_subject', function( $subject, $forum_id, $topic_id ) { $blog_name = get_bloginfo( 'name' ); $topic_author_display_name = bbp_get_topic_author_display_name( $topic_id ); $topic_title = wp_specialchars_decode( strip_tags( bbp_get_topic_title( $topic_id ) ), ENT_QUOTES ); return "[$blog_name] $topic_author_display_name created a new topic: $topic_title"; }, 10, 3); // first is priority (10 is default and just fine), second is number of arguments your filter expects
Top keywords
- topic34×5.91%
- id28×4.87%
- bbp24×4.17%
- subscription14×2.43%
- author13×2.26%
- forum13×2.26%
- name13×2.26%
- reply13×2.26%
- topic id12×2.09%
- email10×1.74%
- id topic10×1.74%
- display8×1.39%
Forward
Forward: Embed Image Links replaces plain image URLs with the actual image they point to. Paste a direct image URL into a post, page, bbPress topic, reply, forum description, or BuddyPress activity update, and the plugin displays it as an embedded image on the front end. The plugin also includes a simple width setting so large images can be scaled to fit the content area. Key features Converts direct image URLs into image embeds automatically. Works in posts, pages, bbPress content, and BuddyPress activity feeds. Supports common image formats including JPG, JPEG, PNG, GIF, BMP, WebP, and SVG. Lets you set a maximum image width as a percentage of the content area. Translation-ready and bundled with common language files. Good for Community sites where members paste image links in forums or activity feeds. Editorial workflows that need quick image previews from direct URLs. Sites that want lightweight image embedding without extra shortcodes. Accessibility WCAG 2.2 Level AA compliance is a release requirement for the interface and markup generated by Forward: Embed Image Links. Settings controls are tested for accessible names, keyboard operation, visible focus, contrast, reflow, and target size. Each generated image remains an accessible link with a descriptive action instead of removing the original URL’s purpose for non-visual users. Because a direct image URL does not contain a description of the image, authors remain responsible for providing an adjacent text equivalent when the image is informative. Developers can customize the link’s accessible name with the embed_image_links_accessible_label filter. The active theme and surrounding content can also affect full-page WCAG conformance. Compatibility Forward: Embed Image Links works with standard WordPress posts and pages, bbPress topics, replies, and forum descriptions, and BuddyPress activity updates and activity comments. It embeds direct image file URLs when the content is displayed, while keeping the saved content as the original URL. Data and privacy Forward: Embed Image Links does not send data to an external API and does not store personal data. The plugin changes front-end display only. It keeps the original URL in the post content and outputs it as an image when the page is viewed. Visitors’ browsers will request the image from the original remote host, so that host may receive normal request details such as IP address and user agent.
Top keywords
- image23×5.97%
- content7×1.82%
- image links