Automattic\WooCommerce\Internal\Admin\Notes
WooSubscriptionsNotes::prune_inactive_subscription_notes
Removes notes for product_ids no longer active on this site.
Метод класса: WooSubscriptionsNotes{}
Хуков нет.
Возвращает
null. Ничего (null).
Использование
$WooSubscriptionsNotes = new WooSubscriptionsNotes(); $WooSubscriptionsNotes->prune_inactive_subscription_notes();
Код WooSubscriptionsNotes::prune_inactive_subscription_notes() WooSubscriptionsNotes::prune inactive subscription notes WC 10.5.2
public function prune_inactive_subscription_notes() {
$active_product_ids = $this->get_subscription_active_product_ids();
$data_store = Notes::load_data_store();
$note_ids = $data_store->get_notes_with_name( self::SUBSCRIPTION_NOTE_NAME );
foreach ( (array) $note_ids as $note_id ) {
$note = Notes::get_note( $note_id );
$product_id = $this->get_product_id_from_subscription_note( $note );
if ( ! empty( $product_id ) ) {
if ( ! in_array( $product_id, $active_product_ids, true ) ) {
$note->delete();
}
}
}
}