summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/jetpack/extensions/blocks/map/map.php')
-rw-r--r--plugins/jetpack/extensions/blocks/map/map.php37
1 files changed, 37 insertions, 0 deletions
diff --git a/plugins/jetpack/extensions/blocks/map/map.php b/plugins/jetpack/extensions/blocks/map/map.php
new file mode 100644
index 00000000..6e8c9d2a
--- /dev/null
+++ b/plugins/jetpack/extensions/blocks/map/map.php
@@ -0,0 +1,37 @@
+<?php
+/**
+ * Map block.
+ *
+ * @since 6.8.0
+ *
+ * @package Jetpack
+ */
+
+jetpack_register_block(
+ 'jetpack/map',
+ array(
+ 'render_callback' => 'jetpack_map_block_load_assets',
+ )
+);
+
+/**
+ * Map block registration/dependency declaration.
+ *
+ * @param array $attr Array containing the map block attributes.
+ * @param string $content String containing the map block content.
+ *
+ * @return string
+ */
+function jetpack_map_block_load_assets( $attr, $content ) {
+ $dependencies = array(
+ 'lodash',
+ 'wp-element',
+ 'wp-i18n',
+ );
+
+ $api_key = Jetpack_Options::get_option( 'mapbox_api_key' );
+
+ Jetpack_Gutenberg::load_assets_as_required( 'map', $dependencies );
+
+ return preg_replace( '/<div /', '<div data-api-key="' . esc_attr( $api_key ) . '" ', $content, 1 );
+}