PHPackages                             yogigr/wpthemeapi - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. yogigr/wpthemeapi

ActiveLibrary[Search &amp; Filtering](/categories/search)

yogigr/wpthemeapi
=================

A package for browsing WordPress themes using the Envato API. This package allows you to easily search, filter, and retrieve information about WordPress themes from Envato, streamlining the process of finding the perfect theme for your website.

1.0.0(1y ago)09MITPHP

Since Jul 6Pushed 1y ago1 watchersCompare

[ Source](https://github.com/yogigr/wpthemeapi)[ Packagist](https://packagist.org/packages/yogigr/wpthemeapi)[ RSS](/packages/yogigr-wpthemeapi/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (2)Used By (0)

wpthemeapi
==========

[](#wpthemeapi)

A Laravel package for browsing WordPress themes using the Envato API. This package allows you to easily search, filter, and retrieve information about WordPress themes from Envato, streamlining the process of finding the perfect theme for your website.

Installation
------------

[](#installation)

To install the `WpThemeApi` package, follow these steps:

1. **Require the Package via Composer**

    Run the following command in your Laravel project directory:

    ```
    composer require yogigr/wpthemeapi
    ```
2. **Publish the Configuration File**

    Publish the configuration file using the following command:

    ```
    php artisan vendor:publish --provider="yogigr\WpThemeApi\Providers\WpThemeApiServiceProvider"
    ```
3. **Set Up Environment Variables**

    Add your Envato API token to your .env file:

    ```
     ENVATO_TOKEN=your-envato-api-token
    ```

Usage
-----

[](#usage)

After installation, you can use the package via the provided Facade. Below are examples of how to fetch categories and items.

### Fetch Categories

[](#fetch-categories)

To fetch WordPress themes categories:

```
use yogigr\WpThemeApi\Facades\WpThemeApi;

$categories = WpThemeApi::categories();

foreach ($categories as $category) {
    echo $category['name'] . ' - ' . $category['path'] . PHP_EOL;
}
```

Parameters for `categories`

- `string $path` : The path filter for categories. Default is "wordpress/". Only categories that contain this path will be returned.

### Fetch Items

[](#fetch-items)

To fetch items:

```
use yogigr\WpThemeApi\Facades\WpThemeApi;

$items = WpThemeApi::items();

foreach ($items['themes'] as $item) {
    echo $item['name'] . ' - ' . $item['price_cents'] / 100 . ' USD' . PHP_EOL;
}
```

Parameters for `items`

- `string $category`: The category of items to fetch. Default is "wordpress".
- `string $sortBy`: The attribute to sort the items by. Sort by one of the following: "relevance", "rating", "sales", "price", "date", "updated", "category", "name", "trending", "featured\_until". Default is "sales".
- `string $sortDir`: The direction to sort the items ("asc" for ascending, "desc" for descending). Default is "desc".
- `int $perPage`: The number of items to fetch per page. Default is 10.
- `int $page`: The page number to fetch. Default is 1.

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance33

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

677d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1aab74c0de69639b5581f85e843d3dd54458ab74b00af0d414be0dd6cf238659?d=identicon)[yogigr](/maintainers/yogigr)

---

Top Contributors

[![yogigr](https://avatars.githubusercontent.com/u/13002716?v=4)](https://github.com/yogigr "yogigr (14 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/yogigr-wpthemeapi/health.svg)

```
[![Health](https://phpackages.com/badges/yogigr-wpthemeapi/health.svg)](https://phpackages.com/packages/yogigr-wpthemeapi)
```

###  Alternatives

[ruflin/elastica

Elasticsearch Client

2.3k50.4M203](/packages/ruflin-elastica)[opensearch-project/opensearch-php

PHP Client for OpenSearch

15024.3M65](/packages/opensearch-project-opensearch-php)[mailerlite/laravel-elasticsearch

An easy way to use the official PHP ElasticSearch client in your Laravel applications.

934529.3k2](/packages/mailerlite-laravel-elasticsearch)[massive/search-bundle

Massive Search Bundle

721.4M13](/packages/massive-search-bundle)[outl1ne/nova-multiselect-filter

Multiselect filter for Laravel Nova.

45802.7k3](/packages/outl1ne-nova-multiselect-filter)[handcraftedinthealps/zendsearch

a general purpose text search engine written entirely in PHP 5

39921.0k35](/packages/handcraftedinthealps-zendsearch)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
