2023-06-05 11:23:16 +00:00
< ? php
/**
* File : cdn . php
*
* @ package W3TC
*/
namespace W3TC ;
2023-12-08 23:23:32 +00:00
defined ( 'W3TC' ) || die ();
2023-06-05 11:23:16 +00:00
// when separate config is used - each blog has own uploads
// so nothing to upload from network admin.
$upload_blogfiles_enabled = $cdn_mirror || ! is_network_admin () || ! Util_Environment :: is_using_master_config ();
2023-10-22 22:21:26 +00:00
$can_purge = Cdn_Util :: can_purge ( $cdn_engine );
require W3TC_INC_DIR . '/options/common/header.php' ;
2023-06-05 11:23:16 +00:00
2023-12-08 23:23:32 +00:00
?>
2023-06-05 11:23:16 +00:00
< p >
< ? php
echo wp_kses (
sprintf (
// translators: 1 HTML strong tag containing CDN Engine value, 2 HTML span tag containing CDN Engine enabled/disabled value.
__ (
2023-12-08 23:23:32 +00:00
'Content Delivery Network object support via %1$s is currently %2$s and %3$s.' ,
2023-06-05 11:23:16 +00:00
'w3-total-cache'
),
'<strong>' . Cache :: engine_name ( $this -> _config -> get_string ( 'cdn.engine' ) ) . '</strong>' ,
2023-12-08 23:23:32 +00:00
'<span class="w3tc-' . ( $cdn_enabled ? 'enabled">' . esc_html__ ( 'enabled' , 'w3-total-cache' ) : 'disabled">' . esc_html__ ( 'disabled' , 'w3-total-cache' ) ) . '</span>' ,
'<span class="w3tc-' . ( $is_cdn_authorized ? 'authorized">' . esc_html__ ( 'authorized' , 'w3-total-cache' ) : 'not-authorized">' . esc_html__ ( 'not authorized' , 'w3-total-cache' ) ) . '</span>'
),
array (
'strong' => array (),
'span' => array (
'class' => array (),
),
)
);
?>
</ p >
< p >
< ? php
echo wp_kses (
sprintf (
// translators: 1 HTML strong tag containing CDN Engine value, 2 HTML span tag containing CDN Engine enabled/disabled value.
__ (
'Content Delivery Network full-site-delivery support via %1$s is currently %2$s and %3$s.' ,
'w3-total-cache'
),
'<strong>' . Cache :: engine_name ( $this -> _config -> get_string ( 'cdnfsd.engine' ) ) . '</strong>' ,
'<span class="w3tc-' . ( $cdnfsd_enabled ? 'enabled">' . esc_html__ ( 'enabled' , 'w3-total-cache' ) : 'disabled">' . esc_html__ ( 'disabled' , 'w3-total-cache' ) ) . '</span>' ,
'<span class="w3tc-' . ( $is_cdnfsd_authorized ? 'authorized">' . esc_html__ ( 'authorized' , 'w3-total-cache' ) : 'not-authorized">' . esc_html__ ( 'not authorized' , 'w3-total-cache' ) ) . '</span>'
2023-06-05 11:23:16 +00:00
),
array (
'strong' => array (),
'span' => array (
'class' => array (),
),
)
);
?>
</ p >
< form id = " w3tc_cdn " action = " admin.php?page=<?php echo esc_attr( $this->_page ); ?> " method = " post " >
2023-12-08 23:23:32 +00:00
< ? php
if ( ! empty ( $cdn_engine ) ) {
if ( $cdn_mirror ) {
2023-10-22 22:21:26 +00:00
?>
< p >
< ? php
2023-12-08 23:23:32 +00:00
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Maximize %1$sCDN%2$s usage by %3$s or %4$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<input id="cdn_rename_domain" class="button {nonce: \'' . esc_attr ( wp_create_nonce ( 'w3tc' ) ) .
'\'}" type="button" value="' . esc_attr__ ( 'modify attachment URLs' ) . '" />' ,
'<input id="cdn_import_library" class="button {nonce: \'' . esc_attr ( wp_create_nonce ( 'w3tc' ) ) .
'\'}" type="button" value="' . esc_attr__ ( 'importing attachments into the Media Library' ) . '" />'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
2023-10-22 22:21:26 +00:00
?>
</ p >
2023-06-05 11:23:16 +00:00
< ? php
2023-12-08 23:23:32 +00:00
if ( $can_purge || $cdn_mirror_purge_all ) {
?>
< p >
< ? php
$cdn_purge_button = $can_purge ?
'<input id="cdn_purge" class="button {nonce: ' . esc_attr ( wp_create_nonce ( 'w3tc' ) ) .
'}" type="button" value="Purge" /> objects from the <acronym title="Content Delivery Network">CDN</acronym>' :
'' ;
$cdn_mirror_purge_button = $cdn_mirror_purge_all ?
( $can_purge ? ' or ' : '' ) . '<input class="button" type="submit" name="w3tc_flush_cdn" value="purge CDN completely" />' :
'' ;
echo wp_kses (
$cdn_purge_button . $cdn_mirror_purge_button ,
array (
'acronym' => array (
'title' => array (),
),
'input' => array (
'class' => array (),
'id' => array (),
'name' => array (),
'type' => array (),
'value' => array (),
),
)
);
?>
</ p >
< ? php
}
} else {
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Prepare the %1$sCDN%2$s by:' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
2023-10-22 22:21:26 +00:00
),
2023-12-08 23:23:32 +00:00
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
< input id = " cdn_import_library " class = " button { nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} " type = " button " value = " <?php esc_attr_e( 'importing attachments into the Media Library', 'w3-total-cache' ); ?> " />.
Check < input id = " cdn_queue " class = " button { nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} " type = " button " value = " <?php esc_attr_e( 'unsuccessful file transfers', 'w3-total-cache' ); ?> " /> < ? php esc_html_e ( 'if some objects appear to be missing.' , 'w3-total-cache' ); ?>
< ? php if ( $can_purge ) : ?>
< input id = " cdn_purge " class = " button { nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} " type = " button " value = " <?php esc_attr_e( 'Purge', 'w3-total-cache' ); ?> " />
2023-10-22 22:21:26 +00:00
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
' objects from the %1$sCDN%2$s if needed.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
2023-06-05 11:23:16 +00:00
),
2023-10-22 22:21:26 +00:00
array (
'acronym' => array (
'title' => array (),
2023-06-05 11:23:16 +00:00
),
2023-10-22 22:21:26 +00:00
)
);
?>
2023-12-08 23:23:32 +00:00
< ? php endif ; ?>
< input id = " cdn_rename_domain " class = " button { nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} " type = " button " value = " Modify attachment URLs " /> < ? php esc_html_e ( 'if the domain name of your site has ever changed.' , 'w3-total-cache' ); ?>
< ? php
}
}
?>
2023-10-22 22:21:26 +00:00
< p >
2023-06-05 11:23:16 +00:00
< ? php
echo wp_kses (
Util_Ui :: nonce_field ( 'w3tc' ),
array (
'input' => array (
'type' => array (),
'name' => array (),
'value' => array (),
),
)
);
?>
< input type = " submit " name = " w3tc_flush_browser_cache " value = " <?php esc_attr_e( 'Update media query string', 'w3-total-cache' ); ?> " < ? php disabled ( ! ( $browsercache_enabled && $browsercache_update_media_qs ) ); ?> class="button" /> <?php esc_html_e( 'to make existing file modifications visible to visitors with a primed cache.', 'w3-total-cache' ); ?>
</ p >
</ form >
< form id = " cdn_form " action = " admin.php?page=<?php echo esc_attr( $this->_page ); ?> " method = " post " >
2023-10-22 22:21:26 +00:00
< ? php Util_UI :: print_control_bar ( 'cdn_form_control' ); ?>
2023-06-05 11:23:16 +00:00
< div class = " metabox-holder " >
< ? php Util_Ui :: postbox_header ( esc_html__ ( 'General' , 'w3-total-cache' ), '' , 'general' ); ?>
< table class = " form-table " >
< tr >
< th < ? php echo $cdn_mirror ? 'colspan="2"' : 'style="width: 300px;"' ; ?> >
< ? php
$force_value = ( $upload_blogfiles_enabled ? null : false );
$this -> checkbox (
'cdn.uploads.enable' ,
! $upload_blogfiles_enabled ,
'' ,
true ,
$force_value
);
?>
< ? php Util_Ui :: e_config_label ( 'cdn.uploads.enable' ); ?> </label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'If checked, all attachments will be hosted with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
if ( ! $upload_blogfiles_enabled ) :
echo wp_kses (
sprintf (
// translators: 1 HTML line break.
__ (
'%1$sTo enable that, switch off "Use single network configuration file for all sites" option at General settings page and use specific settings for each blog.' ,
'w3-total-cache'
),
'<br />'
),
array (
'br' => array (),
)
);
endif ;
?>
</ p >
</ th >
< ? php if ( ! $cdn_mirror ) : ?>
< td >
< input id = " cdn_export_library " class = " button { nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} "
type = " button " value = " <?php esc_attr_e( 'Upload attachments', 'w3-total-cache' ); ?> "
< ? php disabled ( ! $upload_blogfiles_enabled ); ?> />
</ td >
< ? php endif ; ?>
</ tr >
< tr >
< th < ? php echo $cdn_mirror ? 'colspan="2"' : '' ; ?> >
< ? php $this -> checkbox ( 'cdn.includes.enable' ); ?> <?php Util_Ui::e_config_label( 'cdn.includes.enable' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'If checked, WordPress static core file types specified in the "wp-includes file types to upload" field below will be hosted with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
< ? php if ( ! $cdn_mirror ) : ?>
< td >
< input class = " button cdn_export { type: 'includes', nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} "
type = " button " value = " <?php esc_attr_e( 'Upload includes files', 'w3-total-cache' ); ?> " />
</ td >
< ? php endif ; ?>
</ tr >
< tr >
< th < ? php echo $cdn_mirror ? 'colspan="2"' : '' ; ?> >
< ? php $this -> checkbox ( 'cdn.theme.enable' ); ?> <?php Util_Ui::e_config_label( 'cdn.theme.enable' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'If checked, all theme file types specified in the "theme file types to upload" field below will be hosted with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
< ? php if ( ! $cdn_mirror ) : ?>
< td >
< input class = " button cdn_export { type: 'theme', nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} "
type = " button " value = " <?php esc_attr_e( 'Upload theme files', 'w3-total-cache' ); ?> "
/>
</ td >
< ? php endif ; ?>
</ tr >
< tr >
< th < ? php echo $cdn_mirror ? 'colspan="2"' : '' ; ?> >
< ? php $this -> checkbox ( 'cdn.minify.enable' , ! $minify_enabled ); ?> <?php Util_Ui::e_config_label( 'cdn.minify.enable' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag,
// translators: 3 opening HTML acronym tag, 4 closing HTML acronym tag,
// translators: 5 opening HTML acronym tag, 6 closing HTML acronym tag.
__ (
'If checked, minified %1$sCSS%2$s and %3$sJS%4$s files will be hosted with the %5$sCDN%6$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Cascading Style Sheet' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<acronym title="' . esc_attr__ ( 'JavaScript' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
< ? php if ( ! $cdn_mirror ) : ?>
< td >
< input class = " button cdn_export { type: 'minify', nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} "
type = " button " value = " <?php esc_attr_e( 'Upload minify files', 'w3-total-cache' ); ?> "
< ? php disabled ( ! $minify_enabled ); ?> />
</ td >
< ? php endif ; ?>
</ tr >
< tr >
< th < ? php echo $cdn_mirror ? 'colspan="2"' : '' ; ?> >
< ? php $this -> checkbox ( 'cdn.custom.enable' ); ?> <?php Util_Ui::e_config_label( 'cdn.custom.enable' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'If checked, any file names or paths specified in the "custom file list" field below will be hosted with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
< ? php if ( ! $cdn_mirror ) : ?>
< td >
< input class = " button cdn_export { type: 'custom', nonce: '<?php echo esc_attr( wp_create_nonce( 'w3tc' ) ); ?>'} "
type = " button " value = " <?php esc_attr_e( 'Upload custom files', 'w3-total-cache' ); ?> "
< ? php disabled ( ! $upload_blogfiles_enabled ); ?> />
</ td >
< ? php endif ; ?>
</ tr >
< ? php if ( ! $cdn_mirror ) : ?>
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'cdn.force.rewrite' ); ?> <?php Util_Ui::e_config_label( 'cdn.force.rewrite' ); ?></label>
< p class = " description " >< ? php esc_html_e ( 'If modified files are not always detected and replaced, use this option to over-write them.' , 'w3-total-cache' ); ?> </p>
</ th >
</ tr >
< ? php endif ; ?>
< ? php if ( $cdn_supports_header ) : ?>
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'cdn.canonical_header' ); ?> <?php Util_Ui::e_config_label( 'cdn.canonical_header' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Adds canonical %1$sHTTP%2$s header to assets files.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Hypertext Transfer Protocol' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
</ tr >
< ? php endif ; ?>
</ table >
< ? php Util_Ui :: postbox_footer (); ?>
2023-12-08 23:23:32 +00:00
< ? php if ( ! empty ( $cdn_engine ) ) : ?>
< ? php Util_Ui :: postbox_header ( esc_html__ ( 'Configuration: Objects' , 'w3-total-cache' ), '' , 'configuration' ); ?>
< table class = " form-table " >
< ? php
$known_engines = array (
'bunnycdn' ,
'google_drive' ,
'highwinds' ,
'limelight' ,
'rackspace_cdn' ,
'rscf' ,
'stackpath' ,
'stackpath2' ,
);
if ( in_array ( $cdn_engine , $known_engines , true ) ) {
do_action ( 'w3tc_settings_cdn_boxarea_configuration' );
} elseif ( Cdn_Util :: is_engine ( $cdn_engine ) ) {
include W3TC_INC_DIR . '/options/cdn/' . $cdn_engine . '.php' ;
}
?>
</ table >
< ? php Util_Ui :: postbox_footer (); ?>
< ? php endif ; ?>
2023-06-05 11:23:16 +00:00
< ? php do_action ( 'w3tc_settings_box_cdnfsd' ); ?>
2023-12-08 23:23:32 +00:00
< ? php
if ( 'bunnycdn' === $cdn_engine || 'bunnycdn' === $cdnfsd_engine ) {
Util_Ui :: postbox_header ( esc_html__ ( 'Purge' , 'w3-total-cache' ), '' , 'purge-urls' );
do_action ( 'w3tc_purge_urls_box' );
Util_Ui :: postbox_footer ();
}
?>
2023-06-05 11:23:16 +00:00
< ? php Util_Ui :: postbox_header ( esc_html__ ( 'Advanced' , 'w3-total-cache' ), '' , 'advanced' ); ?>
< table class = " form-table " >
< tr >
< th colspan = " 2 " >
< ? php
$this -> checkbox ( 'cdn.flush_manually' );
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Only purge %1$sCDN%2$s manually' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Purge %1$sCDN%2$s only if explicit purge button is clicked.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
< div class = " hidden " id = " cdn-flushmanually-warning " >
< div class = " notice notice-warning inline " >< p >
< ? php
echo wp_kses (
sprintf (
// translators: 1: HTML break, 2: HTML anchor open tag, 3: HTML anchor close tag.
__ (
'Please see %2$sAmazon\'s CloudFront documentation -- Paying for file invalidation%3$s:%1$sThe first 1,000 invalidation paths that you submit per month are free; you pay for each invalidation path over 1,000 in a month.%1$sYou can disable automatic purging by enabling "Only purge CDN manually".' ,
'w3-total-cache'
),
'<br />' ,
'<a target="_blank" href="https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#PayingForInvalidation">' ,
'</a>'
),
array (
'a' => array (
'target' => array (),
'href' => array (),
),
'br' => array (),
)
);
?>
</ p ></ div >
</ div >
</ p >
</ th >
</ tr >
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'cdn.reject.ssl' ); ?> <?php Util_Ui::e_config_label( 'cdn.reject.ssl' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag,
// translators: 3 opening HTML acronym tag, 4 closing HTML acronym tag,
// translators: 5 opening HTML acronym tag, 6 closing HTML acronym tag.
__ (
'When %1$sSSL%2$s pages are returned no %3$sCDN%4$s %5$sURL%6$ss will appear in HTML pages.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Secure Sockets Layer' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acornym>' ,
'<acronym title="' . esc_attr__ ( 'Uniform Resource Indicator' , 'w3-total-cache' ) . '">' ,
'</acornym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
</ tr >
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'cdn.admin.media_library' ); ?> <?php Util_Ui::e_config_label( 'cdn.admin.media_library' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'All Media Library content will use %1$sCDN%2$s links on administration pages.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
</ tr >
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'cdn.cors_header' ); ?> Add <acronym title="Access-Control-Allow-Origin">CORS</acronym> header</label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Add %1$sCORS%2$s headers to allow cross-domain assets usage.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Access-Control-Allow-Origin' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
</ tr >
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'cdn.reject.logged_roles' ); ?> <?php Util_Ui::e_config_label( 'cdn.reject.logged_roles' ); ?></label>
< p class = " description " >< ? php esc_html_e ( 'Select user roles that will use the origin server exclusively:' , 'w3-total-cache' ); ?> </p>
< div id = " cdn_reject_roles " class = " w3tc_reject_roles " >
< ? php $saved_roles = $this -> _config -> get_array ( 'cdn.reject.roles' ); ?>
< input type = " hidden " name = " cdn__reject__roles " value = " " />< br />
< ? php foreach ( get_editable_roles () as $role_name => $role_data ) : ?>
< input type = " checkbox " name = " cdn__reject__roles[] " value = " <?php echo esc_attr( $role_name ); ?> " < ? php checked ( in_array ( $role_name , $saved_roles , true ) ); ?> id="role_<?php echo esc_attr( $role_name ); ?>" />
< label for = " role_<?php echo esc_attr( $role_name ); ?> " >< ? php echo esc_html ( $role_data [ 'name' ] ); ?> </label>
< ? php endforeach ; ?>
</ div >
</ th >
</ tr >
< ? php if ( ! $cdn_mirror ) : ?>
< tr >
< th >< label for = " cdn_reject_uri " >< ? php Util_Ui :: e_config_label ( 'cdn.reject.uri' ); ?> </label></th>
< td >
< textarea id = " cdn_reject_uri " name = " cdn__reject__uri "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
cols = " 40 " rows = " 5 " >< ? php echo esc_textarea ( implode ( " \r \n " , $this -> _config -> get_array ( 'cdn.reject.uri' ) ) ); ?> </textarea>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML a tag to W3TC FAQ admin page, 2 opening HTML acronym tag,
// translators: 3 closing HTML acronym tag, 4 closing HTML a tag.
__ (
'Always ignore the specified pages / directories. Supports regular expression (See %1$s%2$sFAQ%3$s%4$s)'
),
'<a href="' . esc_url ( network_admin_url ( 'admin.php?page=w3tc_faq' ) ) . '">' ,
'<acronym title="' . esc_attr__ ( 'Frequently Asked Questions' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'</a>'
),
array (
'a' => array (
'href' => array (),
),
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ td >
</ tr >
< tr >
< th colspan = " 2 " >
< ? php $this -> checkbox ( 'minify.upload' , $this -> _config -> get_boolean ( 'minify.auto' ) ); ?> <?php esc_html_e( 'Automatically upload minify files', 'w3-total-cache' ); ?></label>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'If %1$sCDN%2$s is enabled (and not using the origin pull method), your minified files will be automatically uploaded.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
</ tr >
< tr >
< th colspan = " 2 " >
< ? php
$disabled = false ;
$force_value = null ;
if ( 'google_drive' === $this -> _config -> get_string ( 'cdn.engine' ) ) {
$disabled = true ;
$force_value = false ;
}
$this -> checkbox (
'cdn.autoupload.enabled' ,
$disabled ,
'' ,
true ,
$force_value
);
?>
< ? php Util_Ui :: e_config_label ( 'cdn.autoupload.enabled' ); ?> </label>
< p class = " description " >< ? php esc_html_e ( 'Automatically attempt to find and upload changed files.' , 'w3-total-cache' ); ?> </p>
</ th >
</ tr >
< tr >
< th >< label for = " cdn_autoupload_interval " >< ? php Util_Ui :: e_config_label ( 'cdn.autoupload.interval' ); ?> </label></th>
< td >
< input id = " cdn_autoupload_interval " type = " text "
name = " cdn__autoupload__interval "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
value = " <?php echo esc_attr( $this->_config ->get_integer( 'cdn.autoupload.interval' ) ); ?> " size = " 8 " /> < ? php esc_html_e ( 'seconds' , 'w3-total-cache' ); ?>
< p class = " description " >< ? php esc_html_e ( 'Specify the interval between upload of changed files.' , 'w3-total-cache' ); ?> </p>
</ td >
</ tr >
< tr >
< th >< label for = " cdn_limit_interval " >< ? php Util_Ui :: e_config_label ( 'cdn.queue.interval' ); ?> </label></th>
< td >
< input id = " cdn_limit_interval " type = " text "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
name = " cdn__queue__interval " value = " <?php echo esc_attr( $this->_config ->get_integer( 'cdn.queue.interval' ) ); ?> " size = " 10 " /> < ? php esc_html_e ( 'seconds' , 'w3-total-cache' ); ?>
< p class = " description " >< ? php esc_html_e ( 'The number of seconds to wait before upload attempt.' , 'w3-total-cache' ); ?> </p>
</ td >
</ tr >
< tr >
< th >< label for = " cdn_limit_queue " >< ? php Util_Ui :: e_config_label ( 'cdn.queue.limit' ); ?> </label></th>
< td >
< input id = " cdn_limit_queue " type = " text "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
name = " cdn__queue__limit " value = " <?php echo esc_attr( $this->_config ->get_integer( 'cdn.queue.limit' ) ); ?> " size = " 10 " />
< p class = " description " >< ? php esc_html_e ( 'Number of files processed per upload attempt.' , 'w3-total-cache' ); ?> </p>
</ td >
</ tr >
< ? php endif ?>
< tr >
< th style = " width: 300px; " >< label for = " cdn_includes_files " >< ? php Util_Ui :: e_config_label ( 'cdn.includes.files' ); ?> </label></th>
< td >
< input id = " cdn_includes_files " type = " text "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
name = " cdn__includes__files " value = " <?php echo esc_attr( $this->_config ->get_string( 'cdn.includes.files' ) ); ?> " size = " 100 " />
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Specify the file types within the WordPress core to host with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ td >
</ tr >
< tr >
< th >< label for = " cdn_theme_files " >< ? php Util_Ui :: e_config_label ( 'cdn.theme.files' ); ?> </label></th>
< td >
< input id = " cdn_theme_files " type = " text " name = " cdn__theme__files "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
value = " <?php echo esc_attr( $this->_config ->get_string( 'cdn.theme.files' ) ); ?> " size = " 100 " />
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Specify the file types in the active theme to host with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ td >
</ tr >
< tr >
< th >< label for = " cdn_import_files " >< ? php Util_Ui :: e_config_label ( 'cdn.import.files' ); ?> </label></th>
< td >
< input id = " cdn_import_files " type = " text " name = " cdn__import__files "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?>
value = " <?php echo esc_attr( $this->_config ->get_string( 'cdn.import.files' ) ); ?> " size = " 100 " />
< p class = " description " >< ? php esc_html_e ( 'Automatically import files hosted with 3rd parties of these types (if used in your posts / pages) to your media library.' , 'w3-total-cache' ); ?> </p>
</ td >
</ tr >
< tr >
< th >< label for = " cdn_custom_files " >< ? php Util_Ui :: e_config_label ( 'cdn.custom.files' ); ?> </label></th>
< td >
< textarea id = " cdn_custom_files " name = " cdn__custom__files "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?> cols="40"
rows = " 5 " >< ? php echo esc_textarea ( implode ( " \r \n " , $this -> _config -> get_array ( 'cdn.custom.files' ) ) ); ?> </textarea>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Specify any files outside of theme or other common directories to host with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
< ? php if ( Util_Environment :: is_wpmu () ) : ?>
< br />
< ? php esc_html_e ( 'To upload files in blogs.dir for current blog write wp-content/<currentblog>/.' , 'w3-total-cache' ); ?>
< ? php endif ?>
</ p >
</ td >
</ tr >
< tr >
< th >< label for = " cdn_reject_ua " >< ? php Util_Ui :: e_config_label ( 'cdn.reject.ua' ); ?> </label></th>
< td >
< textarea id = " cdn_reject_ua " name = " cdn__reject__ua " cols = " 40 "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?> rows="5"><?php echo esc_textarea( implode( "\r\n", $this->_config->get_array( 'cdn.reject.ua' ) ) ); ?></textarea>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Specify user agents that should not access files hosted with the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ td >
</ tr >
< tr >
< th >< label for = " cdn_reject_files " >< ? php Util_Ui :: e_config_label ( 'cdn.reject.files' ); ?> </label></th>
< td >
< textarea id = " cdn_reject_files " name = " cdn__reject__files "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?> cols="40" rows="5"><?php echo esc_textarea( implode( "\r\n", $this->_config->get_array( 'cdn.reject.files' ) ) ); ?></textarea>
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag.
__ (
'Specify the path of files that should not use the %1$sCDN%2$s.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ td >
</ tr >
< tr >
< th colspan = " 2 " >
< input type = " hidden " name = " set_cookie_domain_old " value = " <?php echo (int) $set_cookie_domain ; ?> " />
< input type = " hidden " name = " set_cookie_domain_new " value = " 0 " />
< label >< input type = " checkbox " name = " set_cookie_domain_new "
< ? php Util_Ui :: sealing_disabled ( 'cdn.' ); ?> value="1"<?php checked( $set_cookie_domain, true ); ?> />
< ? php
echo esc_html (
sprintf (
// translators: 1 Cookie Domain.
__ (
'Set cookie domain to "%1$s"' ,
'w3-total-cache'
),
$cookie_domain
)
);
?>
</ label >
< p class = " description " >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag,
// translators: 3 opening HTML acronym tag, 4 closing HTML acronym tag.
__ (
'If using subdomain for %1$sCDN%2$s functionality, this setting helps prevent new users from sending cookies in requests to the %3$sCDN%4$s subdomain.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>'
),
array (
'acronym' => array (
'title' => array (),
),
)
);
?>
</ p >
</ th >
</ tr >
</ table >
< ? php Util_Ui :: postbox_footer (); ?>
< ? php Util_Ui :: postbox_header ( esc_html__ ( 'Note(s):' , 'w3-total-cache' ), '' , 'notes' ); ?>
< table class = " form-table " >
< tr >
< th colspan = " 2 " >
< ul >
< li >< ? php esc_html_e ( 'You can use placeholders {wp_content_dir}, {plugins_dir}, {uploads_dir} instead of writing folder paths (wp-content, wp-content/plugins, wp-content/uploads).' , 'w3-total-cache' ); ?> </li>
< li >
< ? php
echo wp_kses (
sprintf (
// translators: 1 opening HTML acronym tag, 2 closing HTML acronym tag,
// translators: 3 opening HTML acronym tag, 4 closing HTML acronym tag,
// translators: 5 opening HTML a tag to W3TC BrowserCache admin page, 6 closing HTML a tag.
__ (
'If using Amazon Web Services or Self-Hosted %1$sCDN%2$s types, enable %3$sHTTP%4$s compression in the "Media & Other Files" section on %5$sBrowser Cache%6$s Settings tab.' ,
'w3-total-cache'
),
'<acronym title="' . esc_attr__ ( 'Content Delivery Network' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<acronym title="' . esc_attr__ ( 'Hypertext Transfer Protocol' , 'w3-total-cache' ) . '">' ,
'</acronym>' ,
'<a href="' . esc_url ( admin_url ( 'admin.php?page=w3tc_browsercache' ) ) . '">' ,
'</a>'
),
array (
'a' => array (
'href' => array (),
),
'acronym' => array (
'title' => array (),
),
)
);
?>
</ li >
</ ul >
</ th >
</ tr >
</ table >
< ? php Util_Ui :: postbox_footer (); ?>
</ div >
</ form >