Si vous n'êtes pas au courant, Envato dispose d'une API stable et fantastique pour travailler qui est super puissante et super simple. La dernière version (au moment de l'écriture) est sortie v2. Dans cet article, nous verrons comment accéder à chaque ensemble public à partir de l'API Envato..
Tout d’abord: vous devez savoir où trouver l’API, de quoi il s’agit et comment cela fonctionne. Vous pouvez trouver la version officielle de l'API sur les forums, ainsi que la mise à jour du thread de l'API et les informations de mise à jour v1..
L'API fonctionne en envoyant des demandes aux URL personnalisées contenant les données que vous souhaitez renvoyer. Les données peuvent également être renvoyées dans deux formats, xml ou JSON, qui est rendu est à vous. Je préfère retourner en JSON et utiliser PHP json_decode pour transformer les données en tableaux imbriqués..
Ci-dessous, vous verrez une capture d'écran de tous les ensembles publics actuellement disponibles. Nous allons passer en revue chacun d'entre eux aujourd'hui, individuellement, avec un exemple de code fonctionnel et un aperçu du résultat final.!
Pour chaque ensemble que nous couvrons aujourd’hui, je vais décrire brièvement son objectif, publier le code, puis expliquer plus tard chaque étape du code ci-dessous. Assurez-vous de poser des questions sur les extraits de code que vous trouverez ci-dessous..
Aussi, n'hésitez pas à utiliser le code et les techniques apprises dans ce tutoriel comme vous le souhaitez!
le articles de blog set vous permet d’interroger et d’afficher une liste d’articles de blog pour un marché donné. Il nécessite un paramètre, à savoir le marché sur lequel vous souhaitez que les récents articles de blog de.
// Initialise curl $ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/blog-posts:themeforest.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['blog-posts']) -1; écho '
Permet de parcourir l'extrait ci-dessus en détail, car le reste de nos extraits sera très similaire.
Gardez ces détails à l'esprit; comme je l'ai dit, vous verrez ce motif dans presque tous les ensembles que nous couvrons, bien qu'ils varient légèrement.
Et une démo de la sortie:
le fils actifs ensemble vous permet de sortir des discussions de forum récemment actives.
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/active-threads:themeforest.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['active-threads'])) -1; écho '
Notez quelques choses ici; Premièrement, nous avons modifié l’URL de notre requête pour refléter le nouvel ensemble que nous souhaitons obtenir. Deuxièmement, notez que les noms des tableaux ont changé comme ils le seront à chaque nouvel ensemble demandé. Enfin, remarquez comment print_r est commenté. Ceci est très utile pour déboguer et afficher la structure et la hiérarchie des données..
Et une démo de la sortie:
Ne laissez pas le nom du nombre de fichiers vous tromper. Ce n'est pas le nombre de fichiers d'utilisateurs (mais nous allons couvrir cela!), Mais plutôt le nombre de fichiers dans une catégorie donnée d'un marché donné. Par exemple, cela vous permettra de connaître le nombre total de modèles de sites que nous avons sur ThemeForest, ce que nous ferons maintenant..
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/number-of-files:themeforest.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['nombre de fichiers'])) -1; écho '
Bien sûr, notre demande d’URL a changé et nous avons passé le paramètre de forêt à thème, qui est le marché, nous allons tirer les données. Voici un exemple de la sortie de cet extrait:
Tout comme la page d’accueil de ThemeForest qui affiche une liste de nouveaux fichiers, vous pouvez également accéder aux nouveaux fichiers d’un marché donné à partir du répertoire d’utilisation. nouveaux fichiers ensemble. Un bon ajout à cet ensemble est la possibilité d'afficher également la vignette de l'article, comme vous le verrez bientôt.
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/new-files:themeforest,wordpress.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['new-files']) -1; écho '
Contrairement à nos extraits précédents, cet ensemble nécessite deux paramètres. Cela nécessite respectivement le marché et la catégorie souhaitée. Notez que nous avons ajouté du PHP et du balisage dans notre boucle for. Cela nous permet d'afficher une vignette de l'article.
Voici un exemple de sortie de cet extrait:
De manière similaire à l'affichage des articles récemment téléchargés sur un marché donné, nous pouvons également afficher les articles populaires d'un marché donné. Peut-être souhaitez-vous afficher une liste des fichiers ThemeForest populaires sur votre blog. Cet extrait permettrait d'atteindre cet objectif.
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/popular:themeforest.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ json_short = $ json_data ['popular'] ['items_last_week']; // Sauvegardez-nous en tapant. $ data_count = count ($ json_short) -1; écho '
Notez comment nous avons ajouté une variable supplémentaire nommée json_short pour nous sauver en tapant dans le tableau imbriqué de données retournées. En quelques lignes de code, nous pouvons afficher la vignette, le nom et le lien de l'élément, comme illustré ci-dessous:
le nouveaux-fichiers-de-utilisateur est un jeu populaire que nous utilisions depuis longtemps lorsque nous avons créé un plugin WordPress avec l’API Envato. Cet ensemble vous permet de récupérer les 10 fichiers les plus récents qu'un utilisateur a téléchargés et les données qui les accompagnent. Vous pouvez utiliser cet ensemble pour vous promouvoir automatiquement sur votre blog chaque fois que vous téléchargez un nouvel élément..
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/new-files-from-user:creatingdrew,themeforest.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['new-files-from-user'])) -1; écho '
Les paramètres requis sont le nom d'utilisateur et le marché souhaité. Le reste de l'extrait suit la même logique que celle décrite précédemment. Voici un exemple de la sortie deux de mes fichiers récents.
le fichiers aléatoires l'ensemble est assez explicite et agit comme prévu. Il renvoie une liste aléatoire de fichiers récemment téléchargés à partir d'un marché donné. Il renvoie également des métadonnées sur le fichier que vous êtes libre d'utiliser et de manipuler..
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/random-new-files:themeforest.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['random-new-files']) -1; écho '
Il n'y a rien que tu n'aies déjà vu ici. Nous utilisons cet ensemble pour afficher des vignettes et le titre. Assurez-vous de vérifier toutes les données qui sont retournées, cela pourrait vous intéresser. Une capture d'écran de la sortie est ci-dessous:
C'est vrai, vous pouvez utiliser l'API pour rechercher des données personnalisées dans des catégories personnalisées à partir de marchés personnalisés! Les développeurs ont vraiment pensé à l'API, et le chercher L'ensemble en est la preuve parfaite. Jetons un coup d'oeil à un extrait de recherche court. N'oubliez pas que vous pourriez extraire toutes ces données de la saisie de l'utilisateur et configurer une recherche Envato personnalisée sur votre site, mais cela dépasse le cadre de ce didacticiel..
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/search:themeforest,wordpress,clean.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); $ data_count = count ($ json_data ['search']) -1; écho '
Ci-dessus quelques explications.
Je vous recommande de consulter la documentation de l'API et de vérifier tout ce qui est possible avec l'ensemble de recherche..
le utilisateur l'ensemble de données renvoie une petite quantité d'informations sur un utilisateur donné. Notez que la clé API est ne pas Champs obligatoires.
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/user:collis.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); // print_r ($ json_data); écho '
Étant donné que nous ne renvoyons les informations que d’un utilisateur, il n’est pas nécessaire d’effectuer une boucle, il suffit de sortir les données..
Vous n'aurez probablement jamais besoin d'utiliser le les libérations ensemble, mais j'ai dit que nous couvririons tous les ensembles publics, et c'est ce que font bien. L'ensemble de versions retourne l'édition et les informations de définition pour l'API. Fondamentalement, il est simplement utilisé pour générer de la documentation. Juste au cas où vous souhaiteriez que l'extrait affiche ces informations, vous pouvez le trouver ci-dessous:
$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http://marketplace.envato.com/api/v1/releases.json'); curl_setopt ($ ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); $ ch_data = curl_exec ($ ch); curl_close ($ ch); if (! empty ($ ch_data)) $ json_data = json_decode ($ ch_data, true); print_r ($ json_data); else echo 'Désolé, un problème est survenu lors de la connexion à l'API.';
Nous avons couvert chaque ensemble répertorié dans l'ensemble public de la v1 de l'API! N'hésitez pas à vous féliciter et à aller manger du bacon, vous le méritez bien.
Cet article a été initialement publié sur le blog ThemeForest l'année dernière. Nous portons actuellement certains des articles les plus populaires sur Nettuts+.