Skip to content

NicolasGraph/oui_spotify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

oui_spotify

Introduction

oui_spotify is a oui_player v2+ extension to easily embed Spotify provided videos in Textpattern powered websites.

The above platform serves cookies with its player, according to the EU legislation, you should warn your users about these cookies before they are added. This can be done by using oui_cookie.

Plugin requirements

oui_spotify’s minimum requirements:

Plugin management

Installation

From the admin interface

  1. Download the compiled plugin file or the source to compile a customized file.
  2. Paste the content of the compiled plugin file under the “Admin > Plugins”:?event=plugin tab and click the Upload button.
  3. Confirm the plugin install by clicking the Install button on the plugin preview page.
  4. Enable the plugin and click the Options link (or visit the Preferences tab) to set the provider preferences.

Via Composer (not available yet)

After installing Composer

  1. Target your project directory:
    $ cd /path/to/your/textpattern/installation/dir
  2. If it’s not already done, lock your version of Txp:
    $ composer require textpattern/lock:4.6.2, where 4.6.2 is the Txp version in use.
  3. Install oui_spotify:
    $ composer require nicolasgraph/oui_spotify

Update

From the admin interface

  1. Follow the installation instruction above.

Via Composer (not available yet)

$ composer update nicolasgraph/oui_spotify

Uninstall

From the admin interface

  1. Check the box on the left of the plugin row under the “Admin > Plugins”:?event=plugin.
  2. open the select list at the bottom of the plugins table and choose Delete.
  3. confirm the plugin deletion.

Via Composer (not available yet)

$ composer remove nicolasgraph/oui_spotify

Tags and parameters

oui_spotify vs oui_player

While the <txp:oui_player /> tag is able to embed any video from any extension-related provider, the <txp:oui_spotify /> tag is a shortcut to embed Spotify videos only. It is strictly equivalent to <txp:oui_player provider="spotify" />.

Check the oui_player documentation for more informations.

Recognised values for the play attribute

  • ID;
  • http(s)://open.spotify.com/type/ID;
  • http(s)://play.spotify.com/type/ID.

…where type can be album, track, artist or playlist.
When using the oui_player tag (vs oui_spotify), the right provider needs to be set if the play value or its field related one is an ID. It is optional, but can fasten the rendering, if the value is an URL.

Player customization

Preferences vs attributes

While some player customization elements, related to the media to play, should be used through attributes, these used as global settings should preferrably be set through the plugin preferences to avoid a massive use of tag attributes.

Of course, it is still possible to override a preference value via an attribute when needed.

Size
width

Integer; initially set to 300.
The width of the player in pixels.

height

Integer; initially set to 380 (80 is the usual compact player height value).
The height of the player in pixels.

ratio

Integer:integer; initially not set.
The ratio used to calculate the missing value for the width or the height.

responsive

true or false; initially set to false.
Adapts the final player size from the provided width and/or height and/or ratio values to fit the container width.
Wraps the player and adds some styles.

Parameters (a→z)

There is no player parameter available for this provider.

oui_if_spotify vs oui_if_player

While the <txp:oui_if_player>…</txp:oui_if_player> tag is able to check an URL against any URL from any extension-related provider, the <txp:oui_if_spotify>…</txp:oui_if_spotify> tag is a shortcut to check an URL against Spotify related URL schemes only. It is strictly equivalent to <txp:oui_if_player provider="spotify">…</txp:oui_if_player>.

Check the oui_player documentation for more informations.

Examples

Embed a player using the preference values

<txp:oui_player />

oui_player preference related field value: https://open.spotify.com/album/4RuzGKLG99XctuBMBkFFOC.

Embed a player by defining its provider and a media ID through attributes

<txp:oui_player provider="spotify" play="album/4RuzGKLG99XctuBMBkFFOC" />

…or:

<txp:oui_spotify play="album/4RuzGKLG99XctuBMBkFFOC" />

Conditionally embed a player using attributes

<txp:oui_if_player provider="spotify" play="https://open.spotify.com/track/4vtgqkR7eeosgF0h4QD4kQ">
    <txp:oui_player />
</txp:oui_if_player>

…or:

<txp:oui_if_spotify play="https://open.spotify.com/track/4vtgqkR7eeosgF0h4QD4kQ">
    <txp:oui_spotify />
</txp:oui_if_spotify>

Credits

Author

Nicolas Morand
Thank you to the Textpattern community and the core team.

License

This plugin is distributed under GPL v2.0.

oui_spotify version 1.0.0, Copyright © 2018 Nicolas Morand
This Textpattern plugin comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it under certain conditions.

Changelog

  • oui_spotify v1.0.0 (2018-08-22)