24 lines
905 B
PHP
24 lines
905 B
PHP
<?php
|
|
/**
|
|
* Bootstraps synchronization (collaborative editing).
|
|
*
|
|
* @package gutenberg
|
|
*/
|
|
|
|
/**
|
|
* Initializes the collaborative editing secret.
|
|
*/
|
|
function gutenberg_rest_api_init_collaborative_editing() {
|
|
$gutenberg_experiments = get_option( 'gutenberg-experiments' );
|
|
if ( ! $gutenberg_experiments || ! array_key_exists( 'gutenberg-sync-collaboration', $gutenberg_experiments ) ) {
|
|
return;
|
|
}
|
|
$collaborative_editing_secret = get_site_option( 'collaborative_editing_secret' );
|
|
if ( ! $collaborative_editing_secret ) {
|
|
$collaborative_editing_secret = wp_generate_password( 64, false );
|
|
}
|
|
add_site_option( 'collaborative_editing_secret', $collaborative_editing_secret );
|
|
|
|
wp_add_inline_script( 'wp-sync', 'window.__experimentalCollaborativeEditingSecret = "' . $collaborative_editing_secret . '";', 'before' );
|
|
}
|
|
add_action( 'admin_init', 'gutenberg_rest_api_init_collaborative_editing' );
|