Hello there,
To apply the custom CSS, you need to get the column class name / ID from HTML code and add the CSS in theme customizer as shown in reply #169701. However, if you want us to write the CSS, give us the exact column name and the table page URL.
Thanks
sir, it is giving an error. please i ma sending my PHP file please add the code
`<?php
namespace WPDM\Package;
use WPDM\__\__;
use WPDM\__\Crypt;
use WPDM\__\Session;
class FileList
{
    /**
     * @var null Package
     */
    private $package = null;
    function __construct($package = null)
    {
}
    private function fileEntrySimple()
    {
}
    /**
     * @usage Callback function for [file_list] tag
     * @param $package
     * @param bool|false $play_only
     * @return string
     */
    public static function table($ID, $play_only = false)
    {
$current_user = wp_get_current_user();
$package = WPDM()->package->init($ID);
$fileinfo = maybe_unserialize(get_post_meta($ID, ‘__wpdm_fileinfo’, true));
if (function_exists(‘wpdmpp_effective_price’) && wpdmpp_effective_price($ID) > 0) return self::premium($ID, $play_only);
        $files = maybe_unserialize($package->files);
        $permalink = get_permalink($ID);
        $sap = strpos($permalink, ‘?’) ? ‘&’ : ‘?’;
        $fhtml = ”;
        $idvdl = $package->isSingleFileDownloadAllowed();
        $pd = $package->avail_date ? strtotime($package->avail_date) : 0;
        $xd = $package->expire_date ? strtotime($package->expire_date) : 0;
$nodl = $play_only ? ‘style=”display: none”‘ : “”;
        $permalink = get_permalink($ID);
        $sap = strpos($permalink, ‘?’) ? ‘&’ : ‘?’;
        $download_url = $permalink . $sap . “wpdmdl={$ID}”;
$cur = is_user_logged_in() ? $current_user->roles : array(‘guest’);
if (($xd > 0 && $xd < time()) || ($pd > 0 && $pd > time())) $idvdl = 0;
$button_label = apply_filters(“single_file_download_link_label”, __(“Download”, “download-manager”), $package);
if (count($files) > 0) {
$pwdlock = (int)get_post_meta($ID, ‘__wpdm_password_lock’, true);
            //Check if any other lock option applied for this package
            $olock = 0;
            $noaccess = 0;
            $swl = 0;
            if ($package->quota <= 0) $package->quota = 9999999999999;
            if (is_user_logged_in()) $cur[] = ‘guest’;
            if (!$package->userCanDownload()) {
                $noaccess = 1;
            }
            if ($package->isLocked()) {
                $olock = 1;
            }
$pwdcol = $dlcol = ”;
if ($noaccess === 0) {
                if ($pwdlock && $idvdl) $pwdcol = “<th>” . __(“Password”, “download-manager”) . “</th>”;
                if ($idvdl && ($pwdlock || !$olock)) {
                    $dlcol = “<th>” . __(“Action”, “download-manager”) . “</th>”;
                    $swl = 1;
                }
            }
$allfiles = $files;
            $cattr = $data = “”;
            if (count($allfiles) > 5)
                $data = ‘<input placeholder=”‘ . __(“Search File…”, “download-manager”) . ‘” style=”margin:10px 0;border-radius: 0″ type=”search” class=”form-control bg-white wpdm-pack-search-file” data-filelist=”#wpdm-filelist-area-‘ . $ID . ‘” />’;
            $fhtml = “<div {$cattr} data-packageid='{$ID}’ id=’wpdm-filelist-area-{$ID}’ class=’wpdm-filelist-area wpdm-filelist-area-{$ID}’ style=’position:relative’>{$data}<table id=’wpdm-filelist-{$ID}’ class=’wpdm-filelist table table-hover’><thead><tr><th>” . __(“File”, “download-manager”) . “</th>{$pwdcol}{$dlcol}</tr></thead><tbody>”;
            if (is_array($allfiles)) {
                $pc = 0;
                foreach ($allfiles as $fileID ► $sfile) {
                    $individual_file_actions = $individual_file_actions_locked = ”;
                    $individual_file_actions = apply_filters(“individual_file_action”, $individual_file_actions, $ID, $sfile, $fileID);
                    $individual_file_actions_locked = apply_filters(“individual_file_action_locked”, $individual_file_actions_locked, $ID, $sfile, $fileID);
                    $ind = $fileID; //\WPDM_Crypt::Encrypt($sfile);
                    $pc++;
//if (!isset($fileinfo[$fileID]) || !@is_array($fileinfo[$fileID])) $fileinfo[$fileID] = array();
                    $filePass = wpdm_valueof($fileinfo, “{$fileID}/password”);
                    $fileTitle = wpdm_valueof($fileinfo, “{$fileID}/title”);
                    $fileTitle = $fileTitle ?: preg_replace(“/([0-9]+)_/”, “”, wpdm_basename($sfile));
                    $fileTitle = wpdm_escs($fileTitle);
                    $fileVersion = wpdm_valueof($fileinfo, “{$fileID}/version”);
                    $fileVersion = $fileVersion ? ” — {$fileVersion}” : ”;
                    $lastUpdate = wpdm_valueof($fileinfo, “{$fileID}/update_date”);
                    $lastUpdate = $lastUpdate ? ” — Updated on {$lastUpdate}” : ”;
                    if ($swl) {
                        $mp3 = explode(“.”, $sfile);
                        $mp3 = end($mp3);
                        $mp3 = strtolower($mp3);
                        $play = in_array($mp3, array(‘mp3’)) ? “<i style=’margin-top:0px’ class=’fa fa-play’></i>” : “”;
if ($filePass == ” && $pwdlock) $filePass = $package->isPasswordProtected();
                        $fhtml .= “<tr><td>{$fileTitle}{$fileVersion}{$lastUpdate}</td>”;
                        $passField = ”;
                        if ($pwdlock && !$noaccess)
                            $passField = “<input style=’width:150px’  onkeypress=’jQuery(this).removeClass(\”input-error\”);’ size=10 type=’password’ value=” id=’pass_{$ID}_{$ind}’ placeholder='” . __(“Password”, “download-manager”) . “‘ name=’pass’ class=’form-control input-sm inddlps d-inline-block’ />”;
                        //$fhtml .= “<td width=’120′ class=’text-right’><input  onkeypress=’jQuery(this).removeClass(\”input-error\”);’ size=10 type=’password’ value=” id=’pass_{$ID}_{$ind}’ placeholder='”.__( “Password” , “download-manager” ).”‘ name=’pass’ class=’form-control input-sm inddlps’ /></td>”;
                        if ($filePass != ” && $pwdlock && !$noaccess)
                            $fhtml .= “<td style=’white-space: nowrap;text-align: right’>{$passField}<button class=’inddl btn btn-primary btn-sm’ data-pid='{$ID}’ data-file='{$fileID}’ rel='” . $permalink . $sap . “wpdmdl={$ID}” . “&ind=” . $ind . “‘ data-pass=’#pass_{$ID}_{$ind}’><i class=’fa fa-download’></i> ” . $button_label . “</button> {$individual_file_actions}</td></tr>”;
                        else {
                            $ind_download_link = “getDownloadURL($ID, array(‘ind’ ► $ind, ‘filename’ ► wp_basename($sfile))) . “‘>” . $button_label . ““;
                            $ind_download_link = apply_filters(“wpdm_single_file_download_link”, $ind_download_link, $fileID, (array)$package);
                            $fhtml .= “<td style=’white-space: nowrap;’  class=’text-right’>{$ind_download_link}{$play} {$individual_file_actions}</td></tr>”;
                        }
                    } else {
                        $fhtml .= “<tr><td>{$fileTitle}</td><td style=’white-space: nowrap;’  class=’text-right’>{$individual_file_actions_locked}</td></tr>”;
                    }
                }
}
            $fhtml .= “</tbody></table></div>”;
            $siteurl = home_url(‘/’);
}
return $fhtml;
}
    /**
     * @usage Callback function for [file_list_extended] tag
     * @param $package
     * @return string
     * @usage Generate file list with preview
     */
    public static function extended($ID, $w = 88, $h = 88, $cols = 3)
    {
$current_user = wp_get_current_user();
$package = WPDM()->package->init($ID);
$fileinfo = maybe_unserialize(get_post_meta($ID, ‘__wpdm_fileinfo’, true));
if (function_exists(‘wpdmpp_effective_price’) && wpdmpp_effective_price($ID) > 0) return self::premium($ID);
        $files = maybe_unserialize($package->files);
        $permalink = get_permalink($ID);
        $sap = strpos($permalink, ‘?’) ? ‘&’ : ‘?’;
        $fhtml = ”;
        $idvdl = WPDM()->package->isSingleFileDownloadAllowed($ID);  //isset($package[‘individual_file_download’]) ? $package[‘individual_file_download’] : 0;
        $pd = $package->avail_date ? strtotime($package->avail_date) : 0;
        $xd = $package->expire_date ? strtotime($package->expire_date) : 0;
$cur = is_user_logged_in() ? $current_user->roles : array(‘guest’);
        $permalink = get_permalink($ID);
        $sap = strpos($permalink, ‘?’) ? ‘&’ : ‘?’;
        $download_url = $permalink . $sap . “wpdmdl={$ID}”;
Session::set(‘wpdmfilelistcd_’ . $ID, 1);
if (($xd > 0 && $xd < time()) || ($pd > 0 && $pd > time())) $idvdl = 0;
$button_label = apply_filters(“single_file_download_link_label”, __(“Download”, “download-manager”), $package);
if (count($files) > 0) {
$pwdlock = (int)get_post_meta($ID, ‘__wpdm_password_lock’, true);
            //Check if any other lock option apllied for this package
            $olock = $package->isLocked();
            $swl = 0;
            $package->quota = $package->quota > 0 ?: 9999999999999;
            if (is_user_logged_in()) $cur[] = ‘guest’;
            //if (!isset($package[‘access’]) || count($package[‘access’]) == 0 || !wpdm_user_has_access($ID) || wpdm_is_download_limit_exceed($ID) || $package[‘quota’] <= $package[‘download_count’]) $olock = 1;
            if ($idvdl && ($pwdlock || !$olock)) {
                $swl = 1;
            }
$allfiles = $files;
            $fhtml = “<div id=’xfilelist’><div class=’row’>”;
            if (is_array($allfiles)) {
                $classes = array(‘1’ ► ‘col-md-12’, ‘2’ ► ‘col-md-6’, ‘3’ ► ‘col-md-4’, ‘4’ ► ‘col-md-3’, ‘6’ ► ‘col-md-2’);
                $class = isset($classes[$cols]) ? $classes[$cols] : ‘col-md-4′;
                foreach ($allfiles as $fileID ► $sfile) {
                    $fhtml .= “<div class='{$class} col-sm-6 col-xs-6′><div class=’panel panel-default card mb-4’>”;
                    $ind = $fileID; //\WPDM_Crypt::Encrypt($sfile);
                    $filePass = wpdm_valueof($fileinfo, “{$fileID}/password”);
                    $fileTitle = wpdm_valueof($fileinfo, “{$fileID}/title”);
                    $fileTitle = $fileTitle ?: preg_replace(“/([0-9]+)_/”, “”, wpdm_basename($sfile));
                    $fileTitle = wpdm_escs($fileTitle);
if ($filePass == ” && $pwdlock) $filePass = $package[‘password’];
$fhtml .= “<div class=’panel-heading card-header ttip’ title='{$fileTitle}’>{$fileTitle}</div>”;
                    $imgext = array(‘png’, ‘jpg’, ‘jpeg’, ‘gif’);
                    $ext = explode(“.”, $sfile);
                    $ext = end($ext);
                    $ext = strtolower($ext);
                    $filepath = file_exists($sfile) || __::is_url($sfile) ? $sfile : UPLOAD_DIR . $sfile;
                    $thumb = “”;
                    $thumb = WPDM()->package->getThumbnail($ID, $fileID, [$w, $h]);
                    $cssclass = in_array($ext, $imgext) ? ‘file-thumb wpdm-img-file’ : ‘file-thumb wpdm-file wpdm-file-‘ . $ext;
                    if ($thumb) {
                        //$file_thumb_attrs = apply_filters(“”, $file, $fileID, $thumb, $w, $h);
                        $fhtml .= “<div class=’panel-body card-body text-center’></div><div class=’panel-footer card-footer footer-info’>” . wpdm_file_size($sfile) . “</div><div class=’panel-footer card-footer text-center’>”;
                    } else
                        $fhtml .= “<div class=’panel-body card-body text-center’></div><div class=’panel-footer card-footer footer-info text-center’>” . wpdm_file_size($sfile) . “</div><div class=’panel-footer card-footer text-center’>”;
if ($swl) {
                        if ($filePass != ” && $pwdlock)
                            $fhtml .= “<div class=’input-group input-group-sm’><input  onkeypress=’jQuery(this).removeClass(\”input-error\”);’ size=10 type=’password’ value=” id=’pass_{$ID}_{$ind}’ placeholder=’Password’ name=’pass’ class=’form-control inddlps’ />”;
                        if ($filePass != ” && $pwdlock)
                            $fhtml .= “<span class=’input-group-btn input-group-append’><button class=’inddl btn btn-secondary btn-light btn-block’ data-pid='{$ID}’ data-file='{$fileID}’ data-pass=’#pass_{$ID}_{$ind}’><i class=’fas fa-arrow-alt-circle-down’></i></button></span></div>”; //rel='” . $download_url . “&ind=” . $ind . “‘
                        else {
                            $ind_download_link = “” . $button_label . ““;
                            $ind_download_link = apply_filters(“wpdm_single_file_download_link”, $ind_download_link, $fileID, (array)$package);
                            $individual_file_actions = ”;
                            $individual_file_actions = apply_filters(“individual_file_action”, $individual_file_actions, $ID, $sfile, $fileID);
                            $fhtml .= $ind_download_link . ” {$individual_file_actions}”;
                        }
                    }
                    $fhtml .= “</div></div></div>”;
                }
}
            $fhtml .= “</div></div>”;
            $siteurl = home_url(‘/’);
            //$fhtml .= “<script type=’text/javascript’ language=’JavaScript’> jQuery(‘.inddl’).click(function(){ var tis = this; jQuery.post(‘{$siteurl}’,{wpdmfileid:'{$ID}’,wpdmfile:jQuery(this).attr(‘file’),actioninddlpvr:1,filepass:jQuery(jQuery(this).attr(‘pass’)).val()},function(res){ res = res.split(‘|’); var ret = res[1]; if(ret==’error’) jQuery(jQuery(tis).attr(‘pass’)).addClass(‘input-error’); if(ret==’ok’) location.href=jQuery(tis).attr(‘rel’)+’&_wpdmkey=’+res[2];});}); </script> “;
}
return $fhtml;
}
    /**
     * @usage Callback function for [file_list] tag
     * @param $package
     * @param bool|false $play_only
     * @return string
     */
    public static function premium($ID, $play_only = false)
    {
if (!function_exists(‘wpdmpp_effective_price’)) return self::table($ID, $play_only);
$current_user = wp_get_current_user();
        $package = WPDM()->package->init($ID);
        $files = $package->files;
$fileinfo = maybe_unserialize(get_post_meta($ID, ‘__wpdm_fileinfo’, true));
$fhtml = ‘<div class=”list-group premium-files premium-files-‘ . $ID . ‘” id=”premium-files-‘ . $ID . ‘”>’;
        $currency = wpdmpp_currency_sign();
        if (count($files) > 0) {
            $post_id = $ID;
            $license_req = get_post_meta($post_id, “__wpdm_enable_license”, true);
            $license_pack = get_post_meta($post_id, “__wpdm_license_pack”, true);
            //wpdmprecho($license_pack);
            $fileinfo = get_post_meta($post_id, ‘__wpdm_fileinfo’, true);
            $allfiles = $files;
            if (is_array($allfiles)) {
                $pc = 0;
                foreach ($allfiles as $fileID ► $sfile) {
                    $individual_file_actions = ”;
                    $individual_file_actions = apply_filters(“individual_file_action”, $individual_file_actions, $ID, $sfile, $fileID);
                    $file_price = isset($fileinfo[$fileID][‘price’]) ? number_format((double)$fileinfo[$fileID][‘price’], 2) : 0;
                    $ind = $fileID; //\WPDM_Crypt::Encrypt($sfile);
                    $pc++;
                    $fileTitle = wpdm_valueof($fileinfo, “{$fileID}/title”);
                    $fileTitle = $fileTitle ?: preg_replace(“/([0-9]+)_/”, “”, wpdm_basename($sfile));
                    $fileTitle = wpdm_escs($fileTitle);
$data = $data_prices = “”;
$pre_licenses = wpdmpp_get_licenses();
                    $active_lics = array();
                    $zl = 0;
                    $file_availabiliy_lic = [];
                    if ($license_req == 1 && is_array($fileinfo)) {
                        foreach ($pre_licenses as $licid ► $lic) {
                            $lic[‘price’] = !isset($fileinfo[$fileID][‘license_price’]) || !isset($fileinfo[$fileID][‘license_price’][$licid]) || $fileinfo[$fileID][‘license_price’][$licid] == ” ? (isset($fileinfo[$fileID][‘price’]) && $zl == 0 ? $fileinfo[$fileID][‘price’] : 0) : $fileinfo[$fileID][‘license_price’][$licid];
                            $prc = number_format((double)$lic[‘price’], 2);
                            if ($zl == 0)
                                $file_price = $prc;
                            $active_lics[$licid] = $lic;
                            if ($lic[‘price’] > 0) {
                                $data .= ” data-{$licid}='{$currency}{$prc}’ “;
                                $data_prices .= ” data-{$licid}='{$prc}’ “;
                            }
                            if (isset($license_pack[$licid])) {
                                if (in_array($fileID, $license_pack[$licid]))
                                    $file_availabiliy_lic[] = “file_avail-{$licid}”;
                            } else
                                $file_availabiliy_lic[] = “file_avail-{$licid}”;
                            $zl++;
                        }
                        //if(count($active_lics) <= 1)
                        //    $data = $data_prices = “”;
                    }
                    $file_availabiliy_lic = implode(” “, $file_availabiliy_lic);
                    if ($file_price > 0)
                        $fhtml .= “<label class=’list-group-item eden-checkbox premium-file {$file_availabiliy_lic}’><div {$data} class=’badge badge-default pull-right’>{$currency}{$file_price}</div><input type=’checkbox’ {$data_prices} data-pid='{$ID}’ data-file='{$fileID}’ value='{$file_price}’ class=’wpdm-checkbox file-price file-price-{$ID}’> $fileTitle</label>”;
                    else
                        $fhtml .= “<label class=’list-group-item eden-checkbox free-file’>$fileTitle</label>”;
}
}
}
return $fhtml . “</div>”;
}
    /**
     * @usage Callback function for [image_gallery_WxHxC] tag
     * @param $package
     * @return string
     * @usage Generate file list with preview
     */
    public static function imageGallery($ID, $w = 400, $h = 400, $cols = 3)
    {
$current_user = wp_get_current_user();
$package = WPDM()->package->init($ID);
$fileinfo = maybe_unserialize(get_post_meta($ID, ‘__wpdm_fileinfo’, true));
if (function_exists(‘wpdmpp_effective_price’) && wpdmpp_effective_price($ID) > 0) return self::premium($ID);
        $files = maybe_unserialize($package->files);
        $permalink = get_permalink($ID);
        $sap = strpos($permalink, ‘?’) ? ‘&’ : ‘?’;
        $fhtml = ”;
        $idvdl = WPDM()->package->isSingleFileDownloadAllowed($ID);
        $pd = $package->avail_date ? strtotime($package->avail_date) : 0;
        $xd = $package->expire_date ? strtotime($package->expire_date) : 0;
$cur = is_user_logged_in() ? $current_user->roles : array(‘guest’);
        $permalink = get_permalink($ID);
        $sap = strpos($permalink, ‘?’) ? ‘&’ : ‘?’;
        $download_url = $permalink . $sap . “wpdmdl={$ID}”;
Session::set(‘wpdmfilelistcd_’ . $ID, 1);
        //Publish and expire date check
        if (($xd > 0 && $xd < time()) || ($pd > 0 && $pd > time())) $idvdl = 0;
$button_label = apply_filters(“single_file_download_link_label”, __(“Download”, “download-manager”), $package);
if (count($files) > 0) {
$pwdlock = (int)get_post_meta($ID, ‘__wpdm_password_lock’, true);
            //Check if any other lock option apllied for this package
            $olock = $package->isLocked();
            $swl = 0;
            $package->quota = $package->quota > 0 ?: 9999999999999;
            if (is_user_logged_in()) $cur[] = ‘guest’;
            if ($idvdl && ($pwdlock || !$olock)) {
                $swl = 1;
            }
$fhtml = “<div id=’wpdm-image-gallery’><div class=’row’>”;
            $classes = array(‘1’ ► ‘col-md-12’, ‘2’ ► ‘col-md-6’, ‘3’ ► ‘col-md-4’, ‘4’ ► ‘col-md-3’, ‘6’ ► ‘col-md-2’);
            $class = isset($classes[$cols]) ? $classes[$cols] : ‘col-md-4′;
            foreach ($files as $fileID ► $sfile) {
                $fhtml .= “<div class='{$class} col-sm-6 col-xs-6′><div class=’card mb-4’>”;
                $ind = $fileID; //\WPDM_Crypt::Encrypt($sfile);
                if (!isset($fileinfo[$sfile]) || !@is_array($fileinfo[$sfile])) $fileinfo[$sfile] = array();
                if (!@is_array($fileinfo[$fileID])) $fileinfo[$fileID] = array();
                $filePass = isset($fileinfo[$sfile][‘password’]) ? $fileinfo[$sfile][‘password’] : (isset($fileinfo[$fileID][‘password’]) ? $fileinfo[$fileID][‘password’] : ”);
                $fileTitle = isset($fileinfo[$sfile][‘title’]) && $fileinfo[$sfile][‘title’] != ” ? $fileinfo[$sfile][‘title’] : (isset($fileinfo[$fileID][‘title’]) && $fileinfo[$fileID][‘title’] != ” ? $fileinfo[$fileID][‘title’] : preg_replace(“/([0-9]+)_/”, “”, wpdm_basename($sfile)));
//$fileTitle = esc_html($fileTitle);
if ($filePass == ” && $pwdlock) $filePass = $package[‘password’];
//$fhtml .= “<div class=’panel-heading card-header ttip’ title='{$fileTitle}’></div>”;
                $imgext = array(‘png’, ‘jpg’, ‘jpeg’, ‘gif’);
                $ext = explode(“.”, $sfile);
                $ext = end($ext);
                $ext = strtolower($ext);
                $filepath = file_exists($sfile) ? $sfile : UPLOAD_DIR . $sfile;
                $thumb = “”;
if ($ext == ”) $ext = ‘unknown’;
                if (in_array($ext, $imgext))
                    $thumb = WPDM()->fileSystem->imageThumbnail($filepath, $w, $h, true);
                if ($thumb) {
                    //$file_thumb_attrs = apply_filters(“”, $file, $fileID, $thumb, $w, $h);
                    $fhtml .= “” . “<div class=’card-body’><strong class=’d-block’>{$fileTitle}<small>” . wpdm_file_size($sfile) . “</small></div><div class=’card-footer’>”;
                } else
                    $fhtml .= “” . “<div class=’card-body’><strong  class=’d-block’>{$fileTitle}<small>” . wpdm_file_size($sfile) . “</small></div><div class=’card-footer’>”;
if ($swl) {
                    if ($filePass != ” && $pwdlock)
                        $fhtml .= “<div class=’input-group input-group-sm’><input  onkeypress=’jQuery(this).removeClass(\”input-error\”);’ size=10 type=’password’ value=” id=’pass_{$ID}_{$ind}’ placeholder=’Password’ name=’pass’ class=’form-control inddlps’ />”;
                    if ($filePass != ” && $pwdlock)
                        $fhtml .= “<span class=’input-group-btn input-group-append’><button class=’inddl btn btn-secondary btn-light btn-block’ data-pid='{$ID}’ data-file='{$fileID}’ data-pass=’#pass_{$ID}_{$ind}’><i class=’fas fa-arrow-alt-circle-down’></i></button></span></div>”; //rel='” . $download_url . “&ind=” . $ind . “‘
                    else {
                        $ind_download_link = “” . $button_label . ““;
                        $ind_download_link = apply_filters(“wpdm_single_file_download_link”, $ind_download_link, $fileID, (array)$package);
                        $individual_file_actions = ”;
                        $individual_file_actions = apply_filters(“individual_file_action”, $individual_file_actions, $ID, $sfile, $fileID);
                        $fhtml .= $ind_download_link . ” {$individual_file_actions}”;
                    }
                }
                $fhtml .= “</div></div></div>”;
            }
$fhtml .= “</div></div>”;
}
return $fhtml;
}
}
Hello Natalie,
For tag-related issues, can you please check with this add-on for the WPDM plugin’s latest version?
https://www.dropbox.com/s/olxlius9wpy0rh4/wpdm-tag-importer.zip
And for PDFs related issues, can you please share the related URLs, if possible, please, give your temporary wp-admin login details in a private reply for checking the issue.
Thank you and regards
I’m using a filter plugin (LSCF Custom Filter). I need to call the download url so I can display the WPD download button into a custom template. The plugin requires a custom tag in order to call data from other plugin as shown below. I’m not a programmer and have not figure out how to modify the code below to call the download url. Can you help me?
add_action( ‘lscf_custom_tags’, ‘lscf_custom_tags_get_acf_fields’ );
function lscf_custom_tags_get_acf_fields( &$args ) {
$post_id = (int) $args[‘ID’];
$acf_value = get_field( ‘my_field’, $post_id );
$args[‘acf_field’] = $acf_value;
}
I need the custom tag to insert the download url in my custom download button:
“a class=”wpdm-download-link download-on-click btn btn-primary ” download=”” rel=”nofollow” href=”#” data-downloadurl=”{{post.acf_field}}”>Download”
Hello ,
Sorry to hear about the issue.
Could you please share the related page/file/package URL with us?
Make sure that you are using the latest version of wpdm and all the addons of wpdm are latest version.
If possible please also share the admin access of your website in a private reply.
It helps us to quickly figure out the issue and resolve it immediately.
Thank you
Hello, I found the fix, following a report from our hosting provider that they found an error showing that the bucket didn’t exist.
It turns out that we were missing the “Region” info in the access URL.
We were previously hosting our whole site on AWS and that might have been why we did not need to specify the AWS Bucket Region then.
After adding the bucket region. It loaded instantly.
Hello Kevin,
Hope you are well.
For #1, For Footer Player, Can you please share the related URL? if possible, you can also share screenshots.
For #2, You are also capable of making the responsive template layout with custom CSS, there is also an available Custom CSS section that you can put while creating custom templates
For #3, Can you please share the related URL or screenshots too
For #4, Can you please share which default shop page you are talking about?
For #5, Are you talking about the single page, package URL?
For #6, You can check this bulk import doc, Bulk Import – WordPress Download Manager (wpdownloadmanager.com), and here you can use/edit the sample.csv file
For #7, If you are talking about frontend uploader, please check this doc and shortcode,
For #8, Can you please the above doc if it fulfills your requirements
For #9, Are you using this add-on, WP Pro Membership – WordPress Membership Plugin (wpdownloadmanager.com)
here you should find the recurring option
For #10, Can you please elaborate on which option you are talking about?
For #11, We have [wpdmpp-prepaid-credits] that will help you to site members to purchase marketplace credits
For #12, It is possible to customize the frontend uploader, please elaborate which options you want to keep and remove
For #13, Sorry for the inconvenience. Please share the related URL
For #14, Do you want it on a single packages page? please let me know
Thanks for your appreciation
Thank you and regards
Hi,
This the end of the HTML code, with formating for a better visibility:
 <div class=”w3eden”>
<div id=”wpdm-popup-link” class=”modal fade”>
<div class=”modal-dialog” style=”width: 750px”>
<div class=”modal-content”>
<div class=”modal-header”>
<h4 class=”modal-title”></h4>
</div>
<div class=”modal-body” id=’wpdm-modal-body’>
<p class=”wpdm-placeholder”> [ Placeholder content for popup link ] WordPress Download Manager – Best Download Management Plugin</p>
</div>
<div class=”modal-footer”> <button type=”button” class=”btn btn-danger” data-dismiss=”modal”>Close</button></div>
</div>
</div>
</div>
</div>
<style type=”text/css”>#wpdm-modal-body img{max-width:100%!important}.wpdm-placeholder{display:none}</style>
<script type=”ff6a3d57edd688ada9188976-text/javascript” id=’contact-form-7-js-extra’>/* <![CDATA[ */ var wpcf7 = {“api”:{“root”:”https:\/\/www.zebulon.fr\/wp-json\/”,”namespace”:”contact-form-7\/v1″},”cached”:”1″}; /* > */</script> <script type=”ff6a3d57edd688ada9188976-text/javascript” id=’pt-cv-content-views-script-js-extra’>/* <![CDATA[ */ var PT_CV_PUBLIC = {“_prefix”:”pt-cv-“,”page_to_show”:”5″,”_nonce”:”e23957c20b”,”is_admin”:””,”is_mobile”:””,”ajaxurl”:”https:\/\/www.zebulon.fr\/wp-admin\/admin-ajax.php”,”lang”:””,”loading_image_src”:”data:image\/gif;base64,R0lGODlhDwAPALMPAMrKygwMDJOTkz09PZWVla+vr3p6euTk5M7OzuXl5TMzMwAAAJmZmWZmZszMzP\/\/\/yH\/C05FVFNDQVBFMi4wAwEAAAAh+QQFCgAPACwAAAAADwAPAAAEQvDJaZaZOIcV8iQK8VRX4iTYoAwZ4iCYoAjZ4RxejhVNoT+mRGP4cyF4Pp0N98sBGIBMEMOotl6YZ3S61Bmbkm4mAgAh+QQFCgAPACwAAAAADQANAAAENPDJSRSZeA418itN8QiK8BiLITVsFiyBBIoYqnoewAD4xPw9iY4XLGYSjkQR4UAUD45DLwIAIfkEBQoADwAsAAAAAA8ACQAABC\/wyVlamTi3nSdgwFNdhEJgTJoNyoB9ISYoQmdjiZPcj7EYCAeCF1gEDo4Dz2eIAAAh+QQFCgAPACwCAAAADQANAAAEM\/DJBxiYeLKdX3IJZT1FU0iIg2RNKx3OkZVnZ98ToRD4MyiDnkAh6BkNC0MvsAj0kMpHBAAh+QQFCgAPACwGAAAACQAPAAAEMDC59KpFDll73HkAA2wVY5KgiK5b0RRoI6MuzG6EQqCDMlSGheEhUAgqgUUAFRySIgAh+QQFCgAPACwCAAIADQANAAAEM\/DJKZNLND\/kkKaHc3xk+QAMYDKsiaqmZCxGVjSFFCxB1vwy2oOgIDxuucxAMTAJFAJNBAAh+QQFCgAPACwAAAYADwAJAAAEMNAs86q1yaWwwv2Ig0jUZx3OYa4XoRAfwADXoAwfo1+CIjyFRuEho60aSNYlOPxEAAAh+QQFCgAPACwAAAIADQANAAAENPA9s4y8+IUVcqaWJ4qEQozSoAzoIyhCK2NFU2SJk0hNnyEOhKR2AzAAj4Pj4GE4W0bkJQIAOw==”};
var PT_CV_PAGINATION = {“first”:”\u00ab”,”prev”:”\u2039″,”next”:”\u203a”,”last”:”\u00bb”,”goto_first”:”Aller \u00e0 la premi\u00e8re page”,”goto_prev”:”Aller \u00e0 la page pr\u00e9c\u00e9dente”,”goto_next”:”Aller \u00e0 la page suivante”,”goto_last”:”Aller \u00e0 la derni\u00e8re page”,”current_page”:”La page actuelle est”,”goto_page”:”Aller \u00e0 la page”}; /* > */
</script> <script type=”ff6a3d57edd688ada9188976-text/javascript” id=’rate-my-post-js-extra’>/* <![CDATA[ */ var rmp_frontend = {“admin_ajax”:”https:\/\/www.zebulon.fr\/wp-admin\/admin-ajax.php”,”postID”:”125611″,”noVotes”:”Aucune note jusqu’\u00e0 pr\u00e9sent ! Soyez le premier \u00e0 noter ce logiciel.”,”cookie”:”Vous avez d\u00e9j\u00e0 donn\u00e9 une note. Ce vote ne sera pas compt\u00e9 !”,”afterVote”:”Merci d’avoir \u00e9valu\u00e9 ce logiciel !”,”notShowRating”:”1″,”social”:”2″,”feedback”:”1″,”cookieDisable”:”1″,”emptyFeedback”:”Merci de saisir votre commentaire ci-dessus !”,”hoverTexts”:”1″,”preventAccidental”:”2″,”grecaptcha”:”1″,”siteKey”:”6Ldi6pwUAAAAADFLrY38P9kWLCwBIBpGNJVNX0kT”,”votingPriv”:”1″,”loggedIn”:””,”positiveThreshold”:”2″,”ajaxLoad”:”2″,”nonce”:”326a7ef9ab”}; /* > */</script> <script type=”ff6a3d57edd688ada9188976-text/javascript” id=’main-scripts-js-extra’>/* <![CDATA[ */ var ajax_var_more = {“url”:”https:\/\/www.zebulon.fr\/wp-admin\/admin-ajax.php”,”nonce”:”a8151b8754″,”errorPass”:”<p class=\”message message-error\”>Password does not match the confirm password<\/p>”,”login”:”Email Address”,”password”:”Password”,”headerstyle”:”default”}; /* > */</script> <script type=”ff6a3d57edd688ada9188976-text/javascript” id=’penci_ajax_like_post-js-extra’>/* <![CDATA[ */ var ajax_var = {“url”:”https:\/\/www.zebulon.fr\/wp-admin\/admin-ajax.php”,”nonce”:”a8151b8754″,”errorPass”:”<p class=\”message message-error\”>Password does not match the confirm password<\/p>”,”login”:”Email Address”,”password”:”Password”,”headerstyle”:”default”}; /* > */</script> <script type=”ff6a3d57edd688ada9188976-text/javascript” id=’penci_ajax_more_posts-js-extra’>/* <![CDATA[ */ var ajax_var_more = {“url”:”https:\/\/www.zebulon.fr\/wp-admin\/admin-ajax.php”,”nonce”:”a8151b8754″,”errorPass”:”<p class=\”message message-error\”>Password does not match the confirm password<\/p>”,”login”:”Email Address”,”password”:”Password”,”headerstyle”:”default”}; /* > */</script> <script type=”ff6a3d57edd688ada9188976-text/javascript”>window.lazyLoadOptions={elements_selector:”img[data-lazy-src],.rocket-lazyload,iframe[data-lazy-src]”,data_src:”lazy-src”,data_srcset:”lazy-srcset”,data_sizes:”lazy-sizes”,class_loading:”lazyloading”,class_loaded:”lazyloaded”,threshold:300,callback_loaded:function(element){if(element.tagName===”IFRAME”&&element.dataset.rocketLazyload==”fitvidscompatible”){if(element.classList.contains(“lazyloaded”)){if(typeof window.jQuery!=”undefined”){if(jQuery.fn.fitVids){jQuery(element).parent().fitVids()}}}}}};window.addEventListener(‘LazyLoad::Initialized’,function(e){var lazyLoadInstance=e.detail.instance;if(window.MutationObserver){var observer=new MutationObserver(function(mutations){var image_count=0;var iframe_count=0;var rocketlazy_count=0;mutations.forEach(function(mutation){for(i=0;i<mutation.addedNodes.length;i++){if(typeof mutation.addedNodes[i].getElementsByTagName!==’function’){return}
if(typeof mutation.addedNodes[i].getElementsByClassName!==’function’){return}
images=mutation.addedNodes[i].getElementsByTagName(‘img’);is_image=mutation.addedNodes[i].tagName==”IMG”;iframes=mutation.addedNodes[i].getElementsByTagName(‘iframe’);is_iframe=mutation.addedNodes[i].tagName==”IFRAME”;rocket_lazy=mutation.addedNodes[i].getElementsByClassName(‘rocket-lazyload’);image_count+=images.length;iframe_count+=iframes.length;rocketlazy_count+=rocket_lazy.length;if(is_image){image_count+=1}
if(is_iframe){iframe_count+=1}}});if(image_count>0||iframe_count>0||rocketlazy_count>0){lazyLoadInstance.update()}});var b=document.getElementsByTagName(“body”)[0];var config={childList:!0,subtree:!0};observer.observe(b,config)}},!1)
</script><script data-no-minify=”1″ async src=”https://www.zebulon.fr/wp-content/plugins/wp-rocket/assets/js/lazyload/16.1/lazyload.min.js” type=”ff6a3d57edd688ada9188976-text/javascript”></script> <script src=”//js.smartredirect.de/js/?h=fYYGRBlo” type=”ff6a3d57edd688ada9188976-text/javascript” async></script> <script type=”ff6a3d57edd688ada9188976-text/javascript”>const wprRemoveCPCSS = () ► { if( document.querySelector(“link[data-rocket-async=’style’][rel=’preload’]”) ){ setTimeout(wprRemoveCPCSS, 200); }else{ $elem = document.getElementById( “rocket-critical-css” );if ( $elem ) {$elem.remove();} } }; if ( window.addEventListener ) { window.addEventListener( “load”, wprRemoveCPCSS ); } else if ( window.attachEvent ) { window.attachEvent( “onload”, wprRemoveCPCSS ); }</script><script src=”https://www.zebulon.fr/wp-content/cache/min/1/484fda759c8b22d1892156fd2a9ba4f9.js” data-minify=”1″ defer type=”ff6a3d57edd688ada9188976-text/javascript”></script>
<noscript>
<link rel=”stylesheet” href=”https://fonts.googleapis.com/css?family=Oswald%3A400%7CMontserrat%3A300%2C300italic%2C400%2C400italic%2C500%2C500italic%2C700%2C700italic%2C800%2C800italic%7CRoboto%3A300%2C300italic%2C400%2C400italic%2C500%2C500italic%2C600%2C600italic%2C700%2C700italic%2C800%2C800italic%26amp%3Bsubset%3Dlatin%2Ccyrillic%2Ccyrillic-ext%2Cgreek%2Cgreek-ext%2Clatin-ext%7CRubik&display=swap” />
<link rel=”stylesheet” href=”https://www.zebulon.fr/wp-content/cache/min/1/227cbe85ac0ff0e546c1896ae47f84d0.css” data-minify=”1″ />
<link rel=’stylesheet’ id=’wpdm-font-awesome-css’ href=’https://use.fontawesome.com/releases/v5.12.1/css/all.css’ type=’text/css’ media=’all’ />
</noscript>
<script src=”/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js” data-cf-settings=”ff6a3d57edd688ada9188976-|49″ defer=””></script>
</body>
</html>
Regards,
Yann
Hello Richard,
The new tab/window for downloading files is already in the settings. If you are trying to download in a separate window, It is also possible in the manual method, by default, you are using link-template-default.php for the link template and page-template-default.php for the page template. you can edit the files and follow this doc, https://www.wpdownloadmanager.com/doc/template-files/ for backup of your files.
For opening in new windows, please add this code replacing [download_link] in page/link templates PHP file as i described below,
<a href="[download_url]" onclick="window.open('[download_url]','newwindow','width=1200,height=800'); return false;" class="btn btn-primary" target="_blank">[link_label]</a>
Please check and let me know
Thank you and regards
Hello is there any way I can set multiple file paths on one website?
like can I add the file directory URL/Path by adding the below code into the wp-config.php file.
define(‘UPLOAD_DIR’, ‘…site/wp-content/uploads/a/’);
define(‘UPLOAD_DIR’, ‘…site/wp-content/uploads/b/’);
and so on.
I already send the query but no answer yet. DO you have any chat support?
Hello
thanks for your fast reply, sure!
So I have like 120 pdfs on my site uploaded as single packages. Some weeks ago there was automatically a pdf thumbnail of the first page generated, which was usable with the [thumb_url_1200x600] Shortcode in linktempalte “image_hover”.
Now there are no thumbnails showing, whether in the package backend nor in the frontend.
I can still use icons, or manually add a featured image to the package which works great.
Well, for each download in the backed it allows me to add a pdf.
SO here: https://swaincounty.wpengine.com/documents/ They have a download button next to it. I wanta button underneath each one that says something else, like Fill Out and when clicked it sends to a url.
Hello @nicholassoutherndigitalconsulting-com,
Greetings and Welcome.
You can change the file directory URL/Path by adding the below code into the wp-config.php file.
define('UPLOAD_DIR', '...site/wp-content/uploads/category/');
I hope that helps and answers your query.
Hello CC,
For #1, For editing publish date you shall get the option as I image attached when you will use Download Period Add-on
For #2, I hope the option will be reviewed by our developers
For #3, The feature is working fine from our side. Can you please share the related URL? if possible, Can you please, give your temporary wp-admin login details in a private reply for checking the issue.
For #4, Yes, I have checked that issue from my side too
For #6, I think this option is available in All Items section from frontend packages
please check
Thank you and regards
Hello @stevie-ds,
Thank you for letting us know about it.
Since this is a newly reported issue while other users haven’t reported yet.
So, it will be very cooperative if you provide us with some additional information like
Page URL,
Admin login credentials
Some related screenshots.
These pieces of information will help us to debug the issue properly.
Regard
Hi @Robertwikholm,
You can update files from the file list of any package from the attached file list.

You will just remove the old file from there then reupload the newer and keep the file name same. In this way you can add newer version number there.
If you want to show only directory url, then either you have to add files by using SELECT FILES FROM SERVER or SELECT FROM MEDIA LIBRARY.

Also you can use the below shortcode to make direct download links for any packages.
[wpdm_direct_link] – Embed direct download link as a simple text link
Hope you understand.
Thank you
Hello CC,
Hope you are well. For #1, Scheduling date for packages, you can check this add-on,
For #2, Yes, it is possible, it needs to edit the related files
For #3, Can you please share the related URL, if possible, please, give your temporary wp-admin login details in a private reply for checking the issue
For #4, please share the related URL for checking
For #5, Please share the related URL, and if possible, please, give your temporary wp-admin login details in a private reply for checking the issue
Thank you and regards
Hello Patricia,
Hope you are well. For changing link label, please check the package settings option as I image attached,
For more details, you may check this doc,
And For issue one, Can you please share the related URL for checking the issue?
Thank you and regards
Hello kevin,
I have adjusted this page display issue,
http://goldmics.com/buy-credits/
you also want to display the name, category, thumb, tags, cart button, add to package lists, free download button, possibly within the player, can you please tell which player you’re talking about, probably, you can share the related pages URL or screenshots too for adjusting those for you. And for the file cart issue, can you please tell me which position you want to fit it, please elaborate your requirements with points out with sharing related URLs. Hearing back from you.
THank you and regards
Hello,
I have checked your video.
Please make sure that you are using the latest version of WPDM and its related add-on.
If the problem still exists then provide us with your temporary wp-admin login details and site URL in a private reply for checking the issue.
Also, please share the related page/file/package URL with us where the issue exists.
Thanks.
Hello @duportde,
Greetings and Welcome!
First of all please make sure that you are also using the latest version of the WPDM Directory add-on which is right now 4.3.3.
Apart from that please find and use the correct shortcode with exact valid parameters from the below documentation link.
I hope it will work fine then. If it doesn’t work, then please provide us with your temporary wp-admin login details and site URL in a private reply for checking the issue.
Also, please share the related page/file/package URL with us where the issue exists.
Have a good day!
Hello,
I have a set of documents that users need to fill out a form in order to download. I’m using the Form Lock add-on. I’m also having the PDF being opened in the browser. Is it possible to protect the generated URL so that users do not share it? Also, is it possible to redirect users that haven’t filled out the form to the locked form?
Thanks in advance