_migrate_award( int $post_id, string $type )
Migrate meta values for a single award.
Description Description
Performs the following updates:
- Copies lifterlms_user_postmeta user data to the post_author property.
- Moves the title from postmeta to the post_title property.
- Moves the template relationship from meta to the post_parent property.
- Moves the award image from custom meta to the post’s featured image.
And then deletes the previous metadata after performing the necessary updates.
Parameters Parameters
- $post_id
-
(int) (Required) WP_Post ID.
- $type
-
(string) (Required) Award type, either "achievement" or "certificate".
Return Return
(bool) true
if there was an image to migrate, else false
.
Source Source
File: includes/functions/updates/llms-functions-updates-600.php
function _migrate_award( $post_id, $type ) { $obj = 'achievement' === $type ? new \LLMS_User_Achievement( $post_id ) : new \LLMS_User_Certificate( $post_id ); $updates = array( 'awarded' => $obj->get_earned_date( 'Y-m-d H:i:s' ), 'author' => $obj->get_user_id(), ); $title = get_post_meta( $post_id, "_llms_{$type}_title", true ); if ( $title ) { $updates['title'] = $title; } $template = get_post_meta( $post_id, "_llms_{$type}_template", true ); if ( $template ) { $updates['parent'] = $template; } $obj->set_bulk( $updates ); $image_migrated = _migrate_image( $post_id, $type ); if ( 'achievement' === $type ) { _migrate_achievement_content( $post_id ); } delete_post_meta( $post_id, "_llms_{$type}_title" ); delete_post_meta( $post_id, "_llms_{$type}_template" ); return $image_migrated; }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
6.0.0 | Introduced. |