Skip to content

Instantly share code, notes, and snippets.

@moabi
Last active October 15, 2015 12:05
Show Gist options
  • Save moabi/a6caf28e92ba79a38ce8 to your computer and use it in GitHub Desktop.
Save moabi/a6caf28e92ba79a38ce8 to your computer and use it in GitHub Desktop.
twitter wordpress widget - name edition
<?php
class Last_Tweets extends WP_Widget {
/**
* Register widget with WordPress.
*/
function __construct() {
parent::__construct(
'Last-post', // Base ID
__('Lyra Network - Last Tweets', 'twentyfifteen'), // Name
array('description' => __('show the last Tweets', 'twentyfifteen'),) // Args
);
}
/**
* Front-end display of widget.
*
* @see WP_Widget::widget()
*
* @param array $args Widget arguments.
* @param array $instance Saved values from database.
*/
public function widget($args, $instance) {
echo $args['before_widget'];
echo ' <a class="twitter-timeline" href="https://twitter.com/' . $instance['title'] . '" height="300" data-widget-id="604293045534756865">Tweets by @' . $instance['title'] . '</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?\'http\':\'https\';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>';
echo $args['after_widget'];
}
/**
* Back-end widget form.
*
* @see WP_Widget::form()
*
* @param array $instance Previously saved values from database.
*/
public function form($instance) {
$title = !empty($instance['title']) ? $instance['title'] : __('Twitter Name', 'twentyfifteen');
?>
<p>
<label
for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Twitter Name:'); ?></label>
<input class="widefat" id="<?php echo $this->get_field_id('title'); ?>"
name="<?php echo $this->get_field_name('title'); ?>" type="text"
value="<?php echo esc_attr($title); ?>">
</p>
<?php
}
/**
* Sanitize widget form values as they are saved.
*
* @see WP_Widget::update()
*
* @param array $new_instance Values just sent to be saved.
* @param array $old_instance Previously saved values from database.
*
* @return array Updated safe values to be saved.
*/
public function update($new_instance, $old_instance) {
$instance = array();
$instance['title'] = (!empty($new_instance['title'])) ? strip_tags($new_instance['title']) : '';
return $instance;
}
} // class Foo_Widget
// register Foo_Widget widget
function register_Last_Tweets_widget() {
register_widget('Last_Tweets');
}
add_action('widgets_init', 'register_Last_Tweets_widget');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment