diff --git a/src/wp-includes/option.php b/src/wp-includes/option.php
index 842981d..5136d69 100644
--- a/src/wp-includes/option.php
+++ b/src/wp-includes/option.php
@@ -1682,3 +1682,88 @@
 	}
 	return $result;
 }
+
+/**
+ * Add metadata field to a network.
+ *
+ * @since 4.5.0
+ *
+ * @param int    $network_id Network ID.
+ * @param string $meta_key   Metadata name.
+ * @param mixed  $meta_value Metadata value. Must be serializable if non-scalar.
+ * @param bool   $unique     Optional. Whether the same key should not be added.
+ *                           Default false.
+ * @return int|false Meta ID on success, false on failure.
+ */
+function add_network_meta( $network_id, $meta_key, $meta_value, $unique = false ) {
+	return add_metadata( 'site', $network_id, $meta_key, $meta_value, $unique );
+}
+
+/**
+ * Remove metadata matching criteria from a network.
+ *
+ * You can match based on the key, or key and value. Removing based on key and
+ * value, will keep from removing duplicate metadata with the same key. It also
+ * allows removing all metadata matching key, if needed.
+ *
+ * @since 4.5.0
+ *
+ * @param int    $network_id Network ID.
+ * @param string $meta_key   Metadata name.
+ * @param mixed  $meta_value Optional. Metadata value. Must be serializable if
+ *                           non-scalar. Default empty.
+ * @return bool True on success, false on failure.
+ */
+function delete_network_meta( $network_id, $meta_key, $meta_value = '' ) {
+	return delete_metadata( 'site', $network_id, $meta_key, $meta_value );
+}
+
+/**
+ * Retrieve network meta field for a network.
+ *
+ * @since 4.5.0
+ *
+ * @param int    $network_id Network ID.
+ * @param string $key        Optional. The meta key to retrieve. By default, returns
+ *                           data for all keys. Default empty.
+ * @param bool   $single     Optional. Whether to return a single value. Default false.
+ * @return mixed Will be an array if $single is false. Will be value of meta data
+ *               field if $single is true.
+ */
+function get_network_meta( $network_id, $key = '', $single = false ) {
+	return get_metadata( 'site', $network_id, $key, $single );
+}
+
+/**
+ * Update network meta field based on network ID.
+ *
+ * Use the $prev_value parameter to differentiate between meta fields with the
+ * same key and network ID.
+ *
+ * If the meta field for the network does not exist, it will be added.
+ *
+ * @since 4.5.0
+ *
+ * @param int    $network_id Network ID.
+ * @param string $meta_key   Metadata key.
+ * @param mixed  $meta_value Metadata value. Must be serializable if non-scalar.
+ * @param mixed  $prev_value Optional. Previous value to check before removing.
+ *                           Default empty.
+ * @return int|bool Meta ID if the key didn't exist, true on successful update,
+ *                  false on failure.
+ */
+function update_network_meta( $network_id, $meta_key, $meta_value, $prev_value = '' ) {
+	return update_metadata( 'site', $network_id, $meta_key, $meta_value, $prev_value );
+}
+
+/**
+ * Delete everything from network meta matching meta key.
+ *
+ * @since 4.5.0
+ *
+ * @param string $network_meta_key Key to search for when deleting.
+ * @return bool Whether the network meta key was deleted from the database.
+ */
+function delete_network_meta_by_key( $network_meta_key ) {
+	return delete_metadata( 'site', null, $network_meta_key, '', true );
+}
