Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/wp-inclu...
File: class-wp-customize-manager.php
array(
[4500] Fix | Delete
'priority' => 'ASC',
[4501] Fix | Delete
'instance_number' => 'ASC',
[4502] Fix | Delete
),
[4503] Fix | Delete
'ASC',
[4504] Fix | Delete
true
[4505] Fix | Delete
);
[4506] Fix | Delete
$panels = array();
[4507] Fix | Delete
[4508] Fix | Delete
foreach ( $this->panels as $panel ) {
[4509] Fix | Delete
if ( ! $panel->check_capabilities() ) {
[4510] Fix | Delete
continue;
[4511] Fix | Delete
}
[4512] Fix | Delete
[4513] Fix | Delete
$panel->sections = wp_list_sort(
[4514] Fix | Delete
$panel->sections,
[4515] Fix | Delete
array(
[4516] Fix | Delete
'priority' => 'ASC',
[4517] Fix | Delete
'instance_number' => 'ASC',
[4518] Fix | Delete
),
[4519] Fix | Delete
'ASC',
[4520] Fix | Delete
true
[4521] Fix | Delete
);
[4522] Fix | Delete
$panels[ $panel->id ] = $panel;
[4523] Fix | Delete
}
[4524] Fix | Delete
$this->panels = $panels;
[4525] Fix | Delete
[4526] Fix | Delete
// Sort panels and top-level sections together.
[4527] Fix | Delete
$this->containers = array_merge( $this->panels, $this->sections );
[4528] Fix | Delete
$this->containers = wp_list_sort(
[4529] Fix | Delete
$this->containers,
[4530] Fix | Delete
array(
[4531] Fix | Delete
'priority' => 'ASC',
[4532] Fix | Delete
'instance_number' => 'ASC',
[4533] Fix | Delete
),
[4534] Fix | Delete
'ASC',
[4535] Fix | Delete
true
[4536] Fix | Delete
);
[4537] Fix | Delete
}
[4538] Fix | Delete
[4539] Fix | Delete
/**
[4540] Fix | Delete
* Enqueues scripts for customize controls.
[4541] Fix | Delete
*
[4542] Fix | Delete
* @since 3.4.0
[4543] Fix | Delete
*/
[4544] Fix | Delete
public function enqueue_control_scripts() {
[4545] Fix | Delete
foreach ( $this->controls as $control ) {
[4546] Fix | Delete
$control->enqueue();
[4547] Fix | Delete
}
[4548] Fix | Delete
[4549] Fix | Delete
if ( ! is_multisite() && ( current_user_can( 'install_themes' ) || current_user_can( 'update_themes' ) || current_user_can( 'delete_themes' ) ) ) {
[4550] Fix | Delete
wp_enqueue_script( 'updates' );
[4551] Fix | Delete
wp_localize_script(
[4552] Fix | Delete
'updates',
[4553] Fix | Delete
'_wpUpdatesItemCounts',
[4554] Fix | Delete
array(
[4555] Fix | Delete
'totals' => wp_get_update_data(),
[4556] Fix | Delete
)
[4557] Fix | Delete
);
[4558] Fix | Delete
}
[4559] Fix | Delete
}
[4560] Fix | Delete
[4561] Fix | Delete
/**
[4562] Fix | Delete
* Determines whether the user agent is iOS.
[4563] Fix | Delete
*
[4564] Fix | Delete
* @since 4.4.0
[4565] Fix | Delete
*
[4566] Fix | Delete
* @return bool Whether the user agent is iOS.
[4567] Fix | Delete
*/
[4568] Fix | Delete
public function is_ios() {
[4569] Fix | Delete
return wp_is_mobile() && preg_match( '/iPad|iPod|iPhone/', $_SERVER['HTTP_USER_AGENT'] );
[4570] Fix | Delete
}
[4571] Fix | Delete
[4572] Fix | Delete
/**
[4573] Fix | Delete
* Gets the template string for the Customizer pane document title.
[4574] Fix | Delete
*
[4575] Fix | Delete
* @since 4.4.0
[4576] Fix | Delete
*
[4577] Fix | Delete
* @return string The template string for the document title.
[4578] Fix | Delete
*/
[4579] Fix | Delete
public function get_document_title_template() {
[4580] Fix | Delete
if ( $this->is_theme_active() ) {
[4581] Fix | Delete
/* translators: %s: Document title from the preview. */
[4582] Fix | Delete
$document_title_tmpl = __( 'Customize: %s' );
[4583] Fix | Delete
} else {
[4584] Fix | Delete
/* translators: %s: Document title from the preview. */
[4585] Fix | Delete
$document_title_tmpl = __( 'Live Preview: %s' );
[4586] Fix | Delete
}
[4587] Fix | Delete
$document_title_tmpl = html_entity_decode( $document_title_tmpl, ENT_QUOTES, 'UTF-8' ); // Because exported to JS and assigned to document.title.
[4588] Fix | Delete
return $document_title_tmpl;
[4589] Fix | Delete
}
[4590] Fix | Delete
[4591] Fix | Delete
/**
[4592] Fix | Delete
* Sets the initial URL to be previewed.
[4593] Fix | Delete
*
[4594] Fix | Delete
* URL is validated.
[4595] Fix | Delete
*
[4596] Fix | Delete
* @since 4.4.0
[4597] Fix | Delete
*
[4598] Fix | Delete
* @param string $preview_url URL to be previewed.
[4599] Fix | Delete
*/
[4600] Fix | Delete
public function set_preview_url( $preview_url ) {
[4601] Fix | Delete
$preview_url = sanitize_url( $preview_url );
[4602] Fix | Delete
$this->preview_url = wp_validate_redirect( $preview_url, home_url( '/' ) );
[4603] Fix | Delete
}
[4604] Fix | Delete
[4605] Fix | Delete
/**
[4606] Fix | Delete
* Gets the initial URL to be previewed.
[4607] Fix | Delete
*
[4608] Fix | Delete
* @since 4.4.0
[4609] Fix | Delete
*
[4610] Fix | Delete
* @return string URL being previewed.
[4611] Fix | Delete
*/
[4612] Fix | Delete
public function get_preview_url() {
[4613] Fix | Delete
if ( empty( $this->preview_url ) ) {
[4614] Fix | Delete
$preview_url = home_url( '/' );
[4615] Fix | Delete
} else {
[4616] Fix | Delete
$preview_url = $this->preview_url;
[4617] Fix | Delete
}
[4618] Fix | Delete
return $preview_url;
[4619] Fix | Delete
}
[4620] Fix | Delete
[4621] Fix | Delete
/**
[4622] Fix | Delete
* Determines whether the admin and the frontend are on different domains.
[4623] Fix | Delete
*
[4624] Fix | Delete
* @since 4.7.0
[4625] Fix | Delete
*
[4626] Fix | Delete
* @return bool Whether cross-domain.
[4627] Fix | Delete
*/
[4628] Fix | Delete
public function is_cross_domain() {
[4629] Fix | Delete
$admin_origin = wp_parse_url( admin_url() );
[4630] Fix | Delete
$home_origin = wp_parse_url( home_url() );
[4631] Fix | Delete
$cross_domain = ( strtolower( $admin_origin['host'] ) !== strtolower( $home_origin['host'] ) );
[4632] Fix | Delete
return $cross_domain;
[4633] Fix | Delete
}
[4634] Fix | Delete
[4635] Fix | Delete
/**
[4636] Fix | Delete
* Gets URLs allowed to be previewed.
[4637] Fix | Delete
*
[4638] Fix | Delete
* If the front end and the admin are served from the same domain, load the
[4639] Fix | Delete
* preview over ssl if the Customizer is being loaded over ssl. This avoids
[4640] Fix | Delete
* insecure content warnings. This is not attempted if the admin and front end
[4641] Fix | Delete
* are on different domains to avoid the case where the front end doesn't have
[4642] Fix | Delete
* ssl certs. Domain mapping plugins can allow other urls in these conditions
[4643] Fix | Delete
* using the customize_allowed_urls filter.
[4644] Fix | Delete
*
[4645] Fix | Delete
* @since 4.7.0
[4646] Fix | Delete
*
[4647] Fix | Delete
* @return array Allowed URLs.
[4648] Fix | Delete
*/
[4649] Fix | Delete
public function get_allowed_urls() {
[4650] Fix | Delete
$allowed_urls = array( home_url( '/' ) );
[4651] Fix | Delete
[4652] Fix | Delete
if ( is_ssl() && ! $this->is_cross_domain() ) {
[4653] Fix | Delete
$allowed_urls[] = home_url( '/', 'https' );
[4654] Fix | Delete
}
[4655] Fix | Delete
[4656] Fix | Delete
/**
[4657] Fix | Delete
* Filters the list of URLs allowed to be clicked and followed in the Customizer preview.
[4658] Fix | Delete
*
[4659] Fix | Delete
* @since 3.4.0
[4660] Fix | Delete
*
[4661] Fix | Delete
* @param string[] $allowed_urls An array of allowed URLs.
[4662] Fix | Delete
*/
[4663] Fix | Delete
$allowed_urls = array_unique( apply_filters( 'customize_allowed_urls', $allowed_urls ) );
[4664] Fix | Delete
[4665] Fix | Delete
return $allowed_urls;
[4666] Fix | Delete
}
[4667] Fix | Delete
[4668] Fix | Delete
/**
[4669] Fix | Delete
* Gets messenger channel.
[4670] Fix | Delete
*
[4671] Fix | Delete
* @since 4.7.0
[4672] Fix | Delete
*
[4673] Fix | Delete
* @return string Messenger channel.
[4674] Fix | Delete
*/
[4675] Fix | Delete
public function get_messenger_channel() {
[4676] Fix | Delete
return $this->messenger_channel;
[4677] Fix | Delete
}
[4678] Fix | Delete
[4679] Fix | Delete
/**
[4680] Fix | Delete
* Sets URL to link the user to when closing the Customizer.
[4681] Fix | Delete
*
[4682] Fix | Delete
* URL is validated.
[4683] Fix | Delete
*
[4684] Fix | Delete
* @since 4.4.0
[4685] Fix | Delete
*
[4686] Fix | Delete
* @param string $return_url URL for return link.
[4687] Fix | Delete
*/
[4688] Fix | Delete
public function set_return_url( $return_url ) {
[4689] Fix | Delete
$return_url = sanitize_url( $return_url );
[4690] Fix | Delete
$return_url = remove_query_arg( wp_removable_query_args(), $return_url );
[4691] Fix | Delete
$return_url = wp_validate_redirect( $return_url );
[4692] Fix | Delete
$this->return_url = $return_url;
[4693] Fix | Delete
}
[4694] Fix | Delete
[4695] Fix | Delete
/**
[4696] Fix | Delete
* Gets URL to link the user to when closing the Customizer.
[4697] Fix | Delete
*
[4698] Fix | Delete
* @since 4.4.0
[4699] Fix | Delete
*
[4700] Fix | Delete
* @global array $_registered_pages
[4701] Fix | Delete
*
[4702] Fix | Delete
* @return string URL for link to close Customizer.
[4703] Fix | Delete
*/
[4704] Fix | Delete
public function get_return_url() {
[4705] Fix | Delete
global $_registered_pages;
[4706] Fix | Delete
[4707] Fix | Delete
$referer = wp_get_referer();
[4708] Fix | Delete
$excluded_referer_basenames = array( 'customize.php', 'wp-login.php' );
[4709] Fix | Delete
[4710] Fix | Delete
if ( $this->return_url ) {
[4711] Fix | Delete
$return_url = $this->return_url;
[4712] Fix | Delete
[4713] Fix | Delete
$return_url_basename = wp_basename( parse_url( $this->return_url, PHP_URL_PATH ) );
[4714] Fix | Delete
$return_url_query = parse_url( $this->return_url, PHP_URL_QUERY );
[4715] Fix | Delete
[4716] Fix | Delete
if ( 'themes.php' === $return_url_basename && $return_url_query ) {
[4717] Fix | Delete
parse_str( $return_url_query, $query_vars );
[4718] Fix | Delete
[4719] Fix | Delete
/*
[4720] Fix | Delete
* If the return URL is a page added by a theme to the Appearance menu via add_submenu_page(),
[4721] Fix | Delete
* verify that it belongs to the active theme, otherwise fall back to the Themes screen.
[4722] Fix | Delete
*/
[4723] Fix | Delete
if ( isset( $query_vars['page'] ) && ! isset( $_registered_pages[ "appearance_page_{$query_vars['page']}" ] ) ) {
[4724] Fix | Delete
$return_url = admin_url( 'themes.php' );
[4725] Fix | Delete
}
[4726] Fix | Delete
}
[4727] Fix | Delete
} elseif ( $referer && ! in_array( wp_basename( parse_url( $referer, PHP_URL_PATH ) ), $excluded_referer_basenames, true ) ) {
[4728] Fix | Delete
$return_url = $referer;
[4729] Fix | Delete
} elseif ( $this->preview_url ) {
[4730] Fix | Delete
$return_url = $this->preview_url;
[4731] Fix | Delete
} else {
[4732] Fix | Delete
$return_url = home_url( '/' );
[4733] Fix | Delete
}
[4734] Fix | Delete
[4735] Fix | Delete
return $return_url;
[4736] Fix | Delete
}
[4737] Fix | Delete
[4738] Fix | Delete
/**
[4739] Fix | Delete
* Sets the autofocused constructs.
[4740] Fix | Delete
*
[4741] Fix | Delete
* @since 4.4.0
[4742] Fix | Delete
*
[4743] Fix | Delete
* @param array $autofocus {
[4744] Fix | Delete
* Mapping of 'panel', 'section', 'control' to the ID which should be autofocused.
[4745] Fix | Delete
*
[4746] Fix | Delete
* @type string $control ID for control to be autofocused.
[4747] Fix | Delete
* @type string $section ID for section to be autofocused.
[4748] Fix | Delete
* @type string $panel ID for panel to be autofocused.
[4749] Fix | Delete
* }
[4750] Fix | Delete
*/
[4751] Fix | Delete
public function set_autofocus( $autofocus ) {
[4752] Fix | Delete
$this->autofocus = array_filter( wp_array_slice_assoc( $autofocus, array( 'panel', 'section', 'control' ) ), 'is_string' );
[4753] Fix | Delete
}
[4754] Fix | Delete
[4755] Fix | Delete
/**
[4756] Fix | Delete
* Gets the autofocused constructs.
[4757] Fix | Delete
*
[4758] Fix | Delete
* @since 4.4.0
[4759] Fix | Delete
*
[4760] Fix | Delete
* @return string[] {
[4761] Fix | Delete
* Mapping of 'panel', 'section', 'control' to the ID which should be autofocused.
[4762] Fix | Delete
*
[4763] Fix | Delete
* @type string $control ID for control to be autofocused.
[4764] Fix | Delete
* @type string $section ID for section to be autofocused.
[4765] Fix | Delete
* @type string $panel ID for panel to be autofocused.
[4766] Fix | Delete
* }
[4767] Fix | Delete
*/
[4768] Fix | Delete
public function get_autofocus() {
[4769] Fix | Delete
return $this->autofocus;
[4770] Fix | Delete
}
[4771] Fix | Delete
[4772] Fix | Delete
/**
[4773] Fix | Delete
* Gets nonces for the Customizer.
[4774] Fix | Delete
*
[4775] Fix | Delete
* @since 4.5.0
[4776] Fix | Delete
*
[4777] Fix | Delete
* @return array Nonces.
[4778] Fix | Delete
*/
[4779] Fix | Delete
public function get_nonces() {
[4780] Fix | Delete
$nonces = array(
[4781] Fix | Delete
'save' => wp_create_nonce( 'save-customize_' . $this->get_stylesheet() ),
[4782] Fix | Delete
'preview' => wp_create_nonce( 'preview-customize_' . $this->get_stylesheet() ),
[4783] Fix | Delete
'switch_themes' => wp_create_nonce( 'switch_themes' ),
[4784] Fix | Delete
'dismiss_autosave_or_lock' => wp_create_nonce( 'customize_dismiss_autosave_or_lock' ),
[4785] Fix | Delete
'override_lock' => wp_create_nonce( 'customize_override_changeset_lock' ),
[4786] Fix | Delete
'trash' => wp_create_nonce( 'trash_customize_changeset' ),
[4787] Fix | Delete
);
[4788] Fix | Delete
[4789] Fix | Delete
/**
[4790] Fix | Delete
* Filters nonces for Customizer.
[4791] Fix | Delete
*
[4792] Fix | Delete
* @since 4.2.0
[4793] Fix | Delete
*
[4794] Fix | Delete
* @param string[] $nonces Array of refreshed nonces for save and
[4795] Fix | Delete
* preview actions.
[4796] Fix | Delete
* @param WP_Customize_Manager $manager WP_Customize_Manager instance.
[4797] Fix | Delete
*/
[4798] Fix | Delete
$nonces = apply_filters( 'customize_refresh_nonces', $nonces, $this );
[4799] Fix | Delete
[4800] Fix | Delete
return $nonces;
[4801] Fix | Delete
}
[4802] Fix | Delete
[4803] Fix | Delete
/**
[4804] Fix | Delete
* Prints JavaScript settings for parent window.
[4805] Fix | Delete
*
[4806] Fix | Delete
* @since 4.4.0
[4807] Fix | Delete
*/
[4808] Fix | Delete
public function customize_pane_settings() {
[4809] Fix | Delete
[4810] Fix | Delete
$login_url = add_query_arg(
[4811] Fix | Delete
array(
[4812] Fix | Delete
'interim-login' => 1,
[4813] Fix | Delete
'customize-login' => 1,
[4814] Fix | Delete
),
[4815] Fix | Delete
wp_login_url()
[4816] Fix | Delete
);
[4817] Fix | Delete
[4818] Fix | Delete
// Ensure dirty flags are set for modified settings.
[4819] Fix | Delete
foreach ( array_keys( $this->unsanitized_post_values() ) as $setting_id ) {
[4820] Fix | Delete
$setting = $this->get_setting( $setting_id );
[4821] Fix | Delete
if ( $setting ) {
[4822] Fix | Delete
$setting->dirty = true;
[4823] Fix | Delete
}
[4824] Fix | Delete
}
[4825] Fix | Delete
[4826] Fix | Delete
$autosave_revision_post = null;
[4827] Fix | Delete
$autosave_autodraft_post = null;
[4828] Fix | Delete
$changeset_post_id = $this->changeset_post_id();
[4829] Fix | Delete
if ( ! $this->saved_starter_content_changeset && ! $this->autosaved() ) {
[4830] Fix | Delete
if ( $changeset_post_id ) {
[4831] Fix | Delete
if ( is_user_logged_in() ) {
[4832] Fix | Delete
$autosave_revision_post = wp_get_post_autosave( $changeset_post_id, get_current_user_id() );
[4833] Fix | Delete
}
[4834] Fix | Delete
} else {
[4835] Fix | Delete
$autosave_autodraft_posts = $this->get_changeset_posts(
[4836] Fix | Delete
array(
[4837] Fix | Delete
'posts_per_page' => 1,
[4838] Fix | Delete
'post_status' => 'auto-draft',
[4839] Fix | Delete
'exclude_restore_dismissed' => true,
[4840] Fix | Delete
)
[4841] Fix | Delete
);
[4842] Fix | Delete
if ( ! empty( $autosave_autodraft_posts ) ) {
[4843] Fix | Delete
$autosave_autodraft_post = array_shift( $autosave_autodraft_posts );
[4844] Fix | Delete
}
[4845] Fix | Delete
}
[4846] Fix | Delete
}
[4847] Fix | Delete
[4848] Fix | Delete
$current_user_can_publish = current_user_can( get_post_type_object( 'customize_changeset' )->cap->publish_posts );
[4849] Fix | Delete
[4850] Fix | Delete
// @todo Include all of the status labels here from script-loader.php, and then allow it to be filtered.
[4851] Fix | Delete
$status_choices = array();
[4852] Fix | Delete
if ( $current_user_can_publish ) {
[4853] Fix | Delete
$status_choices[] = array(
[4854] Fix | Delete
'status' => 'publish',
[4855] Fix | Delete
'label' => __( 'Publish' ),
[4856] Fix | Delete
);
[4857] Fix | Delete
}
[4858] Fix | Delete
$status_choices[] = array(
[4859] Fix | Delete
'status' => 'draft',
[4860] Fix | Delete
'label' => __( 'Save Draft' ),
[4861] Fix | Delete
);
[4862] Fix | Delete
if ( $current_user_can_publish ) {
[4863] Fix | Delete
$status_choices[] = array(
[4864] Fix | Delete
'status' => 'future',
[4865] Fix | Delete
'label' => _x( 'Schedule', 'customizer changeset action/button label' ),
[4866] Fix | Delete
);
[4867] Fix | Delete
}
[4868] Fix | Delete
[4869] Fix | Delete
// Prepare Customizer settings to pass to JavaScript.
[4870] Fix | Delete
$changeset_post = null;
[4871] Fix | Delete
if ( $changeset_post_id ) {
[4872] Fix | Delete
$changeset_post = get_post( $changeset_post_id );
[4873] Fix | Delete
}
[4874] Fix | Delete
[4875] Fix | Delete
// Determine initial date to be at present or future, not past.
[4876] Fix | Delete
$current_time = current_time( 'mysql', false );
[4877] Fix | Delete
$initial_date = $current_time;
[4878] Fix | Delete
if ( $changeset_post ) {
[4879] Fix | Delete
$initial_date = get_the_time( 'Y-m-d H:i:s', $changeset_post->ID );
[4880] Fix | Delete
if ( $initial_date < $current_time ) {
[4881] Fix | Delete
$initial_date = $current_time;
[4882] Fix | Delete
}
[4883] Fix | Delete
}
[4884] Fix | Delete
[4885] Fix | Delete
$lock_user_id = false;
[4886] Fix | Delete
if ( $this->changeset_post_id() ) {
[4887] Fix | Delete
$lock_user_id = wp_check_post_lock( $this->changeset_post_id() );
[4888] Fix | Delete
}
[4889] Fix | Delete
[4890] Fix | Delete
$settings = array(
[4891] Fix | Delete
'changeset' => array(
[4892] Fix | Delete
'uuid' => $this->changeset_uuid(),
[4893] Fix | Delete
'branching' => $this->branching(),
[4894] Fix | Delete
'autosaved' => $this->autosaved(),
[4895] Fix | Delete
'hasAutosaveRevision' => ! empty( $autosave_revision_post ),
[4896] Fix | Delete
'latestAutoDraftUuid' => $autosave_autodraft_post ? $autosave_autodraft_post->post_name : null,
[4897] Fix | Delete
'status' => $changeset_post ? $changeset_post->post_status : '',
[4898] Fix | Delete
'currentUserCanPublish' => $current_user_can_publish,
[4899] Fix | Delete
'publishDate' => $initial_date,
[4900] Fix | Delete
'statusChoices' => $status_choices,
[4901] Fix | Delete
'lockUser' => $lock_user_id ? $this->get_lock_user_data( $lock_user_id ) : null,
[4902] Fix | Delete
),
[4903] Fix | Delete
'initialServerDate' => $current_time,
[4904] Fix | Delete
'dateFormat' => get_option( 'date_format' ),
[4905] Fix | Delete
'timeFormat' => get_option( 'time_format' ),
[4906] Fix | Delete
'initialServerTimestamp' => floor( microtime( true ) * 1000 ),
[4907] Fix | Delete
'initialClientTimestamp' => -1, // To be set with JS below.
[4908] Fix | Delete
'timeouts' => array(
[4909] Fix | Delete
'windowRefresh' => 250,
[4910] Fix | Delete
'changesetAutoSave' => AUTOSAVE_INTERVAL * 1000,
[4911] Fix | Delete
'keepAliveCheck' => 2500,
[4912] Fix | Delete
'reflowPaneContents' => 100,
[4913] Fix | Delete
'previewFrameSensitivity' => 2000,
[4914] Fix | Delete
),
[4915] Fix | Delete
'theme' => array(
[4916] Fix | Delete
'stylesheet' => $this->get_stylesheet(),
[4917] Fix | Delete
'active' => $this->is_theme_active(),
[4918] Fix | Delete
'_canInstall' => current_user_can( 'install_themes' ),
[4919] Fix | Delete
),
[4920] Fix | Delete
'url' => array(
[4921] Fix | Delete
'preview' => sanitize_url( $this->get_preview_url() ),
[4922] Fix | Delete
'return' => sanitize_url( $this->get_return_url() ),
[4923] Fix | Delete
'parent' => sanitize_url( admin_url() ),
[4924] Fix | Delete
'activated' => sanitize_url( home_url( '/' ) ),
[4925] Fix | Delete
'ajax' => sanitize_url( admin_url( 'admin-ajax.php', 'relative' ) ),
[4926] Fix | Delete
'allowed' => array_map( 'sanitize_url', $this->get_allowed_urls() ),
[4927] Fix | Delete
'isCrossDomain' => $this->is_cross_domain(),
[4928] Fix | Delete
'home' => sanitize_url( home_url( '/' ) ),
[4929] Fix | Delete
'login' => sanitize_url( $login_url ),
[4930] Fix | Delete
),
[4931] Fix | Delete
'browser' => array(
[4932] Fix | Delete
'mobile' => wp_is_mobile(),
[4933] Fix | Delete
'ios' => $this->is_ios(),
[4934] Fix | Delete
),
[4935] Fix | Delete
'panels' => array(),
[4936] Fix | Delete
'sections' => array(),
[4937] Fix | Delete
'nonce' => $this->get_nonces(),
[4938] Fix | Delete
'autofocus' => $this->get_autofocus(),
[4939] Fix | Delete
'documentTitleTmpl' => $this->get_document_title_template(),
[4940] Fix | Delete
'previewableDevices' => $this->get_previewable_devices(),
[4941] Fix | Delete
'l10n' => array(
[4942] Fix | Delete
'confirmDeleteTheme' => __( 'Are you sure you want to delete this theme?' ),
[4943] Fix | Delete
/* translators: %d: Number of theme search results, which cannot currently consider singular vs. plural forms. */
[4944] Fix | Delete
'themeSearchResults' => __( '%d themes found' ),
[4945] Fix | Delete
/* translators: %d: Number of themes being displayed, which cannot currently consider singular vs. plural forms. */
[4946] Fix | Delete
'announceThemeCount' => __( 'Displaying %d themes' ),
[4947] Fix | Delete
/* translators: %s: Theme name. */
[4948] Fix | Delete
'announceThemeDetails' => __( 'Showing details for theme: %s' ),
[4949] Fix | Delete
),
[4950] Fix | Delete
);
[4951] Fix | Delete
[4952] Fix | Delete
// Temporarily disable installation in Customizer. See #42184.
[4953] Fix | Delete
$filesystem_method = get_filesystem_method();
[4954] Fix | Delete
ob_start();
[4955] Fix | Delete
$filesystem_credentials_are_stored = request_filesystem_credentials( self_admin_url() );
[4956] Fix | Delete
ob_end_clean();
[4957] Fix | Delete
if ( 'direct' !== $filesystem_method && ! $filesystem_credentials_are_stored ) {
[4958] Fix | Delete
$settings['theme']['_filesystemCredentialsNeeded'] = true;
[4959] Fix | Delete
}
[4960] Fix | Delete
[4961] Fix | Delete
// Prepare Customize Section objects to pass to JavaScript.
[4962] Fix | Delete
foreach ( $this->sections() as $id => $section ) {
[4963] Fix | Delete
if ( $section->check_capabilities() ) {
[4964] Fix | Delete
$settings['sections'][ $id ] = $section->json();
[4965] Fix | Delete
}
[4966] Fix | Delete
}
[4967] Fix | Delete
[4968] Fix | Delete
// Prepare Customize Panel objects to pass to JavaScript.
[4969] Fix | Delete
foreach ( $this->panels() as $panel_id => $panel ) {
[4970] Fix | Delete
if ( $panel->check_capabilities() ) {
[4971] Fix | Delete
$settings['panels'][ $panel_id ] = $panel->json();
[4972] Fix | Delete
foreach ( $panel->sections as $section_id => $section ) {
[4973] Fix | Delete
if ( $section->check_capabilities() ) {
[4974] Fix | Delete
$settings['sections'][ $section_id ] = $section->json();
[4975] Fix | Delete
}
[4976] Fix | Delete
}
[4977] Fix | Delete
}
[4978] Fix | Delete
}
[4979] Fix | Delete
[4980] Fix | Delete
ob_start();
[4981] Fix | Delete
?>
[4982] Fix | Delete
<script>
[4983] Fix | Delete
var _wpCustomizeSettings = <?php echo wp_json_encode( $settings ); ?>;
[4984] Fix | Delete
_wpCustomizeSettings.initialClientTimestamp = _.now();
[4985] Fix | Delete
_wpCustomizeSettings.controls = {};
[4986] Fix | Delete
_wpCustomizeSettings.settings = {};
[4987] Fix | Delete
<?php
[4988] Fix | Delete
[4989] Fix | Delete
// Serialize settings one by one to improve memory usage.
[4990] Fix | Delete
echo "(function ( s ){\n";
[4991] Fix | Delete
foreach ( $this->settings() as $setting ) {
[4992] Fix | Delete
if ( $setting->check_capabilities() ) {
[4993] Fix | Delete
printf(
[4994] Fix | Delete
"s[%s] = %s;\n",
[4995] Fix | Delete
wp_json_encode( $setting->id ),
[4996] Fix | Delete
wp_json_encode( $setting->json() )
[4997] Fix | Delete
);
[4998] Fix | Delete
}
[4999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function