Index: src/wp-admin/css/customize-controls.css
===================================================================
--- src/wp-admin/css/customize-controls.css (revision 36219)
+++ src/wp-admin/css/customize-controls.css (working copy)
@@ -533,6 +533,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 36219)
+++ src/wp-includes/class-wp-customize-control.php (working copy)
@@ -423,7 +423,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 {@see WP_Customize_Control::print_template()}.
@@ -432,6 +432,14 @@
*/
protected function render_content() {
switch( $this->type ) {
+ case 'none':
+ if ( ! empty( $this->label ) ) : ?>
+ label ); ?>
+ description ) ) : ?>
+ description; ?>
+