Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/varunsridharan/wp-plugin-version-management

Simple WordPress Plugin Library To Handle Version Management To Provide Easy Upgrade Handling.
https://github.com/varunsridharan/wp-plugin-version-management

vsp-libs wordpress wordpress-development wordpress-php-library wordpress-plugin wordpress-plugin-api wordpress-plugin-development wordpress-plugin-library wordpress-plugins wp wp-developers wp-library wp-plugin wp-plugins

Last synced: 11 days ago
JSON representation

Simple WordPress Plugin Library To Handle Version Management To Provide Easy Upgrade Handling.

Awesome Lists containing this project

README

        

# WP Plugin Version Management
Simple WordPress Plugin Library To Handle Version Management To Provide Easy Upgrade Handling.

[![Latest Stable Version][latest-stable-version-img]][latest-stable-version-link]
[![Latest Unstable Version][latest-Unstable-version-img]][latest-Unstable-version-link]
[![Total Downloads][total-downloads-img]][total-downloads-link]
[![WP][wpcs-img]][wpcs-link]
[![License][license-img]][license-link]
[![composer.lock available][composerlock-img]][composerlock-link]

## Installation
The preferred way to install this extension is through [Composer][composer].

To install **WP Plugin Version Management library**, simply:

$ composer require varunsridharan/wp-plugin-version-management

The previous command will only install the necessary files, if you prefer to **download the entire source code** you can use:

$ composer require varunsridharan/wp-plugin-version-management --prefer-source

You can also **clone the complete repository** with Git:

$ git clone https://github.com/varunsridharan/wp-plugin-version-management.git

Or **install it manually**:

[Download WP Plugin Version Management.zip][downloadzip]:

$ wget https://github.com/varunsridharan/wp-plugin-version-management/archive/master.zip

## Arguments / Options
### `slug`
Unique Key for your plugin
### `version`
You Should Pass your plugins version.
### `logs`
If its set to true then it saves update / install logs in database
#### Example Log
```php
array(
'1.0' => array(
'user_id' => 1, // Stores Current User ID who install / upgrades the plugin
'time' => 2999391, // Stores Upgrade As Timestamp using `current_time('timestamp')`
'from' => false, // Which Version is upgraded from | false means its a fresh install
),
'1.1' => array(
'user_id' => 1, // Stores Current User ID who install / upgrades the plugin
'time' => 3949391, // Stores Upgrade As Timestamp using `current_time('timestamp')`
'from' => '1.0', // Which Version is upgraded from | false means its a fresh install
),
);
```

### `option_name`
Custom database key on where to save your plugins version and logs.
by default it stores all plugins version in database using

#### Example of Common Storage
```php
array(
'your-plugin-slug' => array(
'version' => '',
'logs' => '',
),
'another-plugin-slug' => array(
'version' => '',
'logs' => array(),
),
);
```

The above example are stored in `wp_options` table with a common database key `_vs_wp_plugin_upgrader`

## Activation Usage

```php
'your-plugin-slug', // Uniquq Slug For Your Plugin.
'logs' => true, // Set True to save upgrade logs.
'version' => '1.2', // Your Plugins New Version
), array(
'1.0' => 'your_plugin_install_v1',
'1.1' => 'your_plugin_install_v1_1',
) );

$upgrader->run(); // Run Function Should Be Called.
}
}

```

## Methods
### `version()`
Return current plugins version stored in database

### `logs()`
Returns Current Plugins Logs

## Method Usage Example

```php
$upgrader = new Varunsridharan\WordPress\Plugin_Version_Management( array(
'slug' => 'your-plugin-slug', // Uniquq Slug For Your Plugin.
'option_name'=> true,// use the same value which is used in register_plugin_activation if not set it to true
));

// Returns Current Version
$upgrader->version();

// Returns Logs
$upgrader->logs();
```

---

## šŸ“ Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

[Checkout CHANGELOG.md](https://github.com/varunsridharan/wp-plugin-version-management/blob/main/CHANGELOG.md)

## šŸ¤ Contributing
If you would like to help, please take a look at the list of [issues](https://github.com/varunsridharan/wp-plugin-version-management/issues/).

## šŸ“œ License & Conduct
- [**GNU General Public License v3.0**](https://github.com/varunsridharan/wp-plugin-version-management/blob/main/LICENSE) Ā© [Varun Sridharan](website)
- [Code of Conduct](https://github.com/varunsridharan/wp-plugin-version-management/blob/main/.github/CODE_OF_CONDUCT.md)

## šŸ“£ Feedback
- ā­ This repository if this project helped you! :wink:
- Create An [šŸ”§ Issue](https://github.com/varunsridharan/wp-plugin-version-management/issues/) if you need help / found a bug

## šŸ’° Sponsor
[I][twitter] fell in love with open-source in 2013 and there has been no looking back since! You can read more about me [here][website].
If you, or your company, use any of my projects or like what Iā€™m doing, kindly consider backing me. I'm in this for the long run.

- ā˜• How about we get to know each other over coffee? Buy me a cup for just [**$9.99**][buymeacoffee]
- ā˜•ļøā˜•ļø How about buying me just 2 cups of coffee each month? You can do that for as little as [**$9.99**][buymeacoffee]
- šŸ”° We love bettering open-source projects. Support 1-hour of open-source maintenance for [**$24.99 one-time?**][paypal]
- šŸš€ Love open-source tools? Me too! How about supporting one hour of open-source development for just [**$49.99 one-time ?**][paypal]

[paypal]: https://sva.onl/paypal
[buymeacoffee]: https://sva.onl/buymeacoffee
[twitter]: https://sva.onl/twitter/
[website]: https://sva.onl/website/

## Connect & Say šŸ‘‹
- **Follow** me on [šŸ‘Øā€šŸ’» Github][github] and stay updated on free and open-source software
- **Follow** me on [šŸ¦ Twitter][twitter] to get updates on my latest open source projects
- **Message** me on [šŸ“  Telegram][telegram]
- **Follow** my pet on [Instagram][sofythelabrador] for some _dog-tastic_ updates!

[sofythelabrador]: https://www.instagram.com/sofythelabrador/
[github]: https://sva.onl/github/
[twitter]: https://sva.onl/twitter/
[telegram]: https://sva.onl/telegram/

---


Built With ā™„ By Varun Sridharan




---

[composer]: http://getcomposer.org/download/
[downloadzip]:https://github.com/varunsridharan/wp-plugin-version-management/archive/master.zip

[latest-stable-version-img]: https://poser.pugx.org/varunsridharan/wp-plugin-version-management/version
[latest-Unstable-version-img]: https://poser.pugx.org/varunsridharan/wp-plugin-version-management/v/unstable
[total-downloads-img]: https://poser.pugx.org/varunsridharan/wp-plugin-version-management/downloads
[Latest-Unstable-version-img]: https://poser.pugx.org/varunsridharan/wp-plugin-version-management/v/unstable
[wpcs-img]: https://img.shields.io/badge/WordPress-Standar-1abc9c.svg
[license-img]: https://poser.pugx.org/varunsridharan/wp-plugin-version-management/license
[composerlock-img]: https://poser.pugx.org/varunsridharan/wp-plugin-version-management/composerlock

[latest-stable-version-link]: https://packagist.org/packages/varunsridharan/wp-plugin-version-management
[latest-Unstable-version-link]: https://packagist.org/packages/varunsridharan/wp-plugin-version-management
[total-downloads-link]: https://packagist.org/packages/varunsridharan/wp-plugin-version-management
[Latest-Unstable-Version-link]: https://packagist.org/packages/varunsridharan/wp-plugin-version-management
[wpcs-link]: https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/
[license-link]: https://packagist.org/packages/varunsridharan/wp-plugin-version-management
[composerlock-link]: https://packagist.org/packages/varunsridharan/wp-plugin-version-management