App每日推送提供的iOS App推荐widget * Plugin Author: Bolo * Plugin URI: http://www.codecto.com * Author URI: http://www.codecto.com * Version: 1.0 */ add_action('widgets_init', array('Appdp_Widget', 'widgets_init')); add_action('init', array('Appdp_Widget', 'init')); class Appdp_Widget extends WP_Widget { function widgets_init() { register_widget('Appdp_Widget'); add_action('sidebar_admin_setup', array('Appdp_Widget', 'delete_cache')); } function init() { wp_register_style('appdp-list', plugins_url('/'.basename(dirname(__FILE__)).'/style.css'), array(), '1.0', 'all'); wp_enqueue_style('appdp-list'); } function delete_cache() { if(isset($_POST['delete_widget']) && $_POST['delete_widget'] && isset($_POST['widget-id']) && $_POST['widget-id']) { delete_transient($_POST['widget-id']); } } function __construct() { $widget_ops = array('classname' => 'appdp_widget', 'description' => __( 'iOS应用挂件') ); parent::__construct('appdp_widget', __('Appdp Widget'), $widget_ops); } function widget( $args, $instance ) { extract( $args ); $title = apply_filters('widget_title', empty( $instance['title'] ) ? __( 'iOS应用' ) : $instance['title'], $instance, $this->id_base); $c = empty( $instance['c'] ) ? '' : $instance['c']; $pr = empty( $instance['pr'] ) ? '' : $instance['pr']; $d = empty( $instance['d'] ) ? '' : $instance['d']; $ppp = empty( $instance['ppp'] ) ? 5 : $instance['ppp']; $live = empty( $instance['live'] ) ? 3600*24 : $instance['live']; if(!$apps = get_transient($args['widget_id'])) { include_once(ABSPATH . WPINC . '/load.php'); $http = new WP_Http(); $data = $http->get(add_query_arg(array('c' => $c, 'pr' => $pr, 'd' => $d, 'ppp' => $ppp), 'http://appdp.com/openapi/apps.php')); if(!is_wp_error($data) && $data['response']['code'] == 200){ $apps = json_decode($data['body']); set_transient($args['widget_id'], $apps, $live); } } $before_widget = '
  • '; echo $before_widget; if ($title) { echo $before_title . $title . $after_title; } ?>

    暂时没有发现相关的App

    id); $instance['title'] = strip_tags($new_instance['title']); $instance['c'] = $new_instance['c']; $instance['pr'] = $new_instance['pr']; $instance['d'] = $new_instance['d']; $instance['ppp'] = (int)$new_instance['ppp']; $instance['live'] = $new_instance['live']; return $instance; } function form( $instance ) { //Defaults $instance = wp_parse_args( (array) $instance, array( 'c' => '', 'title' => '', 'pr' => '', 'd' => '', 'ppp' => 5, 'live' => 3600*24) ); //print_r($instance); $title = esc_attr( $instance['title'] ); $c = esc_attr( $instance['c'] ); $d = esc_attr( $instance['d'] ); $pr = esc_attr( $instance['pr'] ); $ppp = (int)$instance['ppp']; $live = (int)$instance['live']; //echo add_query_arg(array('c' => $c, 'pr' => $pr, 'd' => $d), 'http://appdp.com/openapi/apps.php'); ?>