josantonius/wp-image-handler

This package is abandoned and no longer maintained. No replacement package was suggested.

Adding, updating and deleting images from WordPress posts.

1.0.3 2018-01-16 16:34 UTC

This package is not auto-updated.

Last update: 2022-08-20 12:01:43 UTC


README

Latest Stable Version License

Versión en español

Adding, updating and deleting images from WordPress posts.

Requirements

This library is supported by PHP versions 5.6 or higher and is compatible with HHVM versions 3.0 or higher.

Installation

The preferred way to install this extension is through Composer.

To install WP_Image library, simply:

composer require josantonius/wp-image-handler

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

composer require josantonius/wp-image-handler --prefer-source

You can also clone the complete repository with Git:

git clone https://github.com/josantonius/wp-image-handler.git

Or install it manually:

Download WP_Image.php:

wget https://raw.githubusercontent.com/josantonius/wp-image-handler/master/src/class-wp-image.php

Available Methods

Available methods in this library:

- Save image and associate it with a specific post

WP_Image::save($url, $post_ID, $featured);
Atttribute Description Type Required Default
$url External url image. string Yes
$post_ID Post ID. int Yes
$featured Set image as featured. boolean No false

@return (string|false) → URI for an attachment file or false on failure.

- Upload image to WordPress upload directory

WP_Image::upload($url, $filename);
Atttribute Description Type Required
$url External url image. string Yes
$filename Filename. string Yes

@return (string|false) → Path to upload image or false on failure.

- Deletes an attachment and all of its derivatives

WP_Image::delete_all_attachment($post_ID, $force);
Atttribute Description Type Required
$post_ID Post ID. int Yes
$force Force deletion. boolean Yes

@return (int|false) → Atachments deleted.

Quick Start

To use this library with Composer:

require __DIR__ . '/vendor/autoload.php';

use Josantonius\WP_Image;

Or If you installed it manually, use it:

require_once __DIR__ . '/class-wp-image.php';

use Josantonius\WP_Image\WP_Image;

Usage

Example of use for this library:

- Upload image

WP_Image::upload('https://site.com/image.png', 'image.png');

- Save image

WP_Image::upload('https://site.com/image.png', '18');

- Save featured image

WP_Image::upload('https://site.com/image.png', '18', true);

- Delete attachments

WP_Image::delete_all_attachment(18);

- Force delete attachments

WP_Image::delete_all_attachment('18', true);

Tests

To run tests you just need composer and to execute the following:

git clone https://github.com/josantonius/wp-image-handler.git

cd WP_Image

bash bin/install-wp-tests.sh wordpress_test root '' localhost latest

composer install

Run unit tests with PHPUnit:

composer phpunit

Run WordPress code standard tests with PHPCS:

composer phpcs

Run PHP Mess Detector tests to detect inconsistencies in code style:

composer phpmd

Run all previous tests:

composer tests

Sponsor

If this project helps you to reduce your development time, you can sponsor me to support my open source work 😊

License

This repository is licensed under the MIT License.

Copyright © 2017-2022, Josantonius