यहां एक समाधान है जो अनंत लूप को रोकने के लिए एक स्थिर चर का उपयोग करता है। यह आपको wp_update_post()
एक फ़ंक्शन के अंदर सुरक्षित रूप से कॉल करने की अनुमति देता है जो कि हुक है save_post
।
function km_set_title_on_save( $post_id ) {
// Set this variable to false initially.
static $updated = false;
// If title has already been set once, bail.
if ( $updated ) {
return;
}
// Since we're updating this post's title, set this
// variable to true to ensure it doesn't happen again.
$updated = true;
$date = get_post_meta( $post_id, 'rating_date', true );
$date_formatted = date( 'l, d.m.Y', strtotime( $date ) );
// Update the post's title.
wp_update_post( [
'ID' => $post_id,
'post_title' => 'TV ratings for ' . $date_formatted,
] );
}
add_action( 'save_post', 'km_set_title_on_save' );
नोट: इस कार्यक्षमता को एक निश्चित पोस्ट प्रकार तक सीमित करने के लिए, save_post के बजाय save_post _ {$ post-> post_type}
हुक का उपयोग करें।
register_post_type()
कॉल को शामिल करने के लिए अपने प्रश्न को संपादित करें।