WP_Customize_Themes_Section::render()

In this article

Render the themes section, which behaves like a panel.

Source

 */
public $action = '';

/**
 * Theme section filter type.
 *
 * Determines whether filters are applied to loaded (local) themes or by initiating a new remote query (remote).
 * When filtering is local, the initial themes query is not paginated by default.
 *
 * @since 4.9.0
 * @var string
 */
public $filter_type = 'local';

/**
 * Gets section parameters for JS.
 *
 * @since 4.9.0
 * @return array Exported parameters.
 */
public function json() {
	$exported                = parent::json();
	$exported['action']      = $this->action;
	$exported['filter_type'] = $this->filter_type;

	return $exported;
}

/**
 * Renders a themes section as a JS template.
 *
 * The template is only rendered by PHP once, so all actions are prepared at once on the server side.
 *
 * @since 4.9.0
 */
protected function render_template() {
	?>
	<li id="accordion-section-{{ data.id }}" class="theme-section">
		<button type="button" class="customize-themes-section-title themes-section-{{ data.id }}">{{ data.title }}</button>
		<?php if ( current_user_can( 'install_themes' ) || is_multisite() ) : // @todo Upload support. ?>
		<?php endif; ?>
		<div class="customize-themes-section themes-section-{{ data.id }} control-section-content themes-php">
			<div class="theme-overlay" tabindex="0" role="dialog" aria-label="<?php esc_attr_e( 'Theme Details' ); ?>"></div>
			<div class="theme-browser rendered">
				<div class="customize-preview-header themes-filter-bar">
					<?php $this->filter_bar_content_template(); ?>
				</div>
				<?php $this->filter_drawer_content_template(); ?>
				<div class="error unexpected-error" style="display: none; ">
					<p>

Changelog

VersionDescription
4.2.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.