ProShell v2.0
Dashboard
Server Info
Server: 158.106.128.192
PHP: 8.2.33
home
planet5
public_html
bansibaba.com
2026-09-14 19:17:21
Editing: class-yoast-input-select.php
Cancel
Save Changes
<?php /** * WPSEO plugin file. * * @package WPSEO\Admin */ /** * Class for generating a html select. */ class Yoast_Input_Select { /** * The id attribute value. * * @var string */ private $select_id; /** * The name attribute value. * * @var string */ private $select_name; /** * Additional select attributes. * * @var array */ private $select_attributes = []; /** * Array with the options to parse. * * @var array */ private $select_options; /** * The current selected option. * * @var string */ private $selected_option; /** * Constructor. * * @param string $select_id ID for the select. * @param string $select_name Name for the select. * @param array $select_options Array with the options to parse. * @param string $selected_option The current selected option. */ public function __construct( $select_id, $select_name, array $select_options, $selected_option ) { $this->select_id = $select_id; $this->select_name = $select_name; $this->select_options = $select_options; $this->selected_option = $selected_option; } /** * Print the rendered view. * * @return void */ public function output_html() { // Extract it, because we want each value accessible via a variable instead of accessing it as an array. extract( $this->get_select_values() ); require WPSEO_PATH . 'admin/views/form/select.php'; } /** * Return the rendered view. * * @return string */ public function get_html() { ob_start(); $this->output_html(); $rendered_output = ob_get_contents(); ob_end_clean(); return $rendered_output; } /** * Add an attribute to the attributes property. * * @param string $attribute The name of the attribute to add. * @param string $value The value of the attribute. * * @return void */ public function add_attribute( $attribute, $value ) { $this->select_attributes[ $attribute ] = $value; } /** * Return the set fields for the select. * * @return array */ private function get_select_values() { return [ 'id' => $this->select_id, 'name' => $this->select_name, 'attributes' => $this->get_attributes(), 'options' => $this->select_options, 'selected' => $this->selected_option, ]; } /** * Return the attribute string, when there are attributes set. * * @return string */ private function get_attributes() { $attributes = $this->select_attributes; if ( ! empty( $attributes ) ) { array_walk( $attributes, [ $this, 'parse_attribute' ] ); return implode( ' ', $attributes ) . ' '; } return ''; } /** * Get an attribute from the attributes. * * @param string $value The value of the attribute. * @param string $attribute The attribute to look for. * * @return void */ private function parse_attribute( &$value, $attribute ) { $value = sprintf( '%s="%s"', sanitize_key( $attribute ), esc_attr( $value ) ); } }
Upload Files
Cancel
Upload
Create New
Cancel
Create
Change Permissions
Cancel
Save
Change Date
Cancel
Save
Rename Item
Cancel
Save
Confirm Delete
Are you sure you want to delete the selected items?
Cancel
Delete