it-swarm.com.de

Holen Sie sich die neueste Plugin-Version von WP API

Ich schreibe ein Plugin, das Daten von WP prüft und sammelt - einschließlich Informationen zu installierten Plugins.

Ich kann die meisten Daten, die ich benötige, mit get_plugins() abrufen. Ich möchte jedoch auch nach der neuesten vom Repository gehosteten Version jedes Plugins suchen. Es scheint jedoch keine API-Methode dafür zu finden.

Entschuldigung, ich habe keinen Code zum Einfügen zum Kommentieren. Aber ich hatte eine gute Suche - ehrlich!

Wo finde ich einen einfachen und effizienten Weg, um zu überprüfen?

2
Q Studio

Ok - hier ist eine Methode - danke an @Rarst, der mich in die richtige Richtung gelenkt hat.

Fügen Sie die erforderliche Datei hinzu, wenn die Funktion plugins_api nicht gefunden wird:

if ( ! function_exists( 'plugins_api' ) ) {
      require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
}

Bereiten Sie dann eine Abfrage vor, die an plugins_api () übergeben werden soll:

// set the arguments to get latest info from repository via API ##
$args = array(
    'slug' => 'plugin-slug-name',
    'fields' => array(
        'version' => true,
    )
);

/** Prepare our query */
$call_api = plugins_api( 'plugin_information', $args );

/** Check for Errors & Display the results */
if ( is_wp_error( $call_api ) ) {

    $api_error = $call_api->get_error_message();

} else {

    //echo $call_api; // everything ##

    if ( ! empty( $call_api->version ) ) {

        $version_latest = $call_api->version;

    }

}

ref: http://wp.tutsplus.com/tutorials/plugins/communicating-with-the-wordpress-org-plugin-api/

5
Q Studio

Es gibt nicht ganz einfach eine Möglichkeit, dies zu tun, da WP nach Plugin-Updates sucht, indem alle ihre Daten in großen Mengen gesendet werden, und es ist ziemlich vergraben in wp_update_plugins() .

Es führt eine Anforderung an den http://api.wordpress.org/plugins/update-check/1.1/-API-Endpunkt aus und ruft Daten zu allen Aktualisierungen ab. Es ist nicht als weitergehende Funktion für Einzelprüfungen verfügbar.

Sie können auch in Plugin Information API nachsehen, um dies vom Repository aus zu erreichen.

2
Rarst