bp_activity_post_type_update( WP_Post|null $post = null )
Update the activity item for a custom post type entry.
Description
Parameters
- $post
-
(Optional) Post item.
Default value: null
Return
(null|WP_Error|bool) True on success, false on failure.
Source
File: bp-activity/bp-activity-functions.php
function bp_activity_post_type_update( $post = null ) {
if ( ! is_a( $post, 'WP_Post' ) ) {
return;
}
// Get the post type tracking args.
$activity_post_object = bp_activity_get_post_type_tracking_args( $post->post_type );
if ( empty( $activity_post_object->action_id ) ) {
return;
}
$activity_id = bp_activity_get_activity_id( array(
'component' => $activity_post_object->component_id,
'item_id' => get_current_blog_id(),
'secondary_item_id' => $post->ID,
'type' => $activity_post_object->action_id,
) );
// Activity ID doesn't exist, so stop!
if ( empty( $activity_id ) ) {
return;
}
// Delete the activity if the post was updated with a password.
if ( ! empty( $post->post_password ) ) {
bp_activity_delete( array( 'id' => $activity_id ) );
}
// Update the activity entry.
$activity = new BP_Activity_Activity( $activity_id );
if ( ! empty( $post->post_content ) ) {
$activity_summary = bp_activity_create_summary( $post->post_content, (array) $activity );
// Backward compatibility filter for the blogs component.
if ( 'blogs' == $activity_post_object->component_id ) {
$activity->content = apply_filters( 'bp_blogs_record_activity_content', $activity_summary, $post->post_content, (array) $activity, $post->post_type );
} else {
$activity->content = $activity_summary;
}
}
// Save the updated activity.
$updated = $activity->save();
/**
* Fires after the updating of an activity item for a custom post type entry.
*
* @since BuddyPress 2.2.0
* @since BuddyPress 2.5.0 Add the post type tracking args parameter
*
* @param WP_Post $post Post object.
* @param BP_Activity_Activity $activity Activity object.
* @param object $activity_post_object The post type tracking args object.
*/
do_action( 'bp_activity_post_type_updated', $post, $activity, $activity_post_object );
return $updated;
}
Changelog
| Version | Description |
|---|---|
| BuddyPress 2.2.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.