2024-12-27 22:10:25 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
class fourthwall_settings {
|
|
|
|
|
|
|
|
public function __construct() {
|
|
|
|
|
|
|
|
add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
|
|
|
|
add_action( 'admin_init', array( $this, 'init_settings' ) );
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public function add_admin_menu() {
|
|
|
|
|
|
|
|
add_menu_page(
|
|
|
|
esc_html__( 'Fourthwall Store Embed', 'fourthwall_text_domain' ),
|
|
|
|
esc_html__( 'FourthWall Embed', 'fourthwall_text_domain' ),
|
|
|
|
'manage_options',
|
|
|
|
'fwembed',
|
|
|
|
array( $this, 'fourthwall_page_layout' ),
|
|
|
|
'dashicons-store',
|
|
|
|
10
|
|
|
|
);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public function init_settings() {
|
|
|
|
|
|
|
|
register_setting(
|
|
|
|
'fourthwall_settings_group',
|
|
|
|
'fourthwall_settings_name'
|
|
|
|
);
|
|
|
|
|
|
|
|
add_settings_section(
|
|
|
|
'fourthwall_settings_name_section',
|
|
|
|
'',
|
|
|
|
false,
|
|
|
|
'fourthwall_settings_name'
|
|
|
|
);
|
|
|
|
|
|
|
|
add_settings_field(
|
|
|
|
'fourth_url',
|
|
|
|
__( 'Store URL', 'fourthwall_text_domain' ),
|
|
|
|
array( $this, 'render_fourth_url_field' ),
|
|
|
|
'fourthwall_settings_name',
|
|
|
|
'fourthwall_settings_name_section'
|
|
|
|
);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public function fourthwall_page_layout() {
|
|
|
|
|
|
|
|
// Check required user capability
|
|
|
|
if ( !current_user_can( 'manage_options' ) ) {
|
|
|
|
wp_die( esc_html__( 'You do not have sufficient permissions to access this page.', 'fourthwall_text_domain' ) );
|
|
|
|
}
|
|
|
|
|
|
|
|
// Admin Page Layout
|
|
|
|
echo '<div class="wrap">' . "\n";
|
|
|
|
echo ' <h1>' . get_admin_page_title() . '</h1>' . "\n";
|
|
|
|
echo ' <form action="options.php" method="post">' . "\n";
|
|
|
|
|
|
|
|
settings_fields( 'fourthwall_settings_group' );
|
|
|
|
do_settings_sections( 'fourthwall_settings_name' );
|
|
|
|
submit_button();
|
|
|
|
|
|
|
|
echo ' </form>' . "\n";
|
2025-01-11 03:57:13 +00:00
|
|
|
echo ' <div><p>To use the fourthwall Embed, use the shortcode [fourthwall]</p></div>';
|
2024-12-27 22:10:25 +00:00
|
|
|
echo '</div>' . "\n";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
function render_fourth_url_field() {
|
|
|
|
|
|
|
|
// Retrieve data from the database.
|
|
|
|
$options = get_option( 'fourthwall_settings_name' );
|
|
|
|
|
|
|
|
// Set default value.
|
|
|
|
$value = isset( $options['fourth_url'] ) ? $options['fourth_url'] : '';
|
|
|
|
|
|
|
|
// Field output.
|
|
|
|
echo '<input type="url" name="fourthwall_settings_name[fourth_url]" class="regular-text fourth_url_field" placeholder="' . esc_attr__( 'https://some-shop.fourthwall.com', 'fourthwall_text_domain' ) . '" value="' . esc_attr( $value ) . '">';
|
|
|
|
echo '<p class="description">' . __( 'The fourth wall URL', 'fourthwall_text_domain' ) . '</p>';
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
new fourthwall_settings;
|