80 lines
3.0 KiB
PHP
80 lines
3.0 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* WPSEO plugin file.
|
||
|
*
|
||
|
* @package WPSEO\Admin\Views
|
||
|
*
|
||
|
* @uses string $paper_id The ID of the paper.
|
||
|
* @uses string $paper_id_prefix The ID prefix of the paper.
|
||
|
* @uses bool $collapsible Whether the collapsible should be rendered.
|
||
|
* @uses array $collapsible_config Configuration for the collapsible.
|
||
|
* @uses string $collapsible_header_class Class for the collapsible header.
|
||
|
* @uses string $title The title.
|
||
|
* @uses string $title_after Additional content to render after the title.
|
||
|
* @uses string $view_file Path to the view file.
|
||
|
* @uses WPSEO_Admin_Help_Panel $help_text The help text.
|
||
|
*/
|
||
|
|
||
|
if ( ! defined( 'WPSEO_VERSION' ) ) {
|
||
|
header( 'Status: 403 Forbidden' );
|
||
|
header( 'HTTP/1.1 403 Forbidden' );
|
||
|
exit();
|
||
|
}
|
||
|
|
||
|
?>
|
||
|
<div
|
||
|
class="<?php echo esc_attr( 'paper tab-block ' . $class ); ?>"<?php echo ( $paper_id ) ? ' id="' . esc_attr( $paper_id_prefix . $paper_id ) . '"' : ''; ?>>
|
||
|
|
||
|
<?php
|
||
|
if ( ! empty( $title ) ) {
|
||
|
|
||
|
if ( ! empty( $collapsible ) ) {
|
||
|
|
||
|
$button_id_attr = '';
|
||
|
if ( ! empty( $paper_id ) ) {
|
||
|
$button_id_attr = sprintf( ' id="%s"', esc_attr( $paper_id_prefix . $paper_id . '-button' ) );
|
||
|
}
|
||
|
|
||
|
printf(
|
||
|
'<h2 class="%1$s"><button%2$s type="button" class="toggleable-container-trigger" aria-expanded="%3$s">%4$s%5$s <span class="toggleable-container-icon dashicons %6$s" aria-hidden="true"></span></button></h2>',
|
||
|
esc_attr( 'collapsible-header ' . $collapsible_header_class ),
|
||
|
// phpcs:ignore WordPress.Security.EscapeOutput -- $button_id_attr is escaped above.
|
||
|
$button_id_attr,
|
||
|
esc_attr( $collapsible_config['expanded'] ),
|
||
|
// phpcs:ignore WordPress.Security.EscapeOutput -- $help_text is an instance of WPSEO_Admin_Help_Panel, which escapes it's own output.
|
||
|
$help_text->get_button_html(),
|
||
|
esc_html( $title ) . wp_kses_post( $title_after ),
|
||
|
wp_kses_post( $collapsible_config['toggle_icon'] )
|
||
|
);
|
||
|
}
|
||
|
else {
|
||
|
echo '<div class="paper-title"><h2 class="help-button-inline">',
|
||
|
esc_html( $title ),
|
||
|
wp_kses_post( $title_after ),
|
||
|
// phpcs:ignore WordPress.Security.EscapeOutput -- $help_text is an instance of WPSEO_Admin_Help_Panel, which escapes it's own output.
|
||
|
$help_text->get_button_html(),
|
||
|
'</h2></div>';
|
||
|
}
|
||
|
}
|
||
|
?>
|
||
|
<?php
|
||
|
|
||
|
// phpcs:ignore WordPress.Security.EscapeOutput -- $help_text is an instance of WPSEO_Admin_Help_Panel, which escapes it's own output.
|
||
|
echo $help_text->get_panel_html();
|
||
|
|
||
|
$container_id_attr = '';
|
||
|
if ( ! empty( $paper_id ) ) {
|
||
|
$container_id_attr = sprintf( ' id="%s"', esc_attr( $paper_id_prefix . $paper_id . '-container' ) );
|
||
|
}
|
||
|
|
||
|
printf(
|
||
|
'<div%1$s class="%2$s">%3$s</div>',
|
||
|
// phpcs:ignore WordPress.Security.EscapeOutput -- $container_id_attr is escaped above.
|
||
|
$container_id_attr,
|
||
|
esc_attr( 'paper-container ' . $collapsible_config['class'] ),
|
||
|
$content
|
||
|
);
|
||
|
?>
|
||
|
|
||
|
</div>
|