Please try this PHP snippet
add_filter(
'hivepress/v1/models/listing/attributes',
function($attributes){
if(isset($attributes['price_extras'])){
$attributes['price_extras']['edit_field']['fields']['type']['options'] = [
'per_order' => 'per booking',
];
}
return $attributes;
},
1000
);
add_filter( 'hivepress/v1/models/listing/fields', 'change_price_extras_custom', 200, 2 );
add_filter( 'hivepress/v1/forms/listing_update', 'change_price_extras_custom', 200, 2 );
add_filter( 'hivepress/v1/meta_boxes/listing_attributes', 'change_price_extras_custom', 200 );
add_filter( 'hivepress/v1/models/vendor/fields', 'change_price_extras_custom', 200, 2 );
add_filter( 'hivepress/v1/forms/vendor_update', 'change_price_extras_custom', 200, 2 );
add_filter( 'hivepress/v1/meta_boxes/vendor_attributes', 'change_price_extras_custom', 200 );
function change_price_extras_custom($form, $model = null){
$is_form = strpos( current_filter(), 'form' );
$is_model = strpos( current_filter(), 'model' );
$is_listing = strpos( current_filter(), 'listing' );
$per_vendor = get_option( 'hp_booking_per_vendor' );
if ( ! $is_listing && ! $per_vendor ) {
return $form;
}
$fields = [];
if ( $is_model ) {
$fields = $form;
} else {
$fields = $form['fields'];
}
$listing_id = null;
if ( $is_listing ) {
if ( $is_model ) {
$listing_id = $model->get_id();
} elseif ( $is_form ) {
$listing_id = $model->get_model()->get_id();
} else {
$listing_id = get_the_ID();
}
if ( ! $listing_id || ! hivepress()->booking->is_booking_enabled( $listing_id ) ) {
return $form;
}
}
if ( $is_listing && hivepress()->get_version( 'marketplace' ) ) {
if ( get_option( 'hp_listing_allow_price_extras' ) ) {
$fields['price_extras']['fields']['type'] = [
'type' => 'select',
'options' => [
'per_order' => 'per booking',
],
'_order' => 30,
];
}
}
if ( $is_model ) {
$form = $fields;
} else {
$form['fields'] = $fields;
}
return $form;
}