Easy Digital Downloads
  • Package
  • Function
  • Tree

Packages

  • EDD
    • Admin
      • Actions
      • Add-ons
      • Dashboard
      • Discounts
      • Downloads
      • Export
      • Notices
      • Pages
      • Payments
      • Reports
      • Settings
      • System
      • Upgrades
      • Upload
      • Welcome
    • Cart
    • Checkout
    • Classes
      • API
      • Fees
      • HTML
      • Roles
      • Session
    • Emails
    • Functions
      • AJAX
      • Compatibility
      • Errors
      • Formatting
      • Install
      • Login
      • Taxes
      • Templates
    • Gateways
    • Logging
    • Payments
    • Shortcodes
    • Widgets

Functions

  • edd_add_ons_get_feed
  • edd_add_ons_init
  • edd_add_ons_page
 1 <?php
 2 /**
 3  * Admin Add-ons
 4  *
 5  * @package     EDD
 6  * @subpackage  Admin/Add-ons
 7  * @copyright   Copyright (c) 2013, Pippin Williamson
 8  * @license     http://opensource.org/licenses/gpl-2.0.php GNU Public License
 9  * @since       1.0
10  */
11 
12 // Exit if accessed directly
13 if ( ! defined( 'ABSPATH' ) ) exit;
14 
15 /**
16  * Add-ons Page Init
17  *
18  * Hooks check feed to the page load action.
19  *
20  * @since 1.0
21  * @global $edd_add_ons_page EDD Add-ons Pages
22  * @return void
23  */
24 function edd_add_ons_init() {
25     global $edd_add_ons_page;
26     add_action( 'load-' . $edd_add_ons_page, 'edd_add_ons_check_feed' );
27 }
28 add_action( 'admin_menu', 'edd_add_ons_init');
29 
30 /**
31  * Add-ons Page
32  *
33  * Renders the add-ons page content.
34  *
35  * @since 1.0
36  * @return void
37  */
38 function edd_add_ons_page() {
39     ob_start(); ?>
40     <div class="wrap" id="edd-add-ons">
41         <h2>
42             <?php _e( 'Add Ons for Easy Digital Downloads', 'edd' ); ?>
43             &nbsp;&mdash;&nbsp;<a href="http://easydigitaldownloads.com/extensions/?ref=1" class="button-primary" title="<?php _e( 'Browse All Extensions', 'edd' ); ?>" target="_blank"><?php _e( 'Browse All Extensions', 'edd' ); ?></a>
44         </h2>
45         <p><?php _e( 'These add-ons extend the functionality of Easy Digital Downloads.', 'edd' ); ?></p>
46         <?php echo edd_add_ons_get_feed(); ?>
47     </div>
48     <?php
49     echo ob_get_clean();
50 }
51 
52 /**
53  * Add-ons Get Feed
54  *
55  * Gets the add-ons page feed.
56  *
57  * @since 1.0
58  * @return void
59  */
60 function edd_add_ons_get_feed() {
61     if ( false === ( $cache = get_transient( 'easydigitaldownloads_add_ons_feed' ) ) ) {
62         $feed = wp_remote_get( 'https://easydigitaldownloads.com/?feed=extensions', array( 'sslverify' => false ) );
63         if ( ! is_wp_error( $feed ) ) {
64             if ( isset( $feed['body'] ) && strlen( $feed['body'] ) > 0 ) {
65                 $cache = wp_remote_retrieve_body( $feed );
66                 set_transient( 'easydigitaldownloads_add_ons_feed', $cache, 3600 );
67             }
68         } else {
69             $cache = '<div class="error"><p>' . __( 'There was an error retrieving the extensions list from the server. Please try again later.', 'edd' ) . '</div>';
70         }
71     }
72     return $cache;
73 }
Easy Digital Downloads API documentation generated by ApiGen 2.8.0