数字化技能提升教程,数字化时代生存宝典

数字化百科 / 产品文档 / WordPress:Function Reference/post meta Function Examples

WordPress:Function Reference/post meta Function Examples

查看全部产品文档命名空间:WordPress

Description

The following is a detailed example for the usage of the add_post_meta, delete_post_meta, update_post_meta, and get_post_meta functions.

Example

%%%ID, 'update', 'Happy', 'Bon Jovi - It's My Life' );
  • ******************/
function mood_music( $post_id, $action = 'get', $mood = 0, $listening_to = 0 ) { //Let's make a switch to handle the three cases of 'Action' switch ($action) { case 'update' : if( ! $mood && ! $listening_to ) //If nothing is given to update, end here return false; //add_post_meta usage: //add_post_meta( $post_id, $meta_key, $meta_value, $unique = false ) //If the $mood variable is supplied, //add a new key named 'mood', containing that value. //If the 'mood' key already exists on this post, //this command will simply add another one. if( $mood ) { add_post_meta( $post_id, 'mood', $mood ); return true; } //update_post_meta usage: //update_post_meta( $post_id, $meta_key, $meta_value ) //If the $listening_to variable is supplied, //add a new key named 'listening_to', containing that value. //If the 'listening_to' key already exists on this post, //this command will update it to the new value if( $listening_to ) { add_post_meta( $post_id, 'listening_to', $listening_to, true ) or update_post_meta( $post_id, 'listening_to', $listening_to ); return true; } case 'delete' : //delete_post_meta usage: //delete_post_meta( $post_id, $meta_key, $prev_value = ' ' ) //This will delete all instances of the following keys from the given post delete_post_meta( $post_id, 'mood' ); delete_post_meta( $post_id, 'listening_to' ); //To only delete 'mood' if it's value is 'sad': //delete_post_meta( $post_id, 'mood', 'sad' ); break; case 'get' : //get_post_custom usage: //get_post_meta( $post_id, $meta_key, $single value = false ) //$stored_moods will be an array containing all values of the meta key 'mood' $stored_moods = get_post_meta( $post_id, 'mood' ); //$stored_listening_to will be the first value of the key 'listening_to' $stored_listening_to = get_post_meta( $post_id, 'listening_to', 'true' );

//Now we need a nice ouput format, so that
//the user can implement it how he/she wants:
//ie. echo mood_music( $post->ID, 'get' );

$return = '

';
if ( ! empty( $stored_moods ) )
$return .= 'Current Mood: ';
foreach( $stored_moods as $mood )
$return .= $mood . ', ';
$return .= '
';
if ( ! empty( $stored_moods ) ) {
$return .= 'Currently Listening To: ';
$return .= $stored_listening_to;
}
$return .= '
';

return $return;
default :
return false;
break;
} //end switch
} //end function
?>%%%