Try this:
function test1() {
return 'this not';
}
@boonebgorges YES it works!!!
But when I tried to show a custom-field stops working. This is my example code:
function test1(){
global $post;
$test_customfield = get_post_meta($post->ID, 'txt_documento', true);
return $test_customfield;
}
function record_post_activity_content($activity_content, $post, $post_permalink ){
if( $post->post_type == 'post' ) {
$not = test1();
$activity_content = $not.'this yes';
}
return $activity_content;
}
add_filter( 'bp_blogs_activity_new_post_content', 'record_post_activity_content',1, 3 );
Thanks!
You’ll have to do some more debugging. It’s probably the case that $test_customfield
is empty; try var_dump( $test_customfield );
just after you’ve defined the variable, just to be sure. It’s also possible that the $post
global does not contain the information that you want at this particular point in the WP load order. Try passing the $post
object to your test function:
function test1( $the_post ) {
$post_id = $the_post->ID;
// ...
}
// ...
$not = test1( $post );
// ...
@boonebgorges,
With this code I have NO results:
function test1(){
global $post;
$test_customfield = get_post_meta($post->ID, 'txt_documento', true);
return $test_customfield;
}
//function test1( $the_post ) {
// $post_id = $the_post->ID;
//}
function record_post_activity_content($activity_content, $post, $post_permalink ){
if( $post->post_type == 'post' ) {
$not = var_dump( $test_customfield );
$activity_content = $not.'this yes';
}
return $activity_content;
}
add_filter( 'bp_blogs_activity_new_post_content', 'record_post_activity_content',1, 3 );
But I’ve tested this another code and the result is “NULL”:
add_action( 'genesis_post_content', 'custom_field_in_content' );
function custom_field_in_content() {
if ( in_category('documentos') ) {
$ay = var_dump( $test_customfield );
echo $ay;
}else {
}
}
I cant find the problem. Thanks for all your support
Hi, I simplify the code and get same result: the text “this yes” appears, and the custom-field not.
add_filter( 'bp_blogs_activity_new_post_content', 'record_post_activity_content' );
function record_post_activity_content(){
return get_post_meta($post->ID, 'txt_link', true).'this yes';
}
I think the problem is that i can’t get the post id. I tried with this code and it works:
return get_post_meta(577, 'txt_link', true).'This1';
I tried in many ways but I cant get the post-id to work with bp_blogs_activity_new_post_content filter
I know the problem: is the WPUF plugin. Now, the developer send me the solution:
function wpufe_modify_bp_activity( $post_id ) {
global $wpdb, $user_ID;
//get the last inserted activity
$activity = $wpdb->get_row( "SELECT * FROM {$wpdb->prefix}bp_activity WHERE secondary_item_id = $post_id AND user_id = $user_ID");
// if activity found, update the activity with custom field
if ( $activity ) {
$content = $activity->content . '... Custom Field: ' . get_post_meta( $post_id, 'custom_field', true );
$wpdb->update(
$wpdb->prefix . 'bp_activity',
array( 'content' => $content ),
array( 'id' => $activity->id )
);
}
}
add_action( 'wpuf_add_post_after_insert', 'wpufe_modify_bp_activity' );
http://wedevs.com/support/topic/custom-fields-in-budypress-activity-content/#post-5889
Greetings