/McPlayer

McPlayer is a full-width HTML5/CSS/PHP/JS/AJAX Streming Audio Player with Playlist, Plugin for WordPress.

Primary LanguagePHPGNU General Public License v2.0GPL-2.0

McPlayer

McPlayer is a full-width HTML5/CSS/PHP/JS/AJAX audio Player with Playlist, Plugin for WordPress.

MCPlayer

Description

With McPlayer you can get your music from all around the world, from public Wi-Fi or your cellular network.
Create your artist, add a banner picture, upload the album cover and add all the songs from it.
Navigate through all the artists, albums and songs, add the song you want to the playlist and press play.
Working with android, it a nice way to do long drive with your custom playlist.
Without any ads.

In the admin panel, there a sub-page to let's do bulk add albums from music.youtube.com. Just copy and paste the playlist link and click the button and the album will download and convert to audio, and will add to the libray automatically. This make this plugin a must-have to have your private music library, without any artist you don't want, and only got what you like.
Without any limitation.

Build-with

McPlayer is build with the folloing JS

Unobtrusive page transitions with jQuery.
https://github.com/miguel-perez/smoothState.js/

HTML5 Audio & Video for jQuery
https://github.com/jplayer/jPlayer/

Web audio-player with playlist and minimalistic view as option.
https://github.com/dymio/player-56s/

Simplicity Save for Later will add a button to your posts/pages/custom post types so users can save that content so they can access it later.
https://WordPress.org/plugins/rs-save-for-later/

Interactions and Widgets for the web. jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of jQuery.
https://github.com/jquery/jquery-ui/

Depend on this theme and plugins

MCPlayer child theme based on Chichi
https://github.com/Jerl92/McPlayer-Child-Theme/

The Categories Images Plugin allow you to add image with category
https://WordPress.org/plugins/categories-images/

This plugin is needed if you want the scroll bar to be sticky
https://wordpress.org/plugins/mystickysidebar/

This plugin is needed to avoid jQuery error
https://fr-ca.wordpress.org/plugins/jquery-updater/

Installation

This plugin have been designed on:
- Ubuntu Server
- NGINX
- PHP 7.4

This section describes how to install the plugin and get it working.

  1. Upload chichi to the /wp-content/themes/ directory.
  2. Upload McPlayer-Child-Theme to the /wp-content/themes/ directory.
  3. Rename McPlayer-Child-Theme to chichi-child.
  4. Activate chichi-child in the theme admin menu.
  5. Uplaod categories-images to the /wp-content/plugins/ directory.
  6. Activate categories-images through the Plugins menu in WordPress.
  7. Upload McPlayer-master to the /wp-content/plugins/ directory.
  8. Rename McPlayer-master to McPlayer.
  9. Activate McPlayer through the Plugins menu in WordPress.
  10. Add artist in the admin music menu.
  11. Upload cover and set the artist and the year, of the cover
  12. Add new music, set title, set mp3 file, set track number, set artist, set album.
  13. Use the same album cover picture for all the tracks in the album.
  14. Add the player and playlist widget in the customization menu.
  15. Set shortcode in page.

Advandced installation

You can have youtube-dl installed on it, to download and add album playlist.
https://github.com/ytdl-org/youtube-dl/

You can have FFMPEG installed on it, to covert to MP3 file.
https://github.com/FFmpeg/FFmpeg/

Shortcode

To get info about how many you have in database
[get_database_info]

Show random song
[pre_order_products per_page="50" columns="5" order="'rand" orderby="rand"]

Show alphabet and artist
[artist_get_shortcode]

Show genres
[genre_get_shortcode]

Show all the years of all album
[year_get_shortcode]

Show the lasted added songs
[get_new_shortcode]

Show the most played songs
[get_count_music per_page="175" columns="5" order="DESC" orderby="meta_value_num"]

Show the lasted played songs
[get_already_played per_page="10" columns="5" order="ASC" orderby="post__in"]

Show suggested songs with the playlist songs genres
[genres_products per_page="50" columns="5" order="rand" orderby="rand"]

Screenshot

Changelog

2.0 - Add genre widget and shortcode to show suggested songs and fix various things.
1.8 - Add a earn count play, add playlist time length to title, various fix.
1.7 - Fix stuff in full album add to playlist and fix height of content to feel more like a webapp.
1.6 - Remove artist private page, remove other stuff.
1.5 - Add AJAX search and add load state on page refresh.
1.4 - In shortcode for previously played show all user previously played.
1.3 - Add albums in AJAX search.
1.2 - Add shortcode to show the lasted played songs.
1.0 - Add the paid-memberships-pro plugin to make free user have limited playing time, only 10% of a song.
0.9 - Add play count song and most played shortcode.
0.8 - Add in the bulk add album, Imagick cropImage, to remove border of image album.
0.7 - Init version of bulk add album admin page.
0.6 - Playlist can be save and load and shuffle and no-shuffle order work.
0.5 - Not loged user, can now browser and interact with playlist and player.
0.4 - Remove sticky sidebar, use overflow scroll.
0.3 - Add wake lock when the tab is active, Use FFMPEG for audio compresion.
0.2 - Sortable playlist.
0.1 - Init release.

Init version of this plugin, a lots of QA hours have been done with Chrome and Firefox, both work great.
Work realy good with any version of Android.