Net Factor

Music Store

Frequently Asked Questions



First, go to the settings page of music store and be sure the PayPal checkbox is checked, and has defined the seller's email. Second, in case of collections, be sure the collection has a price defined and songs associated. Third, in case of songs, be sure the song has a price defined and a audio file associated

If you want to sale a song as a single, it is required to check the "Sell as a single" checkbox in the song data form.

If you decide to protect the audio file, the audio file is played partially in demo to avoid its copy by users and Software unauthorized.

In protected mode the music store creates a new version of audio file to protect in the "ms-temp" directory. You must to assign permissions for writing in the "ms-temp" directory.

`The music store creates download files in the "ms-downloads" directory. You must to assign permissions for writing in the "ms-downloads" directory.

The Music Store uses different templates to display the collections or songs. To modify a specific template, go to the "ms-templates" directory located at "wp-content/plugins/music-store/ms-templates". This directory contains a list of files described below:

  • collection_single.tpl.html: Used if the collection is loaded as a single item on the webpage.
  • song_single.tpl.html: Used if the song is loaded as a single item on the webpage.
  • collection_multiple.tpl.html: Used if the collection is loaded in a context where multiple elements are loaded too. For example, the search webpage.
  • song_multiple.tpl.html: Used if the song is loaded in a context where multiple elements are loaded too. For example, the search webpage.
  • collection.tpl.html: Used when the collection is loaded in the music store webpage.
  • song.tpl.html: Used when the song is loaded in the music store webpage.
  • ms-donwload-page-template.php: Used for the song/collection download page

Through the edition of any of the above files you can modify the music store design.

Go to the plugins section in WordPress, deactivate the free version of Music Store, and delete it ( Don't worry, this process don't modify the songs created with the free version of plugin), and finally install and activate the premium version of plugin.

I'm sorry, but the current version of plugin allows PayPal only

The restriction is imposed by PayPal. Please, check that your PayPal account allow to charge directly from the credit cards of customers.

To use your own numbers design, you must create a new directory with the name of new style in "/wp-content/plugins/music-store/ms-core/images/counter", and upload to the new folder, an image in gif format, for each digit from 0 to 9.

The design of each section of Music Store, is determined from templates located in "/wp-content/plugins/music-store/ms-templates".

The "ms-templates" directory contains multiple files, some of them for songs, and others for collections.

The template files:

  • song.tpl.html and collection.tpl.html are used in the Music Store's page.
  • song_single.tpl.html and collection_single.tpl.html are used in particular pages of songs and collections.
  • song_multiple.tpl.html and collection_multipl.tpl.html are used in pages of multiple entries like: archives and search result page.

Furthermore, the plugin includes predefined designs that can be selected through the option: "Store Layout" in the store's settings. But if the predefined layouts are not sufficient to your project, it is possible create a new one. Duplicates an existent layout, and edits its style.css file

It is possible promote a product or products list, from the website's sidebars, or directly from the content of pages or posts.

To promote the products on sidebars, go to the widgets section, and inserts the corresponding widget on sidebar.

To promote the products from the content of pages and posts, go to the page and press the corresponding icon over the contents editor.

The security in the access to songs files is determined in different ways.

  • The song files can't be accessed directly. The purchased files are stored in a special directory called ms-downloads, the ms-downloads directory includes a .htaccess file that forbid the access from browser. The file can be accessed only through a server side script that validates the purchase.
  • The Music Store determines the validity of download links based in two options, available in the settings page of plugin.

    It is possible define a time period, in days, where a download link is considered valid. If a user tries to download a purchased product, the Music Store checks the date of purchasing.

    The Music Store may be configured to request the email address used in the purchasing to check the validity of download link.

The feature is available in the latest update of plugin

You only should go to the settings page of plugin, and enter the number of allowed downloads in the attribute: "Number of downloads allowed by purchase"

There are two ways to insert the shopping cart icon in all pages of website:

  1. Inserting the widget of shopping cart on sidebars.
  2. Insert the shortcode of the shopping cart in the website's pages, or directly in a template file of the theme used by all pages of website: [music_store_shopping_cart]
  3. Tip: To prevent the shopping cart be displayed by duplicated in the pages of the store and products, go to the store's settings, and tick the option: "Hide the shopping cart icon from the store and products pages?"

Please, verify that the theme used in your website, calls the function: wp_footer(); in the template file "footer.php" or the template file "index.php"

Be sure there is not an uncaught javascript error in your page, that stops the rest of the code on page.

Yes, from the "Music Store pro" v5.0.16 it is possible to define exclusive prices. The songs that are purchased in exclusive, are removed from the store's page, and are moved in the administration section to a new list of products, the list of products that were sold in exclusive.

Tip: If was defined a discount for a song, it is not applied to the exclusive sales.

If a song is distributed for free, the music store redirects to the user directly to the audio file, and the browser will play the audio file, or download it, depending of headers sent by the server, and if the audio file is supported by the browser or not. Sometimes the browser plays the audio file, instead of download it.

If you want forcing the file download, you should modify the headers sent by the server. To force it, creates a .htaccess file, in the "/wp-content/uploads" directory, with the following content:

<FilesMatch "\.(?i:mp3|ogv|oga|ogg|wav)$>
AddType application/octet-stream mp3 ogv oga ogg wav
Header set Content-Disposition attachment

The Music Store uploads the audio files to the subdirectories of the "/wp-content/uploads" directory. To protect the audio files in the "uploads" directory, should be uploaded a .htaccess file to the "/wp-content/uploads" directory, whose content would be:

<FilesMatch "\.(mp3|wav|oga|ogg)$">
Deny from All

To hide the popularity from the store's page, follows the steps below:

  1. Open the "/wp-content/plugins/music-store/ms-styles/ms-public.css" file, with the text editor your choice.
  2. Paste the following style's definition at the end of file's content:
    .song-popularity,.collection-popularity{display:none !important;}
  3. Finally, clear the browser's cache after edit the online file.

The files for demo can be generated dynamically by the plugin (in the pro version of the plugin), to prevent the access for free to the original files.

It is possible to define the percentage of the audio file to be used on demos, from the settings page of the store. The plugin will create a copy of the audio file, a truncated version of the original file, to use as demo.

To protect the resources of web server, the music store does not generates the audio files for demo every time a song is played, the music store uses the files created previously, stored in the "ms-temp" directory. So, after modify the percentage of audio file for demo, you should delete the files located into the "/wp-content/plugins/music-store/ms-temp" directory.

Note: If you are using the Pro version of the plugin, greater than or equal to 5.0.2, it is not required delete the files in the "ms-temp" directory, the files are deleted dynamically by the plugin, when the percentage of the audio file for demo is modified.

The tracks are associated to the collections through the "Songs of collections" list. Each time a song is selected, the plugin generates a button over the songs list. The order followed in the songs selection, would be the same order in the tracks list on the public webpage.

For selling collections only, and not individual songs, you only should untick the checkbox: "Sell as a single", from each song.

If you want selling only collections, the "filtering by type" option won't be needed in the store's page. To hide this filtering option, go to the store's settings, and untick the checkbox: "Allow to filter by type"

The Music Store allows only one audio file per song. If you want selling different versions of a same song, for example: full song, ring tone, etc. each of them with their own price, should be used collections.

First, creates all songs by separated, with its corresponding audio files, and prices.

Second, for each title, creates a collection, and selects all related songs, created in the first point, and assigns a price to the collection.

Third, uses the attribute: load="collections", in the store's shortcode.

Fourth, and finally, the "filtering by type" won't be needed in the store's page, go to the store's settings and untick the option "Allow to filter by type"

The store is inserted in a page through the shortcode [music_store].

The [music_store] shortcode accepts a list of attributes to configure a specific store.

load: With the "load" attribute can be selected the elements to be loaded by default in the store ("singles", for loading only songs, and "collections" to load only the songs collections). If you want sell in the store singles and collections, you don't need to include the "load" attribute.

[music_store load="collections"]
[music_store load="singles"]

columns: Enter the number of columns to display the products in the store with a grid format. By default the value of "columns" attribute is 1.

[music_store columns="3"]

genre: To display in the store only the songs and collections that belong to a specific genre, should be defined the "genre" attribute with the genre's slug, or the genre's ID.

[music_store genre="pop"]
[music_store genre="2"]

Note: To determine the genre's ID, go to the menu option "Music Store > Set Genres", press the "edit" link of genre, and pay attention to the URL in the browser, the genre ID is passed as the parameter "tag_ID"

artist: To display only the products of a specific artist, defines the "artist" attribute with the artist's slug, or the artist's ID.

[music_store artist="artist-name"]
[music_store artist="3"]

Note: To determine the artist's ID, go to the menu option "Music Store > Set Artists", press the "edit" link of artist, and pay attention to the URL in the browser, the artist's ID is passed as the parameter "tag_ID"

album: To display only the products in a specific album, defines the "album" attribute with the album's slug, or the album's ID.

[music_store album="let-it-be"]
[music_store album="12"]

Note: To determine the album's ID, go to the menu option "Music Store > Set Albums", press the "edit" link of album, and pay attention to the URL in the browser, the album's ID is passed as the parameter "tag_ID"

You can use to a combination of parameters in the same shortcode:

[music_store columns="3" load="collections"]

From the shortcode it is possible to hide the elements in the header section of the music store's page: the filtering options, or the "order by":

filter_by_type: The values allowed are 1 or 0, and shows or hide the filtering by product's type.

[music_store columns="3" filter_by_type="1"]

filter_by_genre: The values allowed are 1 or 0, and shows or hide the filtering by genre.

[music_store columns="3" filter_by_genre="1"]

filter_by_album: The values allowed are 1 or 0, and shows or hide the filtering by album.

[music_store columns="3" filter_by_album="1"]

filter_by_artist: The values allowed are 1 or 0, and shows or hide the filtering by artist.

[music_store columns="3" filter_by_artist="1"]

show_order_by: The values allowed are 1 or 0, and shows or hide the "Order by" options.

[music_store columns="3" show_order_by="1"]

order_by: The values allowed are: plays, price, post_title, post_date. Allows ordering the products in the store's page by the criteria defined in the attribute.

[music_store columns="3" order_by="post_title"]

The shortcode to insert a product has the structure: [music_store_product id="10"]. The "id" attribute represents the product's id. The products' ids are displayed as the first column in the songs or collection lists.

The product's shortcode accepts another attribute, to decide the layout to use: the "single" layout, with all the product's attributes, or the "store" layout, with the attributes used in the store's page.

[music_store_product id="10" layout="single"]
[music_store_product id="10" layout="store"]

The limit in the files sizes to be upload to the server is not imposed by the plugin. The Music Store delegates the upload process to the Media Library of WordPress. The limits are imposed by directives in the PHP.ini file, directly by your hosting provider.

If you need additional information about the PHP directives involved in this process, visit the following link:

The zipped files are created in memory, so, the PHP script in your web server, should manage the amount of memory sufficient to create the zipped file with all purchased audio files. To take an idea about the amount of memory required, uses as reference the peak in the sum of size of audio files in the bigger purchase, before enabling the zip option.

In this case you only should go to the sales reports of the store, through the menu option: "Music Store/Sales Report", and select the time interval where the purchase was made. In the product list will be displayed all sales on the interval selected. Finally, you should press the "Reset Time and Downloads" button corresponding to the customer's purchase.

Now, your user can download the product by a new time interval.

Go to the sales reports, and enter the customer's email in the input box named "buyer", select a time interval, and finally press the "Search" button.

If you are not sure about the customer email, you can use a partial email address ( is not necessary to know the exact email address). About the time interval, if you are not sure about the dates of purchase, select as the "From" attribute, a far enough date.

The content of the download page is generated at runtime. By default the page's content is in blank, and the download links are added at the end of page when it is visited by the users. This page, can be edited like any other page in WordPress. You simply should open the page for editing, and modify its content.

I suggest to enter as the last information, a text to indicate that the links below are the download links to the purchased files.

Please, be sure the IPN (Instant Payment Notification) is enabled in your PayPal account. If the IPN is not enabled in your PayPal account, the website is not notified about the payments, and the download link is not generated, and the notification email with the download link is not sent to the customers.

PayPal will ask you for the URL of the IPN in the activation process, use the URL to your website's homepage, because the "Music Store" will send to PayPal the correct URL.

If the IPN is enabled in your PayPal account, and the purchases have been registered in the sales report, but your customers are not receiving the emails with the download links, there are two possible reasons:

  1. The email should be sent through SMTP. In this case you should install in your WordPress one of the available plugins for SMTP integration, in the WordPress directory.
  2. The web server allows send emails directly. In this case, enter an email address belonging to the website's domain through the attribute: "Notification from email" attribute, on the store's settings. In other case the email can be classified as spam by the customers inboxes.

This option is related directly with the PayPal settings, and not with the Music Store.

Please, follows the instructions below:

Note: The description applies for the new interface of PayPal.

From the homepage of your PayPal account, press the "Seller preferences" option. In the seller's profile there is an option titled "Website preferences", with the text "Bring customers back to my website after they pay with PayPal.", please, press the "change" link associated with this option, and set the auto return to "ON". PayPal requires you enter the URL to the return page, use in this case the URL to your website's homepage, because the Music Store sends the correct URL in the sale process.

PayPal notifies the payments to the website asynchronously, so can occur that the user returns to the download page, before the payment notification, so, the sale has not been registered yet. In this case the download page displays a timer, and checks again the validity of purchase.

By default the Music Store generates the page called "Download Page", with its content in blank. The content of the "Download Page" is generated dynamically with the download links to purchased products, but sometimes, the websites' administrators delete these pages because they think that are not important. If it is the case you only should restore the download page, from the trash list, to the list of published pages. If you have emptied the trash list, you only should create a new page with the slug: ms-download-page

By default the Music Store generates the page called "Shopping Cart", with its content in blank. The content of the "Shopping Cart" page is generated dynamically, and displays a table with the products selected, a button to continue shopping, a button to complete the payment, and the input box for entering the coupon code. The websites' administrators sometimes decide delete this page. If it is the case, you only should restore the shopping cart page, from the trash list, to the list of published pages. If you have emptied the trash list, you only should create a new page with the slug: ms-shopping-cart

For selling tangible products, like CDs, DVDs, etc. are required some additional modules: the module to calculate the shipping cost, a tracking system, and a register of the products existence. With the Music Store, none of these modules are included, because are not needed for selling digital files, these are the reason why is recommended to use the music store only for selling digital files.

The pro version of the Music Store includes a new section (the importer section) that allows create multiple products at the same time. The better results are obtained if the audio files have defined the ID3 tags with the correct information.

To proceed importing multiple songs, follow the steps below:

  1. Go to the menu option: "Music Store/Songs Importer"
  2. Press the "Upload/Select files" button to display the "Media Library". From the media library it is possible select the files existent in the library, or activate the "Upload Files" tab, and upload new files to the library.
  3. Enter a base price that will be applied to all imported songs.
  4. Check any of the attributes: artist, albums names, genres, or year, if you want extract the artist name, the album name, the genre, or the year, from the ID3 tags of the MP3 files, and assign these data to the imported products.
  5. Finally, press the "Import" button.

The importer will create a new product for each audio file, with the information included in the ID3 tags.

Please, visit the following link to the PayPal documentation:

Configuring the IPN on PayPal Sandbox

Yes, that's possible. The artists, genres and albums are taxonomies associated to the songs, and for searching by the songs' taxonomies, go to the settings page of the store, and tick the checkbox: "Allow searching by taxonomies", and that's all.

Installation Instructions:

  1. If you already have installed the free version or an old version of the pro version then delete it before installing the new pro version.
  2. Install the pro version via the Plugins area >> Add New >> Upload

Note: The above is a safe process, the plugin's data and settings won't be lost during the process and will appear again after installed the pro version.

Alternative Installation Method:

  1. Overwrite (or copy if not previously installed) the plugin files into the WP plugins folder through a FTP connection. This is also a safe process, the plugin's data and settings won't be lost during the process.

Upgrade Instructions:

The upgrade instructions are exactly the same instructions mentioned above but be sure to make a backup copy of your current files if you have made custom modifications to the files or translations since the files will be overwritten.

After upgrading the plugin remember to clear your browser cache.

The free version must be deleted before installing the pro version.

If you are upgrading the pro version to a new version you should also remove the previously installed version.

This is a safe step, the plugin's data and settings won't be lost during the process.

Another alternative is to overwrite the plugin files through a FTP connection. This is also a safe step.