Search Results for 'private'
-
AuthorSearch Results
-
October 12, 2018 at 8:54 am #278519
Topic: Upgrading from 2.9.4 to 3.x
in forum How-to & TroubleshootingJohn
ParticipantI have taken on development of a site which currently uses buddypress 2.9.4, although really only uses the members profile functionality, so no groups, activity streams, notifications, friendships, private messaging etc.
In truth, I don’t think the BP was the right choice for the site but it’s so baked into the site now that changing to something different just isn’t an option.
I’m currently in the process of developing a new theme for the site and so now would be a good time to upgrade from 2.9.4 to 3.2 (current latest).
The only add-on plugin for BP on the site is BuddyPress Xprofile Custom Fields Type, for which I see development has now ceased but that there is a replacement for.
Is there anything that I should be aware of, gotchas etc, in making the upgrade? I’m quite wary of making the upgrades as the existing codebase isn’t mine and I am new to BP development, although a very experienced WP dev.
I’ve read the release notes and nothing leaps out at me as being a massive problem but I am anticipating some, deprecated functions being one.
So, any general or specific advice from others who have gone through the upgrade would be appreciated!
Thanks,
John
October 11, 2018 at 5:45 am #278463Prashant Singh
Participant<?php /** * BP Nouveau Messages main template. * * This template is used to inject the BuddyPress Backbone views * dealing with user's private messages. * * @since 3.0.0 * @version 3.1.0 */ ?> <div class="subnav-filters filters user-subnav bp-messages-filters" id="subsubnav"></div> <div class="bp-messages-feedback"></div> <div class="bp-messages-content"></div> <script type="text/html" id="tmpl-bp-messages-feedback"> <div class="bp-feedback {{data.type}}"> <span class="bp-icon" aria-hidden="true"></span> <p>{{{data.message}}}</p> </div> </script> <?php /** * This view is used to inject hooks buffer */ ?> <script type="text/html" id="tmpl-bp-messages-hook"> {{{data.extraContent}}} </script> <script type="text/html" id="tmpl-bp-messages-form"> <?php bp_nouveau_messages_hook( 'before', 'compose_content' ); ?> <label for="send-to-input"><?php esc_html_e( 'Send @Username', 'buddypress' ); ?></label> <input type="text" name="send_to" class="send-to-input" id="send-to-input" /> <label for="subject"><?php _e( 'Subject', 'buddypress' ); ?></label> <input type="text" name="subject" id="subject"/> <div id="bp-message-content"></div> <?php bp_nouveau_messages_hook( 'after', 'compose_content' ); ?> <div class="submit"> <input type="button" id="bp-messages-send" class="button bp-primary-action" value="<?php echo esc_attr_x( 'Send', 'button', 'buddypress' ); ?>"/> <input type="button" id="bp-messages-reset" class="text-button small bp-secondary-action" value="<?php echo esc_attr_x( 'Reset', 'form reset button', 'buddypress' ); ?>"/> </div> </script> <script type="text/html" id="tmpl-bp-messages-editor"> <?php // Add a temporary filter on editor buttons add_filter( 'mce_buttons', 'bp_nouveau_messages_mce_buttons', 10, 1 ); wp_editor( '', 'message_content', array( 'textarea_name' => 'message_content', 'teeny' => false, 'media_buttons' => false, 'dfw' => false, 'tinymce' => true, 'quicktags' => false, 'tabindex' => '3', 'textarea_rows' => 5, ) ); // Remove the temporary filter on editor buttons remove_filter( 'mce_buttons', 'bp_nouveau_messages_mce_buttons', 10, 1 ); ?> </script> <script type="text/html" id="tmpl-bp-messages-paginate"> <# if ( 1 !== data.page ) { #> <button id="bp-messages-prev-page"class="button messages-button"> <span class="dashicons dashicons-arrow-left"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Previous page', 'link', 'buddypress' ); ?></span> </button> <# } #> <# if ( data.total_page !== data.page ) { #> <button id="bp-messages-next-page"class="button messages-button"> <span class="dashicons dashicons-arrow-right"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Next page', 'link', 'buddypress' ); ?></span> </button> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-filters"> <li class="user-messages-search" role="search" data-bp-search="{{data.box}}"> <div class="bp-search messages-search"> <?php bp_nouveau_message_search_form(); ?> </div> </li> <li class="user-messages-bulk-actions"></li> </script> <script type="text/html" id="tmpl-bp-bulk-actions"> <input type="checkbox" id="user_messages_select_all" value="1"/> <label for="user_messages_select_all"><?php esc_html_e( 'All Messages', 'buddypress' ); ?></label> <div class="bulk-actions-wrap bp-hide"> <div class="bulk-actions select-wrap"> <label for="user-messages-bulk-actions" class="bp-screen-reader-text"> <?php esc_html_e( 'Select bulk action', 'buddypress' ); ?> </label> <select id="user-messages-bulk-actions"> <# for ( i in data ) { #> <option value="{{data[i].value}}">{{data[i].label}}</option> <# } #> </select> <span class="select-arrow" aria-hidden="true"></span> </div> <button class="messages-button bulk-apply bp-tooltip" type="submit" data-bp-tooltip="<?php echo esc_attr_x( 'Apply', 'button', 'buddypress' ); ?>"> <span class="dashicons dashicons-yes" aria-hidden="true"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Apply', 'button', 'buddypress' ); ?></span> </button> </div> </script> <script type="text/html" id="tmpl-bp-messages-thread"> <div class="thread-cb"> <input class="message-check" type="checkbox" name="message_ids[]" id="bp-message-thread-{{data.id}}" value="{{data.id}}"> <label for="bp-message-thread-{{data.id}}" class="bp-screen-reader-text"><?php esc_html_e( 'Select message:', 'buddypress' ); ?> {{data.subject}}</label> </div> <# if ( ! data.recipientsCount ) { #> <div class="thread-from"> <a class="user-link" href="{{data.sender_link}}"> <img class="avatar" src="{{data.sender_avatar}}" alt="" /> <span class="bp-screen-reader-text"><?php esc_html_e( 'From:', 'buddypress' ); ?></span> <span class="user-name">{{data.sender_name}}</span> </a> </div> <# } else { var recipient = _.first( data.recipients ); #> <div class="thread-to"> <a class="user-link" href="{{recipient.user_link}}"> <img class="avatar" src="{{recipient.avatar}}" alt="" /> <span class="bp-screen-reader-text"><?php esc_html_e( 'To:', 'buddypress' ); ?></span> <span class="user-name">{{recipient.user_name}}</span> </a> <# if ( data.toOthers ) { #> <span class="num-recipients">{{data.toOthers}}</span> <# } #> </div> <# } #> <div class="thread-content" data-thread-id="{{data.id}}"> <div class="thread-subject"> <span class="thread-count">({{data.count}})</span> <a class="subject" href="../view/{{data.id}}/">{{data.subject}}</a> </div> <p class="excerpt">{{data.excerpt}}</p> </div> <div class="thread-date"> <time datetime="{{data.date.toISOString()}}">{{data.display_date}}</time> </div> </script> <script type="text/html" id="tmpl-bp-messages-preview"> <# if ( undefined !== data.content ) { #> <h2 class="message-title preview-thread-title"><?php esc_html_e( 'Active conversation:', 'buddypress' ); ?><span class="messages-title">{{{data.subject}}}</span></h2> <div class="preview-content"> <header class="preview-pane-header"> <# if ( undefined !== data.recipients ) { #> <dl class="thread-participants"> <dt><?php esc_html_e( 'Participants:', 'buddypress' ); ?></dt> <dd> <ul class="participants-list"> <# for ( i in data.recipients ) { #> <li><a href="{{data.recipients[i].user_link}}" class="bp-tooltip" data-bp-tooltip="{{data.recipients[i].user_name}}"><img class="avatar mini" src="{{data.recipients[i].avatar}}" alt="{{data.recipients[i].user_name}}" /></a></li> <# } #> </ul> </dd> </dl> <# } #> <div class="actions"> <?php if(current_user_can('manage_options')){ ?> <button type="button" class="message-action-delete bp-tooltip bp-icons" data-bp-action="delete" data-bp-tooltip="<?php esc_attr_e( 'Delete conversation.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Delete conversation.', 'buddypress' ); ?></span> </button> <?php }?> <# if ( undefined !== data.star_link ) { #> <# if ( false !== data.is_starred ) { #> <a role="button" class="message-action-unstar bp-tooltip bp-icons" href="{{data.star_link}}" data-bp-action="unstar" aria-pressed="true" data-bp-tooltip="<?php esc_attr_e( 'Unstar Conversation', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Unstar Conversation', 'buddypress' ); ?></span> </a> <# } else { #> <a role="button" class="message-action-star bp-tooltip bp-icons" href="{{data.star_link}}" data-bp-action="star" aria-pressed="false" data-bp-tooltip="<?php esc_attr_e( 'Star Conversation', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Star Conversation', 'buddypress' ); ?></span> </a> <# } #> <# } #> <a href="../view/{{data.id}}/" class="message-action-view bp-tooltip bp-icons" data-bp-action="view" data-bp-tooltip="<?php esc_attr_e( 'View full conversation and reply.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'View full conversation and reply.', 'buddypress' ); ?></span> </a> <# if ( data.threadOptions ) { #> <span class="bp-messages-hook thread-options"> {{{data.threadOptions}}} </span> <# } #> </div> </header> <div class='preview-message'> {{{data.content}}} </div> <# if ( data.inboxListItem ) { #> <table class="bp-messages-hook inbox-list-item"> <tbody> <tr>{{{data.inboxListItem}}}</tr> </tbody> </table> <# } #> </div> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-single-header"> <h2 id="message-subject" class="message-title single-thread-title">{{{data.subject}}}</h2> <header class="single-message-thread-header"> <# if ( undefined !== data.recipients ) { #> <dl class="thread-participants"> <dt><?php esc_html_e( 'Participants:', 'buddypress' ); ?></dt> <dd> <ul class="participants-list"> <# for ( i in data.recipients ) { #> <li><a href="{{data.recipients[i].user_link}}" class="bp-tooltip" data-bp-tooltip="{{data.recipients[i].user_name}}"><img class="avatar mini" src="{{data.recipients[i].avatar}}" alt="{{data.recipients[i].user_name}}" /></a></li> <# } #> </ul> </dd> </dl> <# } #> <div class="actions"> <?php if(current_user_can('manage_options')){ ?> <button type="button" class="message-action-delete bp-tooltip bp-icons" data-bp-action="delete" data-bp-tooltip="<?php esc_attr_e( 'Delete conversation.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Delete conversation.', 'buddypress' ); ?></span> </button> <?php }?> </div> </header> </script> <script type="text/html" id="tmpl-bp-messages-single-list"> <div class="message-metadata"> <# if ( data.beforeMeta ) { #> <div class="bp-messages-hook before-message-meta">{{{data.beforeMeta}}}</div> <# } #> <a href="{{data.sender_link}}" class="user-link"> <img class="avatar" src="{{data.sender_avatar}}" alt="" /> <strong>{{data.sender_name}}</strong> </a> <time datetime="{{data.date.toISOString()}}" class="activity">{{data.display_date}}</time> <div class="actions"> <# if ( undefined !== data.star_link ) { #> <button type="button" class="message-action-unstar bp-tooltip bp-icons <# if ( false === data.is_starred ) { #>bp-hide<# } #>" data-bp-star-link="{{data.star_link}}" data-bp-action="unstar" data-bp-tooltip="<?php esc_attr_e( 'Unstar Message', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Unstar Message', 'buddypress' ); ?></span> </button> <button type="button" class="message-action-star bp-tooltip bp-icons <# if ( false !== data.is_starred ) { #>bp-hide<# } #>" data-bp-star-link="{{data.star_link}}" data-bp-action="star" data-bp-tooltip="<?php esc_attr_e( 'Star Message', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Star Message', 'buddypress' ); ?></span> </button> <# } #> </div> <# if ( data.afterMeta ) { #> <div class="bp-messages-hook after-message-meta">{{{data.afterMeta}}}</div> <# } #> </div> <# if ( data.beforeContent ) { #> <div class="bp-messages-hook before-message-content">{{{data.beforeContent}}}</div> <# } #> <div class="message-content">{{{data.content}}}</div> <# if ( data.afterContent ) { #> <div class="bp-messages-hook after-message-content">{{{data.afterContent}}}</div> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-single"> <?php bp_nouveau_messages_hook( 'before', 'thread_content' ); ?> <div id="bp-message-thread-header" class="message-thread-header"></div> <?php bp_nouveau_messages_hook( 'before', 'thread_list' ); ?> <ul id="bp-message-thread-list"></ul> <?php bp_nouveau_messages_hook( 'after', 'thread_list' ); ?> <?php bp_nouveau_messages_hook( 'before', 'thread_reply' ); ?> <form id="send-reply" class="standard-form send-reply"> <div class="message-box"> <div class="message-metadata"> <?php bp_nouveau_messages_hook( 'before', 'reply_meta' ); ?> <div class="avatar-box"> <?php bp_loggedin_user_avatar( 'type=thumb&height=30&width=30' ); ?> <strong><?php esc_html_e( 'Send a Reply', 'buddypress' ); ?></strong> </div> <?php bp_nouveau_messages_hook( 'after', 'reply_meta' ); ?> </div><!-- .message-metadata --> <div class="message-content"> <?php bp_nouveau_messages_hook( 'before', 'reply_box' ); ?> <label for="message_content" class="bp-screen-reader-text"><?php _e( 'Reply to Message', 'buddypress' ); ?></label> <div id="bp-message-content"></div> <?php bp_nouveau_messages_hook( 'after', 'reply_box' ); ?> <div class="submit"> <input type="submit" name="send" value="<?php echo esc_attr_x( 'Send Reply', 'button', 'buddypress' ); ?>" id="send_reply_button"/> </div> </div><!-- .message-content --> </div><!-- .message-box --> </form> <?php bp_nouveau_messages_hook( 'after', 'thread_reply' ); ?> <?php bp_nouveau_messages_hook( 'after', 'thread_content' ); ?> </script>Please use this file.
Thanks
October 11, 2018 at 4:35 am #278460Anonymous User 16484011
InactiveHey !
It’s not working or I can’t do properly. Can you please see my file and make a changes to delete only administrator users only show delete private message button ?
<?php /** * BP Nouveau Messages main template. * * This template is used to inject the BuddyPress Backbone views * dealing with user's private messages. * * @since 3.0.0 * @version 3.1.0 */ ?> <div class="subnav-filters filters user-subnav bp-messages-filters" id="subsubnav"></div> <div class="bp-messages-feedback"></div> <div class="bp-messages-content"></div> <script type="text/html" id="tmpl-bp-messages-feedback"> <div class="bp-feedback {{data.type}}"> <span class="bp-icon" aria-hidden="true"></span> <p>{{{data.message}}}</p> </div> </script> <?php /** * This view is used to inject hooks buffer */ ?> <script type="text/html" id="tmpl-bp-messages-hook"> {{{data.extraContent}}} </script> <script type="text/html" id="tmpl-bp-messages-form"> <?php bp_nouveau_messages_hook( 'before', 'compose_content' ); ?> <label for="send-to-input"><?php esc_html_e( 'Send @Username', 'buddypress' ); ?></label> <input type="text" name="send_to" class="send-to-input" id="send-to-input" /> <label for="subject"><?php _e( 'Subject', 'buddypress' ); ?></label> <input type="text" name="subject" id="subject"/> <div id="bp-message-content"></div> <?php bp_nouveau_messages_hook( 'after', 'compose_content' ); ?> <div class="submit"> <input type="button" id="bp-messages-send" class="button bp-primary-action" value="<?php echo esc_attr_x( 'Send', 'button', 'buddypress' ); ?>"/> <input type="button" id="bp-messages-reset" class="text-button small bp-secondary-action" value="<?php echo esc_attr_x( 'Reset', 'form reset button', 'buddypress' ); ?>"/> </div> </script> <script type="text/html" id="tmpl-bp-messages-editor"> <?php // Add a temporary filter on editor buttons add_filter( 'mce_buttons', 'bp_nouveau_messages_mce_buttons', 10, 1 ); wp_editor( '', 'message_content', array( 'textarea_name' => 'message_content', 'teeny' => false, 'media_buttons' => false, 'dfw' => false, 'tinymce' => true, 'quicktags' => false, 'tabindex' => '3', 'textarea_rows' => 5, ) ); // Remove the temporary filter on editor buttons remove_filter( 'mce_buttons', 'bp_nouveau_messages_mce_buttons', 10, 1 ); ?> </script> <script type="text/html" id="tmpl-bp-messages-paginate"> <# if ( 1 !== data.page ) { #> <button id="bp-messages-prev-page"class="button messages-button"> <span class="dashicons dashicons-arrow-left"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Previous page', 'link', 'buddypress' ); ?></span> </button> <# } #> <# if ( data.total_page !== data.page ) { #> <button id="bp-messages-next-page"class="button messages-button"> <span class="dashicons dashicons-arrow-right"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Next page', 'link', 'buddypress' ); ?></span> </button> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-filters"> <li class="user-messages-search" role="search" data-bp-search="{{data.box}}"> <div class="bp-search messages-search"> <?php bp_nouveau_message_search_form(); ?> </div> </li> <li class="user-messages-bulk-actions"></li> </script> <script type="text/html" id="tmpl-bp-bulk-actions"> <input type="checkbox" id="user_messages_select_all" value="1"/> <label for="user_messages_select_all"><?php esc_html_e( 'All Messages', 'buddypress' ); ?></label> <div class="bulk-actions-wrap bp-hide"> <div class="bulk-actions select-wrap"> <label for="user-messages-bulk-actions" class="bp-screen-reader-text"> <?php esc_html_e( 'Select bulk action', 'buddypress' ); ?> </label> <select id="user-messages-bulk-actions"> <# for ( i in data ) { #> <option value="{{data[i].value}}">{{data[i].label}}</option> <# } #> </select> <span class="select-arrow" aria-hidden="true"></span> </div> <button class="messages-button bulk-apply bp-tooltip" type="submit" data-bp-tooltip="<?php echo esc_attr_x( 'Apply', 'button', 'buddypress' ); ?>"> <span class="dashicons dashicons-yes" aria-hidden="true"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Apply', 'button', 'buddypress' ); ?></span> </button> </div> </script> <script type="text/html" id="tmpl-bp-messages-thread"> <div class="thread-cb"> <input class="message-check" type="checkbox" name="message_ids[]" id="bp-message-thread-{{data.id}}" value="{{data.id}}"> <label for="bp-message-thread-{{data.id}}" class="bp-screen-reader-text"><?php esc_html_e( 'Select message:', 'buddypress' ); ?> {{data.subject}}</label> </div> <# if ( ! data.recipientsCount ) { #> <div class="thread-from"> <a class="user-link" href="{{data.sender_link}}"> <img class="avatar" src="{{data.sender_avatar}}" alt="" /> <span class="bp-screen-reader-text"><?php esc_html_e( 'From:', 'buddypress' ); ?></span> <span class="user-name">{{data.sender_name}}</span> </a> </div> <# } else { var recipient = _.first( data.recipients ); #> <div class="thread-to"> <a class="user-link" href="{{recipient.user_link}}"> <img class="avatar" src="{{recipient.avatar}}" alt="" /> <span class="bp-screen-reader-text"><?php esc_html_e( 'To:', 'buddypress' ); ?></span> <span class="user-name">{{recipient.user_name}}</span> </a> <# if ( data.toOthers ) { #> <span class="num-recipients">{{data.toOthers}}</span> <# } #> </div> <# } #> <div class="thread-content" data-thread-id="{{data.id}}"> <div class="thread-subject"> <span class="thread-count">({{data.count}})</span> <a class="subject" href="../view/{{data.id}}/">{{data.subject}}</a> </div> <p class="excerpt">{{data.excerpt}}</p> </div> <div class="thread-date"> <time datetime="{{data.date.toISOString()}}">{{data.display_date}}</time> </div> </script> <script type="text/html" id="tmpl-bp-messages-preview"> <# if ( undefined !== data.content ) { #> <h2 class="message-title preview-thread-title"><?php esc_html_e( 'Active conversation:', 'buddypress' ); ?><span class="messages-title">{{{data.subject}}}</span></h2> <div class="preview-content"> <header class="preview-pane-header"> <# if ( undefined !== data.recipients ) { #> <dl class="thread-participants"> <dt><?php esc_html_e( 'Participants:', 'buddypress' ); ?></dt> <dd> <ul class="participants-list"> <# for ( i in data.recipients ) { #> <li><a href="{{data.recipients[i].user_link}}" class="bp-tooltip" data-bp-tooltip="{{data.recipients[i].user_name}}"><img class="avatar mini" src="{{data.recipients[i].avatar}}" alt="{{data.recipients[i].user_name}}" /></a></li> <# } #> </ul> </dd> </dl> <# } #> <div class="actions"> <button type="button" class="message-action-delete bp-tooltip bp-icons" data-bp-action="delete" data-bp-tooltip="<?php esc_attr_e( 'Delete conversation.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Delete conversation.', 'buddypress' ); ?></span> </button> <# if ( undefined !== data.star_link ) { #> <# if ( false !== data.is_starred ) { #> <a role="button" class="message-action-unstar bp-tooltip bp-icons" href="{{data.star_link}}" data-bp-action="unstar" aria-pressed="true" data-bp-tooltip="<?php esc_attr_e( 'Unstar Conversation', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Unstar Conversation', 'buddypress' ); ?></span> </a> <# } else { #> <a role="button" class="message-action-star bp-tooltip bp-icons" href="{{data.star_link}}" data-bp-action="star" aria-pressed="false" data-bp-tooltip="<?php esc_attr_e( 'Star Conversation', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Star Conversation', 'buddypress' ); ?></span> </a> <# } #> <# } #> <a href="../view/{{data.id}}/" class="message-action-view bp-tooltip bp-icons" data-bp-action="view" data-bp-tooltip="<?php esc_attr_e( 'View full conversation and reply.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'View full conversation and reply.', 'buddypress' ); ?></span> </a> <# if ( data.threadOptions ) { #> <span class="bp-messages-hook thread-options"> {{{data.threadOptions}}} </span> <# } #> </div> </header> <div class='preview-message'> {{{data.content}}} </div> <# if ( data.inboxListItem ) { #> <table class="bp-messages-hook inbox-list-item"> <tbody> <tr>{{{data.inboxListItem}}}</tr> </tbody> </table> <# } #> </div> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-single-header"> <h2 id="message-subject" class="message-title single-thread-title">{{{data.subject}}}</h2> <header class="single-message-thread-header"> <# if ( undefined !== data.recipients ) { #> <dl class="thread-participants"> <dt><?php esc_html_e( 'Participants:', 'buddypress' ); ?></dt> <dd> <ul class="participants-list"> <# for ( i in data.recipients ) { #> <li><a href="{{data.recipients[i].user_link}}" class="bp-tooltip" data-bp-tooltip="{{data.recipients[i].user_name}}"><img class="avatar mini" src="{{data.recipients[i].avatar}}" alt="{{data.recipients[i].user_name}}" /></a></li> <# } #> </ul> </dd> </dl> <# } #> <?php if(current_user_can('manage_options')){ ?> <button type="button" class="message-action-delete bp-tooltip bp-icons" data-bp-action="delete" data-bp-tooltip="<?php esc_attr_e( 'Delete conversation.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Delete conversation.', 'buddypress' ); ?></span> </button> <?php }?> </div> </header> </script> <script type="text/html" id="tmpl-bp-messages-single-list"> <div class="message-metadata"> <# if ( data.beforeMeta ) { #> <div class="bp-messages-hook before-message-meta">{{{data.beforeMeta}}}</div> <# } #> <a href="{{data.sender_link}}" class="user-link"> <img class="avatar" src="{{data.sender_avatar}}" alt="" /> <strong>{{data.sender_name}}</strong> </a> <time datetime="{{data.date.toISOString()}}" class="activity">{{data.display_date}}</time> <div class="actions"> <# if ( undefined !== data.star_link ) { #> <button type="button" class="message-action-unstar bp-tooltip bp-icons <# if ( false === data.is_starred ) { #>bp-hide<# } #>" data-bp-star-link="{{data.star_link}}" data-bp-action="unstar" data-bp-tooltip="<?php esc_attr_e( 'Unstar Message', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Unstar Message', 'buddypress' ); ?></span> </button> <button type="button" class="message-action-star bp-tooltip bp-icons <# if ( false !== data.is_starred ) { #>bp-hide<# } #>" data-bp-star-link="{{data.star_link}}" data-bp-action="star" data-bp-tooltip="<?php esc_attr_e( 'Star Message', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Star Message', 'buddypress' ); ?></span> </button> <# } #> </div> <# if ( data.afterMeta ) { #> <div class="bp-messages-hook after-message-meta">{{{data.afterMeta}}}</div> <# } #> </div> <# if ( data.beforeContent ) { #> <div class="bp-messages-hook before-message-content">{{{data.beforeContent}}}</div> <# } #> <div class="message-content">{{{data.content}}}</div> <# if ( data.afterContent ) { #> <div class="bp-messages-hook after-message-content">{{{data.afterContent}}}</div> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-single"> <?php bp_nouveau_messages_hook( 'before', 'thread_content' ); ?> <div id="bp-message-thread-header" class="message-thread-header"></div> <?php bp_nouveau_messages_hook( 'before', 'thread_list' ); ?> <ul id="bp-message-thread-list"></ul> <?php bp_nouveau_messages_hook( 'after', 'thread_list' ); ?> <?php bp_nouveau_messages_hook( 'before', 'thread_reply' ); ?> <form id="send-reply" class="standard-form send-reply"> <div class="message-box"> <div class="message-metadata"> <?php bp_nouveau_messages_hook( 'before', 'reply_meta' ); ?> <div class="avatar-box"> <?php bp_loggedin_user_avatar( 'type=thumb&height=30&width=30' ); ?> <strong><?php esc_html_e( 'Send a Reply', 'buddypress' ); ?></strong> </div> <?php bp_nouveau_messages_hook( 'after', 'reply_meta' ); ?> </div><!-- .message-metadata --> <div class="message-content"> <?php bp_nouveau_messages_hook( 'before', 'reply_box' ); ?> <label for="message_content" class="bp-screen-reader-text"><?php _e( 'Reply to Message', 'buddypress' ); ?></label> <div id="bp-message-content"></div> <?php bp_nouveau_messages_hook( 'after', 'reply_box' ); ?> <div class="submit"> <input type="submit" name="send" value="<?php echo esc_attr_x( 'Send Reply', 'button', 'buddypress' ); ?>" id="send_reply_button"/> </div> </div><!-- .message-content --> </div><!-- .message-box --> </form> <?php bp_nouveau_messages_hook( 'after', 'thread_reply' ); ?> <?php bp_nouveau_messages_hook( 'after', 'thread_content' ); ?> </script>Thanks
October 10, 2018 at 6:14 pm #278449In reply to: Private Blogs
Prashant Singh
ParticipantHi,
Please put this snippet in child theme’s functions.php file:
function ps_private_posts( $query ) { if(is_user_logged_in()){ if ( $query->is_archive() && $query->is_main_query() ) { $query->set( 'author', get_current_user_id()); } } } add_action( 'pre_get_posts', 'ps_private_posts' );Hopefully, it will help you.
Thanks
October 10, 2018 at 6:59 am #278424Anonymous User 16484011
InactiveHi ! Prashant !
Thanks for your time. But I am zero in buddypress & coding. So, As per your path I find the index file but I can’t get where can I use your above code and where can I add role name administrator ? I put my file here ! Can you please edit it for me ?
<?php /** * BP Nouveau Messages main template. * * This template is used to inject the BuddyPress Backbone views * dealing with user's private messages. * * @since 3.0.0 * @version 3.1.0 */ ?> <div class="subnav-filters filters user-subnav bp-messages-filters" id="subsubnav"></div> <div class="bp-messages-feedback"></div> <div class="bp-messages-content"></div> <script type="text/html" id="tmpl-bp-messages-feedback"> <div class="bp-feedback {{data.type}}"> <span class="bp-icon" aria-hidden="true"></span> <p>{{{data.message}}}</p> </div> </script> <?php /** * This view is used to inject hooks buffer */ ?> <script type="text/html" id="tmpl-bp-messages-hook"> {{{data.extraContent}}} </script> <script type="text/html" id="tmpl-bp-messages-form"> <?php bp_nouveau_messages_hook( 'before', 'compose_content' ); ?> <label for="send-to-input"><?php esc_html_e( 'Send @Username', 'buddypress' ); ?></label> <input type="text" name="send_to" class="send-to-input" id="send-to-input" /> <label for="subject"><?php _e( 'Subject', 'buddypress' ); ?></label> <input type="text" name="subject" id="subject"/> <div id="bp-message-content"></div> <?php bp_nouveau_messages_hook( 'after', 'compose_content' ); ?> <div class="submit"> <input type="button" id="bp-messages-send" class="button bp-primary-action" value="<?php echo esc_attr_x( 'Send', 'button', 'buddypress' ); ?>"/> <input type="button" id="bp-messages-reset" class="text-button small bp-secondary-action" value="<?php echo esc_attr_x( 'Reset', 'form reset button', 'buddypress' ); ?>"/> </div> </script> <script type="text/html" id="tmpl-bp-messages-editor"> <?php // Add a temporary filter on editor buttons add_filter( 'mce_buttons', 'bp_nouveau_messages_mce_buttons', 10, 1 ); wp_editor( '', 'message_content', array( 'textarea_name' => 'message_content', 'teeny' => false, 'media_buttons' => false, 'dfw' => false, 'tinymce' => true, 'quicktags' => false, 'tabindex' => '3', 'textarea_rows' => 5, ) ); // Remove the temporary filter on editor buttons remove_filter( 'mce_buttons', 'bp_nouveau_messages_mce_buttons', 10, 1 ); ?> </script> <script type="text/html" id="tmpl-bp-messages-paginate"> <# if ( 1 !== data.page ) { #> <button id="bp-messages-prev-page"class="button messages-button"> <span class="dashicons dashicons-arrow-left"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Previous page', 'link', 'buddypress' ); ?></span> </button> <# } #> <# if ( data.total_page !== data.page ) { #> <button id="bp-messages-next-page"class="button messages-button"> <span class="dashicons dashicons-arrow-right"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Next page', 'link', 'buddypress' ); ?></span> </button> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-filters"> <li class="user-messages-search" role="search" data-bp-search="{{data.box}}"> <div class="bp-search messages-search"> <?php bp_nouveau_message_search_form(); ?> </div> </li> <li class="user-messages-bulk-actions"></li> </script> <script type="text/html" id="tmpl-bp-bulk-actions"> <input type="checkbox" id="user_messages_select_all" value="1"/> <label for="user_messages_select_all"><?php esc_html_e( 'All Messages', 'buddypress' ); ?></label> <div class="bulk-actions-wrap bp-hide"> <div class="bulk-actions select-wrap"> <label for="user-messages-bulk-actions" class="bp-screen-reader-text"> <?php esc_html_e( 'Select bulk action', 'buddypress' ); ?> </label> <select id="user-messages-bulk-actions"> <# for ( i in data ) { #> <option value="{{data[i].value}}">{{data[i].label}}</option> <# } #> </select> <span class="select-arrow" aria-hidden="true"></span> </div> <button class="messages-button bulk-apply bp-tooltip" type="submit" data-bp-tooltip="<?php echo esc_attr_x( 'Apply', 'button', 'buddypress' ); ?>"> <span class="dashicons dashicons-yes" aria-hidden="true"></span> <span class="bp-screen-reader-text"><?php echo esc_html_x( 'Apply', 'button', 'buddypress' ); ?></span> </button> </div> </script> <script type="text/html" id="tmpl-bp-messages-thread"> <div class="thread-cb"> <input class="message-check" type="checkbox" name="message_ids[]" id="bp-message-thread-{{data.id}}" value="{{data.id}}"> <label for="bp-message-thread-{{data.id}}" class="bp-screen-reader-text"><?php esc_html_e( 'Select message:', 'buddypress' ); ?> {{data.subject}}</label> </div> <# if ( ! data.recipientsCount ) { #> <div class="thread-from"> <a class="user-link" href="{{data.sender_link}}"> <img class="avatar" src="{{data.sender_avatar}}" alt="" /> <span class="bp-screen-reader-text"><?php esc_html_e( 'From:', 'buddypress' ); ?></span> <span class="user-name">{{data.sender_name}}</span> </a> </div> <# } else { var recipient = _.first( data.recipients ); #> <div class="thread-to"> <a class="user-link" href="{{recipient.user_link}}"> <img class="avatar" src="{{recipient.avatar}}" alt="" /> <span class="bp-screen-reader-text"><?php esc_html_e( 'To:', 'buddypress' ); ?></span> <span class="user-name">{{recipient.user_name}}</span> </a> <# if ( data.toOthers ) { #> <span class="num-recipients">{{data.toOthers}}</span> <# } #> </div> <# } #> <div class="thread-content" data-thread-id="{{data.id}}"> <div class="thread-subject"> <span class="thread-count">({{data.count}})</span> <a class="subject" href="../view/{{data.id}}/">{{data.subject}}</a> </div> <p class="excerpt">{{data.excerpt}}</p> </div> <div class="thread-date"> <time datetime="{{data.date.toISOString()}}">{{data.display_date}}</time> </div> </script> <script type="text/html" id="tmpl-bp-messages-preview"> <# if ( undefined !== data.content ) { #> <h2 class="message-title preview-thread-title"><?php esc_html_e( 'Active conversation:', 'buddypress' ); ?><span class="messages-title">{{{data.subject}}}</span></h2> <div class="preview-content"> <header class="preview-pane-header"> <# if ( undefined !== data.recipients ) { #> <dl class="thread-participants"> <dt><?php esc_html_e( 'Participants:', 'buddypress' ); ?></dt> <dd> <ul class="participants-list"> <# for ( i in data.recipients ) { #> <li><a href="{{data.recipients[i].user_link}}" class="bp-tooltip" data-bp-tooltip="{{data.recipients[i].user_name}}"><img class="avatar mini" src="{{data.recipients[i].avatar}}" alt="{{data.recipients[i].user_name}}" /></a></li> <# } #> </ul> </dd> </dl> <# } #> <div class="actions"> <button type="button" class="message-action-delete bp-tooltip bp-icons" data-bp-action="delete" data-bp-tooltip="<?php esc_attr_e( 'Delete conversation.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Delete conversation.', 'buddypress' ); ?></span> </button> <# if ( undefined !== data.star_link ) { #> <# if ( false !== data.is_starred ) { #> <a role="button" class="message-action-unstar bp-tooltip bp-icons" href="{{data.star_link}}" data-bp-action="unstar" aria-pressed="true" data-bp-tooltip="<?php esc_attr_e( 'Unstar Conversation', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Unstar Conversation', 'buddypress' ); ?></span> </a> <# } else { #> <a role="button" class="message-action-star bp-tooltip bp-icons" href="{{data.star_link}}" data-bp-action="star" aria-pressed="false" data-bp-tooltip="<?php esc_attr_e( 'Star Conversation', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Star Conversation', 'buddypress' ); ?></span> </a> <# } #> <# } #> <a href="../view/{{data.id}}/" class="message-action-view bp-tooltip bp-icons" data-bp-action="view" data-bp-tooltip="<?php esc_attr_e( 'View full conversation and reply.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'View full conversation and reply.', 'buddypress' ); ?></span> </a> <# if ( data.threadOptions ) { #> <span class="bp-messages-hook thread-options"> {{{data.threadOptions}}} </span> <# } #> </div> </header> <div class='preview-message'> {{{data.content}}} </div> <# if ( data.inboxListItem ) { #> <table class="bp-messages-hook inbox-list-item"> <tbody> <tr>{{{data.inboxListItem}}}</tr> </tbody> </table> <# } #> </div> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-single-header"> <h2 id="message-subject" class="message-title single-thread-title">{{{data.subject}}}</h2> <header class="single-message-thread-header"> <# if ( undefined !== data.recipients ) { #> <dl class="thread-participants"> <dt><?php esc_html_e( 'Participants:', 'buddypress' ); ?></dt> <dd> <ul class="participants-list"> <# for ( i in data.recipients ) { #> <li><a href="{{data.recipients[i].user_link}}" class="bp-tooltip" data-bp-tooltip="{{data.recipients[i].user_name}}"><img class="avatar mini" src="{{data.recipients[i].avatar}}" alt="{{data.recipients[i].user_name}}" /></a></li> <# } #> </ul> </dd> </dl> <# } #> <div class="actions"> <button type="button" class="message-action-delete bp-tooltip bp-icons" data-bp-action="delete" data-bp-tooltip="<?php esc_attr_e( 'Delete conversation.', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Delete conversation.', 'buddypress' ); ?></span> </button> </div> </header> </script> <script type="text/html" id="tmpl-bp-messages-single-list"> <div class="message-metadata"> <# if ( data.beforeMeta ) { #> <div class="bp-messages-hook before-message-meta">{{{data.beforeMeta}}}</div> <# } #> <a href="{{data.sender_link}}" class="user-link"> <img class="avatar" src="{{data.sender_avatar}}" alt="" /> <strong>{{data.sender_name}}</strong> </a> <time datetime="{{data.date.toISOString()}}" class="activity">{{data.display_date}}</time> <div class="actions"> <# if ( undefined !== data.star_link ) { #> <button type="button" class="message-action-unstar bp-tooltip bp-icons <# if ( false === data.is_starred ) { #>bp-hide<# } #>" data-bp-star-link="{{data.star_link}}" data-bp-action="unstar" data-bp-tooltip="<?php esc_attr_e( 'Unstar Message', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Unstar Message', 'buddypress' ); ?></span> </button> <button type="button" class="message-action-star bp-tooltip bp-icons <# if ( false !== data.is_starred ) { #>bp-hide<# } #>" data-bp-star-link="{{data.star_link}}" data-bp-action="star" data-bp-tooltip="<?php esc_attr_e( 'Star Message', 'buddypress' ); ?>"> <span class="bp-screen-reader-text"><?php esc_html_e( 'Star Message', 'buddypress' ); ?></span> </button> <# } #> </div> <# if ( data.afterMeta ) { #> <div class="bp-messages-hook after-message-meta">{{{data.afterMeta}}}</div> <# } #> </div> <# if ( data.beforeContent ) { #> <div class="bp-messages-hook before-message-content">{{{data.beforeContent}}}</div> <# } #> <div class="message-content">{{{data.content}}}</div> <# if ( data.afterContent ) { #> <div class="bp-messages-hook after-message-content">{{{data.afterContent}}}</div> <# } #> </script> <script type="text/html" id="tmpl-bp-messages-single"> <?php bp_nouveau_messages_hook( 'before', 'thread_content' ); ?> <div id="bp-message-thread-header" class="message-thread-header"></div> <?php bp_nouveau_messages_hook( 'before', 'thread_list' ); ?> <ul id="bp-message-thread-list"></ul> <?php bp_nouveau_messages_hook( 'after', 'thread_list' ); ?> <?php bp_nouveau_messages_hook( 'before', 'thread_reply' ); ?> <form id="send-reply" class="standard-form send-reply"> <div class="message-box"> <div class="message-metadata"> <?php bp_nouveau_messages_hook( 'before', 'reply_meta' ); ?> <div class="avatar-box"> <?php bp_loggedin_user_avatar( 'type=thumb&height=30&width=30' ); ?> <strong><?php esc_html_e( 'Send a Reply', 'buddypress' ); ?></strong> </div> <?php bp_nouveau_messages_hook( 'after', 'reply_meta' ); ?> </div><!-- .message-metadata --> <div class="message-content"> <?php bp_nouveau_messages_hook( 'before', 'reply_box' ); ?> <label for="message_content" class="bp-screen-reader-text"><?php _e( 'Reply to Message', 'buddypress' ); ?></label> <div id="bp-message-content"></div> <?php bp_nouveau_messages_hook( 'after', 'reply_box' ); ?> <div class="submit"> <input type="submit" name="send" value="<?php echo esc_attr_x( 'Send Reply', 'button', 'buddypress' ); ?>" id="send_reply_button"/> </div> </div><!-- .message-content --> </div><!-- .message-box --> </form> <?php bp_nouveau_messages_hook( 'after', 'thread_reply' ); ?> <?php bp_nouveau_messages_hook( 'after', 'thread_content' ); ?> </script>Thanks
October 10, 2018 at 6:42 am #278423In reply to: Private Blogs
raghav2417
ParticipantHi Its a buddypress members dashboard, Where in one of the tabs I have added a page that allows members to write a post, Now these posts are saved as private and I want only the member writing that post to be able to view it, no other members of the website should be able to view it, However when we click on the view post button, It shows all the posts even though they are private but still it shows.
I want the member clicking on view your post should see only posts written by himself/herself.
Below is a link to the video describing the issue.
https://drive.google.com/file/d/1BUNazNHAC7b_3yvXs79GmLHSwSG3uXJU/view?usp=sharingThanks alot
October 9, 2018 at 3:21 pm #278384Topic: Private Blogs
in forum How-to & Troubleshootingraghav2417
ParticipantHi
I need help with my Buddypress website, My website requires a functionality where a user can post the blog using the frontend. This I have achieved, However I want when a user clicks on view blogs, they should be able to see only the blogs written by themselves and any blog of which the current user is not an author should not be visible to the user.I am struggling with this right now and need help.
All I want is the blogs to be private at frontend.Thanks in advance
October 9, 2018 at 10:09 am #278371Anonymous User 16484011
InactiveHi !
It is possible in buddy press to private message delete permission to only admin. Not even the person who sent message.
For example if any role’s user sent private message to anyone but after sending message they can’t see the sent message delete option.
Thanks
October 8, 2018 at 11:11 am #278313Prashant Singh
Participantadd_action( 'messages_message_before_save', 'ps_manage_sending_of_private_message',10,1 ); function ps_manage_sending_of_private_message( $message_object ) { $receivers = $message_object->recipients; foreach($receivers as $receiver){ $receiver_id = $receiver->user_id; $user = get_userdata( $receiver_id ); $user_roles = $user->roles; if ( !in_array( 'your_role_here', $user_roles ) ) { $message_object->recipients = false; } } }Another solution is that, if the user added in the recipient list is not of the role that you want then do not send/save messages.
Please try this also, if do not want the first one.
Thanks
October 8, 2018 at 11:02 am #278311Prashant Singh
Participantfunction ps_remove_private_message_button( $button ) { $user = bp_displayed_user_id(); if ( !empty( $user->roles ) && is_array( $user->roles ) ) { if ( $role != 'your_role_here') { $button = ''; } } return $button; } add_filter( 'bp_get_send_message_button', 'ps_remove_private_message_button', 10 , 1 );Hi,
One solution is to hide private message button from any other user roles and just leave on support user role. Please try the above-given code for the same.
Thanks
October 8, 2018 at 10:45 am #278309Anonymous User 16484011
InactiveHi !
Is it possible in buddypress that users only sent message to support person’s role. OR Specific person’s name already added to massage’s sent to field. Users can’t change it or just direct type subject and message than sent.
Regards
October 7, 2018 at 6:59 pm #278289In reply to: Put pages behind BuddyPress login
micheleestes
Participant@shanebp Thanks for your tip. Will BP Simple Private plugin allow me to make non-BuddyPress pages private, for example, an existing content page that is not part of BuddyPress?
October 7, 2018 at 10:43 am #278248In reply to: Put pages behind BuddyPress login
shanebp
ModeratorAnother alternative: https://wordpress.org/plugins/bp-simple-private/
October 6, 2018 at 3:32 pm #277913Topic: Groups – Content
in forum How-to & Troubleshootingdatg
ParticipantI’m a BuddyPress newbie. I created 2 separate groups. My problem is that whatever content I enter into 1 group is showing up in the other group also. They are not separated.
WP – latest Version
BuddyPress – Version 3.2.0
BP Simple Private – Version 1.4
BP Activity Plus – Version 1.6.4
Website – http://www.byrncenter.orgPlease advise fix. Thanks
October 5, 2018 at 6:10 am #277558Prashant Singh
ParticipantHi,
You can make group private and then members belonging to that group can access only and others have to request to request to join that group and then you can easily deny that if they are from different company.
Please check:
Thanks
October 2, 2018 at 8:56 pm #276938knowitallninja
ParticipantI have discovered that when a user on my site creates a private group, once they clicked the finish button and takes them to the created group it presents them with this:
“This is a private group and you must request group membership in order to join.”
In the back end the user is shown as a member and indeed the group appears in their list of groups but when they click the visit the group they get that warning.
Additionally, if they click the “Request Membership” tab and press submit, this will instantly fix the issue for that specific group (but displays an error initially).
Also if I deactivate and reactivate any plugins I have to do with buddypress (e.g. invite anyone, buddypress for learndash) then this also fixes the issue for that specific group.
This is strange and really unwanted behaviour. I have removed child theme elements related to groups, deactivated associated plugins (those two I listed above) but this doesn’t fix the problem so it seems to be something about buddypress itself. But this can’t be intended functionality.
Any advice on what is going wrong and a possible fix?
October 1, 2018 at 1:37 pm #276882In reply to: Send Invites Adds Users to Group Automatically
Prashant Singh
ParticipantHi,
Please check this thread once https://buddypress.org/support/topic/automatic-add-to-groups-including-private-ones/
Thanks
September 30, 2018 at 7:31 pm #276863In reply to: DIrect messaging problem
starvoters1
ParticipantI had this issue too. I just switched from the new templates back to Buddypress legacy and it is now working to click the private message button and you can start composing the message to the user immediately. It is something in the buddypress nouveau template.
September 25, 2018 at 4:14 pm #276765In reply to: Private Message suggestions
ajuuls
ParticipantI wouldn’t post them public. I just noticed there’s not private message. Anywhere i can find you?
September 25, 2018 at 2:12 pm #276745ajuuls
ParticipantPrashant Singh, you seem quiet good to BP and coding within that area. If you know how to fix one of my following problems, you could save my day:
1. https://buddypress.org/support/topic/private-message-suggestions/
2. https://buddypress.org/support/topic/redirect-from-page-if-not-logged-in/September 24, 2018 at 8:10 pm #276701Topic: Private Message suggestions
in forum How-to & Troubleshootingajuuls
ParticipantBy default, on the messages compose screen, autocomplete only works for friends. We’ve disable the friend feature and would like some kind of a code/shippet or even plugin – so it suggest between all members. I’ve seen a post that it was possible, buuuut it was such a old post (6 years ago).
Hopefully can someone save me and come up with a good solution.
proweb01
ParticipantI installed this plugin and all PM spam stopped ever since. It requires a person to be your friend before they can PM you. https://wordpress.org/plugins/buddypress-private-message-for-friends-only/
DL
Participant@prashantvatsh Thanks, I didn’t realize that every user could see the /members page and then if they click to a members profile they see the public and private messaging buttons too.
It seems that every new registration on the site automatically becomes a Buddypress member. So then they can see the membership list and message any other user without being a member of any group.
This isn’t good, easy for manual spammers to register and send PM spam to members.
DL
ParticipantI just started using Buddypress on a site and the Buddypress members all got a PM from a new user HARIATTA11 that registered this morning.
What I don’t understand is how the new member, a subscriber with no group memberships (both buddypress groups are private) was able to PM everyone? Where did they see the members list to know all the usernames?
September 19, 2018 at 5:28 pm #276577In reply to: BuddyPress pages not secure
shanebp
ModeratorThere are a few plugins that can do that, for example:
-
AuthorSearch Results