WP PLUGIN CNV_PROTECTION_TXT
ファイル分割
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
if ( ! defined( 'ABSPATH' ) ) {
|
||||
exit;
|
||||
} // Exit if accessed directly
|
||||
|
||||
if ( ! class_exists( 'cnv_protection_txt' ) ) {
|
||||
|
||||
class cnv_protection_txt {
|
||||
|
||||
public function __construct() {
|
||||
add_action( 'admin_menu', array( $this, 'add_pages' ) );
|
||||
add_filter( 'protected_title_format', array( $this, 'edit_protected_word' ) );
|
||||
add_filter( 'the_password_form', array( $this, 'protect_password_form' ) );
|
||||
}
|
||||
|
||||
public function add_pages() {
|
||||
add_menu_page(
|
||||
'アクセス権限ページ設定',
|
||||
'アクセス権限ページ設定',
|
||||
'level_8',
|
||||
__FILE__,
|
||||
array(
|
||||
$this,
|
||||
'show_text_option_page'
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public function show_text_option_page() {
|
||||
$update_option = filter_input( INPUT_POST, '_cnv_protect_options', FILTER_SANITIZE_STRING, FILTER_REQUIRE_ARRAY );
|
||||
if ( ! empty( $update_option ) ) {
|
||||
check_admin_referer( 'cnv_options' );
|
||||
update_option( '_cnv_protect_options', $update_option );
|
||||
include_once cnv_protection_txt_settings::TEMPLATE_DIR . 'success.php';
|
||||
}
|
||||
include_once cnv_protection_txt_settings::TEMPLATE_DIR . 'cnv_protection_txt_form.php';
|
||||
}
|
||||
|
||||
public function edit_protected_word( $text ) {
|
||||
$opt = get_option( '_cnv_protect_options' );
|
||||
if ( isset( $opt['flag'] ) && $opt['flag'] == 2 ) {
|
||||
return '%s';
|
||||
}
|
||||
|
||||
return $text;
|
||||
}
|
||||
|
||||
//パスワード保護時のメッセージ
|
||||
public function protect_password_form( $form_text ): string {
|
||||
$opt = get_option( '_cnv_protect_options' );
|
||||
if ( isset( $opt['text'] ) && ! empty( $opt['text'] ) ) {
|
||||
$alert_text = $opt['text'];
|
||||
} else {
|
||||
$alert_text = cnv_protection_txt_settings::ALERT_TEXT;
|
||||
}
|
||||
if ( isset( $opt['label'] ) && ! empty( $opt['label'] ) ) {
|
||||
$btn_label = $opt['label'] . ' : ';
|
||||
} else {
|
||||
$btn_label = cnv_protection_txt_settings::BTN_LABEL . ' : ';
|
||||
}
|
||||
if ( isset( $opt['btn'] ) && ! empty( $opt['btn'] ) ) {
|
||||
$btn_text = $opt['btn'];
|
||||
} else {
|
||||
$btn_text = cnv_protection_txt_settings::BTN_TEXT;
|
||||
}
|
||||
|
||||
return '
|
||||
<form action="' . wp_login_url() . '?action=postpass" class="post-password-form" method="post">
|
||||
<p>' . nl2br( esc_html( $alert_text ) ) . '</p>
|
||||
<p>
|
||||
<label for="pwbox">' . esc_html( $btn_label ) .
|
||||
'<input name="post_password" id="pwbox" type="password" size="20">
|
||||
</label>
|
||||
<input type="submit" name="Submit" value="' . esc_attr( $btn_text ) . '">
|
||||
</p>
|
||||
</form>';
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user