Index: src/wp-admin/css/customize-controls.css
===================================================================
--- src/wp-admin/css/customize-controls.css (revision 38147)
+++ src/wp-admin/css/customize-controls.css (working copy)
@@ -534,6 +534,13 @@
margin-bottom: 5px;
}
+.customize-control-description a.external-link:after {
+ font: 16px/11px dashicons;
+ content: "\f310";
+ top: 3px;
+ position: relative;
+}
+
.customize-control-color .color-picker,
.customize-control-upload div {
line-height: 28px;
Index: src/wp-includes/class-wp-customize-control.php
===================================================================
--- src/wp-includes/class-wp-customize-control.php (revision 38147)
+++ src/wp-includes/class-wp-customize-control.php (working copy)
@@ -446,7 +446,7 @@
*
* Allows the content to be overriden without having to rewrite the wrapper in `$this::render()`.
*
- * Supports basic input types `text`, `checkbox`, `textarea`, `radio`, `select` and `dropdown-pages`.
+ * Supports basic input types `none`, `text`, `checkbox`, `textarea`, `radio`, `select` and `dropdown-pages`.
* Additional input types such as `email`, `url`, `number`, `hidden` and `date` are supported implicitly.
*
* Control content can alternately be rendered in JS. See WP_Customize_Control::print_template().
@@ -455,6 +455,14 @@
*/
protected function render_content() {
switch( $this->type ) {
+ case 'none':
+ if ( ! empty( $this->label ) ) : ?>
+ label ); ?>
+ description ) ) : ?>
+ description; ?>
+