gbv / image-attribution
Get information for image attribution from Wikimedia Commons
Requires
- php: >=5.6
Requires (Dev)
- phpunit/phpunit: ^5.5
This package is auto-updated.
Last update: 2024-12-11 17:44:08 UTC
README
This PHP library provides a method to retrieve information required for proper attribution of images from Wikimedia Commons.
Motivation
Wikimedia Commons contains images and other freely usable media files. Some files can be used without any conditions (public domain), others are licensed under an open content license. Depending on the particular license one has to give proper credit to the original author and/or name the specific license. Wikimedia Commons includes guidelines how to give proper credit but there is no easy way to look up attribution requirements for a given image in machine-readable format.
There is a method to retrieve some license information via Wikimedia Commons API, but the API is difficult to find and query, its return format is too verbose, and the response is not usable without further processing. For instance licenses are spelled in several different ways ("CC-BY-SA-3.0", "CC BY-SA 3.0"...) and field values may contain HTML tags.
Requirements
Requires PHP 5.6 or above and allow_url_fopen
enabled.
Installation
Use composer:
$ composer require gbv/image-attribution
or just copy files src/image-attribution.php
and src/identify-open-content-license.php
by hand.
Usage
Use autoload:
require 'vendor/autoload.php';
or include the library file the old way:
require_once 'src/image-attribution.php';
Then make use of the function commons_image_attribution
:
$attribution = commons_image_attribution("Loewe_frontal.JPG");
The image can be passed as file name, full image URL or URL of the image page. The value null
will return a random image. If the image is found with a license, an array is returned with the following fields:
Examples
Directory example
includes a web service (index.php
) to query image attribution information as JSON. The service is deployed at https://image-attribution.herokuapp.com/ but may be slow or down from time to time. Please install at your own server if you need to use it frequently! To give an example:
Directory bin
contains a command line script to get image attribution:
./bin/image-attribution Wikimedia-logo.svg