'ads-for-wp-visibility',
'type' => 'radio',
'options' => array(
'show'=>'Show',
'hide'=>'Hide',
),
),
);
public function __construct() {
add_action( 'add_meta_boxes', array( $this, 'adsforwp_add_meta_boxes' ) );
add_action( 'save_post', array( $this, 'adsforwp_save_fields' ) );
}
public function adsforwp_add_meta_boxes() {
foreach ( $this->screen as $single_screen ) {
add_meta_box(
'showadsforcurrentpag',
esc_html__( 'Show Ads for Current Page?', 'ads-for-wp' ),
array( $this, 'adsforwp_meta_box_callback' ),
$single_screen,
'side',
'low'
);
}
}
public function adsforwp_meta_box_callback( $post ) {
wp_nonce_field( 'adsforwp_showadscurrent_data', 'adsforwp_showadscurrent_nonce' );
$this->adsforwp_field_generator( $post );
}
public function adsforwp_field_generator( $post ) {
$output = '';
foreach ( $this->meta_fields as $meta_field ) {
$meta_value = get_post_meta( $post->ID, $meta_field['id'], true );
if ( empty( $meta_value ) ) {
$meta_value = isset($meta_field['default']);
if(empty($meta_value)){
$meta_value ='show';
}
}
switch ( $meta_field['type'] ) {
case 'radio':
$meta_field_label = isset($meta_field['label']);
$input = '
';
break;
default:
$input = sprintf(
'',
$meta_field['type'] !== 'color' ? 'style="width: 100%"' : '',
$meta_field['id'],
$meta_field['id'],
$meta_field['type'],
$meta_value
);
}
$output .= $this->adsforwp_format_rows($input );
}
$common_function_obj = new adsforwp_admin_common_functions();
$allowed_html = $common_function_obj->adsforwp_expanded_allowed_tags();
echo '';
}
public function adsforwp_format_rows($input) {
return '| '.$input.' |
';
}
public function adsforwp_save_fields( $post_id ) {
if ( ! isset( $_POST['adsforwp_showadscurrent_nonce'] ) )
return $post_id;
if ( !wp_verify_nonce( $_POST['adsforwp_showadscurrent_nonce'], 'adsforwp_showadscurrent_data' ) )
return $post_id;
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )
return $post_id;
if ( current_user_can( 'manage_options' ) ) {
$post_meta = array();
$post_meta = $_POST;
foreach ( $this->meta_fields as $meta_field ) {
if ( isset( $post_meta[ $meta_field['id'] ] ) ) {
switch ( $meta_field['type'] ) {
case 'email':
$post_meta[ $meta_field['id'] ] = sanitize_email( $post_meta[ $meta_field['id'] ] );
break;
case 'text':
$post_meta[ $meta_field['id'] ] = sanitize_text_field( $post_meta[ $meta_field['id'] ] );
break;
}
update_post_meta( $post_id, $meta_field['id'], $post_meta[ $meta_field['id'] ] );
} else if ( $meta_field['type'] === 'checkbox' ) {
update_post_meta( $post_id, $meta_field['id'], '0' );
}
}
}
}
}
if (class_exists('adsforwp_view_ads_visibility')) {
new adsforwp_view_ads_visibility;
};