Hi,
I am trying to place information from certain profile fields in the sidebar whenever a persons profile is displayed. I think I also want to to stay there in the sidebar as long as a user is viewing that profile. Anyhow, I can get it to display and work like that except for the formatting. No matter how the users fills in that data using the WYSIWYG editor it all runs together. Here is the code I am using:
$profile = bp_get_profile_field_data('city partners');
if ( !empty($data) && strlen($data) > 0 ) {
echo "<h4>City Resources</h4>";
echo $profile;
}
It displays all together like this:
City Hall Ut et dui pulvinar diam suscipit cursus. Nulla est tellus, rutrum non euismod nec, rutrum et ligula. Etiam eget nunc congue, convallis dolor eget, volutpat arcu. Sed velit tellus, pretium eu ante eu, auctor laoreet sapien. Gramercy Park Suspendisse sollicitudin tempus mauris, quis sollicitudin nisi euismod ac. Sed sit amet tincidunt nibh. Aenean non magna mauris. Link here
or if a single line it all just runs together. In the body of the profile page it looks like it does in the editor and how it should with the formatting:
City Hall
Ut et dui pulvinar diam suscipit cursus. Nulla est tellus, rutrum non euismod nec, rutrum et ligula. Etiam eget nunc congue, convallis dolor eget, volutpat arcu. Sed velit tellus, pretium eu ante eu, auctor laoreet sapien.
Gramercy Park
Suspendisse sollicitudin tempus mauris, quis sollicitudin nisi euismod ac. Sed sit amet tincidunt nibh. Aenean non magna mauris. Link here
———-
All nice and neat which is how I want it. How can I keep the formatting, spacing, line breaks, etc.?
Thanks,
Stan
I am running the BuddyPress 4.1.0 and WP 4.4.9.
@shanebp – Thanks. I’ve actually figured the entire thing out. Posting code below in case anyone else needs it.
function denial_email_creation() {
// Do not create if it already exists and is not in the trash
$post_exists = post_exists( '{{denier.name}} denied your friend request.' );
if ( $post_exists != 0 && get_post_status( $post_exists ) == 'publish' )
return;
// Create post object
$my_post = array(
'post_title' => __( '{{denier.name}} denied your friend request.', 'buddypress' ),
'post_content' => __( '<p>{{denier.name}} denied your friend request. And the rest of your email content.......</p>', 'buddypress' ), // HTML email content.
'post_excerpt' => __( '<p>{{denier.name}} denied your friend request. And the rest of your email content.......</p>', 'buddypress' ), // Plain text email content.
'post_status' => 'publish',
'post_type' => bp_get_email_post_type() // this is the post type for emails
);
// Insert the email post into the database
$post_id = wp_insert_post( $my_post );
if ( $post_id ) {
// add our email to the taxonomy term 'friendship_denied'
// Email is a custom post type, therefore use wp_set_object_terms
$tt_ids = wp_set_object_terms( $post_id, 'friendship_denied', bp_get_email_tax_type() );
foreach ( $tt_ids as $tt_id ) {
$term = get_term_by( 'term_taxonomy_id', (int) $tt_id, bp_get_email_tax_type() );
wp_update_term( (int) $term->term_id, bp_get_email_tax_type(), array(
'description' => 'Recipients Friendship Denied',
) );
}
}
}
add_action( 'bp_core_install_emails', 'denial_email_creation' );
add_action( 'friends_friendship_rejected', function( $friendship_id, $friendship ) {
$user_id = $friendship->initiator_user_id;
$denier_id = $friendship->friend_user_id;
$args = array(
'tokens' => array(
'site.name' => get_bloginfo('name'),
'denier.name' => bp_core_get_user_displayname( $denier_id ),
),
);
bp_send_email( 'friendship_denied', $user_id, $args ); // Send your email here.
}, 10, 2 );
Then you must have a conflict somewhere. Have you tried running with just BuddyPress Active and with a default theme such as 2016?
I found that if I made this file directory in my theme (as per Theme Compatibility Codex) I could resolve the issue with the Compose field:
/buddypress/common/js-templates/messages/index.php
So for anyone else looking for messaging template changes. It’s located in:
plugins/buddypress/bp-templates/bp-nouveau/buddypress/common/js-templates/messages/index.php
Anyone looking for the search field for members list, it’s located in:
/plugins/buddypress/bp-templates/bp-nouveau/buddypress/common/search/search-form.php
Check out plugins/buddypress/bp-templates/legacy/members/profile/profile-loop.php this is how BP displays the profile group information, you should be able to use this as a basis for what you want to do.
One user of my site results in buddypress not recently active, even if it is active or have been active recently.
Where is the problem? Ideas?
I want the “XXXX became a registered member” updates to stop appearing in my sitewide activity stream.
I tried using the code recommended in this thread: https://buddypress.org/support/topic/how-can-i-hide-new-registered-member-update-from-activity-streams/
– in both my child theme and bp-custom.php
But it’s not working for me.
Hope someone can help 🙂
Also, when using the plugin… the search results pull up User Names versus the actual Buddypress member’s name as they did prior to using this function…
HEALTH COACH DIRECTORY
Have you tried using the hook provided in the group > create template?
For example, in this file: buddypress\bp-templates\bp-legacy\buddypress\groups\create.php
Look for the group avatar section and use this hook:
do_action( 'bp_after_group_avatar_creation_step' );
Hi there,
That’s not a file you can overload, you can only overload files in the buddypress/bp-templates/bp-nouveau(bp-legacy)/buddypress directory.
Hello @sbrajesh,
I’m trying to copy bp-friends-template.php file into child theme. I have tried many times still not able to understand how to set the correct path in child theme.
Plugin file path: buddypress\bp-friends\bp-friends-template.php
Any suggestion.
Thanks
Thanks all!
Update: So I may have been a bit hasty. WooCommerce kindly did a test, and like @shanebp was also unable to replicate the results of the issue with friend requests not accepting.
Despite infinite load I was experiencing, I could right click the “accept” or “refuse” button with a friend request, & copy the URL that indicated the nonce and open it in a new tab and then it would accept/refuse the friend request.
After scouring for hours and hours through different *old* threads regarding similar issues I did discover a few individuals that seemed to have the same issue, but there was no resolution presented. I figured that there were several people, then (at that time) having the issue, and if it’s just me having the issue now – perhaps, it was something wrong with my copy of BuddyPress…
So, I finally decided to delete my installation of Buddypress directly through sFTP and reinstall a clean copy of it from https://wordpress.org/plugins/buddypress/ directly back to the sFTP. I guess that was the solution.
I am still unsure what the issue was, or why it was (at least on my installation) causing this error.
However, I am now pleased to report that the issue is resolved and that I am able to accept friend requests.
Thus it merely appeared that it was WooCommerce because this was the plugin that seemed to trigger the infinite load when I was doing disable plugin testing to see where conflict appeared.
Thanks again!
BuddyPress does not handle payments or paywalls.
You’ll need a paid membership plugin.
There are some free ones in the WP plugin repo that you could try out.
So, your question is not really about BuddyPress.
Ultimately the decision on how / what to implement will depend on your research and the specifics of your project.
I thought it was a problem with my Events plugin but i uninstalled it and the problem persisted until i uninstalled buddypress.
I’ve just looked at a test server and I’m getting the same issue. If I edit the profile I can see the extra tab and edit the profile fields it contains, but when I view the profile it only shows the Base profile group.
Would you mind rasing this as a bug on trac?
What I just did is a fresh install of the buddypress plugin, but the problem existed before and changed nothing after the fresh install. That was installed by FTP and I overwrite the existing buddy press plugin.
Thanks, have you overloaded any of the BP template files? located in themes/yourchildtheme/buddypress
You can chekc in Settings>>BuddyPress>>Options
Use the filter hooks to modify the output.
For example, see the filter hook for: bp_message_thread_from()
Do a search in the buddypress files for bp_is_user or bp_is_, bp has a number of functions such as bp_is_user_profile() or bp_is_user_activity, function bp_is_user_profile_edit(), bp_is_group() which confirm if the user is accessing different pages.
Hello guys,
I’m trying to change the labels in a few different areas, specifically the Member’s Directory placeholder text and the Compose a Message label “Send @Username” under Profile>Messages, but I’m finding that there isn’t really an easy way to do this in Nouveau. I’m also having a tough time figuring out where to change the template. I tried this post (making the .POT file). https://codex.buddypress.org/getting-started/customizing/customizing-labels-messages-and-urls/
But the text isn’t within the language file, it only contains the text from the legacy theme.
I’ve gotten the membership placeholder text to be changed by writing a custom js file, but trying the same thing for the “Send @Username” label does not always work correctly.
Here is my current code:
$(document).ready(function(){
if($('#dir-members-search')){
$('#dir-members-search').attr('placeholder','Search members by name, discipline, position, etc....');
}
//currently doesn't work. Change Compose Label for Who to send to.
$("#send_message_form label[for='send-to-input']").text('Send to User by Username (starting with @)');
});
I’d much rather not have to change the text after document.ready because it loads and the user can see the original text for a bit before the text changes.
When the user clicks away from “Compose” and back to it, the text doesn’t always show my replacement text.
Thanks for your reply. I thought it must be a feature of BuddyPress, but I have discovered it is a problem with Events Manager Pro.
Hi there,
I’m not entirely certain what you are asking for. By default BuddyPress does not ask for physical addresses, have these been added to the users extended profile or are you referring to some other feature?
You should raise this as a feature request on BuddyPress Trac