$menu_item ) {
if ( $submenu['options-general.php'][$i][2] == 'wft_twitter_feed' ) {
$page_data = $submenu['options-general.php'][$i];
}
}
// output
?>
Settings';
}
return $actions;
}
add_filter('plugin_action_links', 'wft_twitter_feed_settings_link', 2, 2);
/* регистрация настроек в системе */
function wft_twitter_feed_settings_init(){
register_setting(
'wft_twitter_feed_options',
'wft_twitter_feed_options',
'wft_twitter_feed_options_validate'
);
add_settings_section(
'wft_twitter_feed_settings',
'Twitter Feed Settings',
'wft_twitter_feed_settings_desc',
'wft_twitter_feed'
);
add_settings_field(
'wft_twitter_feed_widget_code',
'Embed Widget Code',
'wft_twitter_feed_widget_code_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_screen_name',
'Screen Name',
'wft_twitter_feed_screen_name_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_height',
'Height',
'wft_twitter_feed_height_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_show_header',
'Show Header',
'wft_twitter_feed_show_header_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_show_replies',
'Show Replies',
'wft_twitter_feed_show_replies_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_show_borders',
'Show Borders',
'wft_twitter_feed_show_borders_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_show_footer',
'Show Footer',
'wft_twitter_feed_show_footer_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_show_scrollbar',
'Show Scrollbar',
'wft_twitter_feed_show_scrollbar_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_link_color',
'Link Color',
'wft_twitter_feed_link_color_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
add_settings_field(
'wft_twitter_feed_theme',
'Theme',
'wft_twitter_feed_theme_field',
'wft_twitter_feed',
'wft_twitter_feed_settings'
);
}
add_action('admin_init', 'wft_twitter_feed_settings_init');
/* обработка ввода */
function wft_twitter_feed_options_validate($input){
global $allowedposttags, $allowedrichhtml;
/*
if ( isset($input['screen_name']) ) {
$input['screen_name'] = wp_kses_post($input['screen_name']);
}
*/
return $input;
}
/* описание */
function wft_twitter_feed_settings_desc(){
echo "";
}
/* вывод полей */
function wft_twitter_feed_widget_code_field() {
$options = get_option('wft_twitter_feed_options');
$value = (isset($options['widget_code'])) ? $options['widget_code'] : '';
//$value = esc_textarea($value);
?>
';
}
function wft_twitter_feed_height_field() {
$options = get_option('wft_twitter_feed_options');
$value = (isset($options['height'])) ? $options['height'] : '335';
echo '';
}
function wft_twitter_feed_show_header_field() {
$options = get_option('wft_twitter_feed_options');
$value = (isset($options['show_header'])) ? $options['show_header'] : '0';
?>
value="1" name="wft_twitter_feed_options[show_header]">
value="0" name="wft_twitter_feed_options[show_header]">
value="1" name="wft_twitter_feed_options[show_replies]">
value="0" name="wft_twitter_feed_options[show_replies]">
value="1" name="wft_twitter_feed_options[show_borders]">
value="0" name="wft_twitter_feed_options[show_borders]">
value="1" name="wft_twitter_feed_options[show_footer]">
value="0" name="wft_twitter_feed_options[show_footer]">
value="1" name="wft_twitter_feed_options[show_scrollbar]">
value="0" name="wft_twitter_feed_options[show_scrollbar]">
';
}
function wft_twitter_feed_theme_field() {
$options = get_option('wft_twitter_feed_options');
$value = (isset($options['theme'])) ? $options['theme'] : 'light';
?>
value="dark" name="wft_twitter_feed_options[theme]">
value="light" name="wft_twitter_feed_options[theme]">
';print_r($options);echo'';
if ( !$options['widget_code'] ) {
return '';
}
//var_dump($options['widget_code']);
$dom = new DOMDocument();
$dom->loadHTML($options['widget_code']);
$presets = $dom->getElementsByTagName('a')->item(0);
$presets->setAttribute('height', $options['height']);
if ( !empty($options['screen_name']) ) {
$presets->setAttribute('data-screen-name', $options['screen_name']);
}
$presets->setAttribute('data-theme', $options['theme']);
$presets->setAttribute('data-link-color', $options['link_color']);
$presets->setAttribute('data-show-replies', $options['show_replies'] ? 'true' : 'false');
$data_chrome = array('transparent');
if ( !$options['show_header'] ) {
$data_chrome[] = 'noheader';
}
if ( !$options['show_borders'] ) {
$data_chrome[] = 'noborders';
}
if ( !$options['show_footer'] ) {
$data_chrome[] = 'nofooter';
}
if ( !$options['show_scrollbar'] ) {
$data_chrome[] = 'noscrollbar';
}
$presets->setAttribute('data-chrome', implode(' ', $data_chrome));
/*
if ( $number_of_tweets > 0 ) {
$presets->setAttribute('data-tweet-limit', $number_of_tweets);
}
*/
$options['widget_code'] = $dom->saveHTML($presets);
//var_dump($options['widget_code']);exit;
echo 'TWITTER FEEDS
';
echo $options['widget_code']
?>