I am the developer, the server is on AWS we didn’t have 500 error in other places but only for this instnace.
Here is the complete WP error log when you click on the red link (URL) on your Chrome:
link
Fatal error: Uncaught Stripe\Error\InvalidRequest: Checkout does not support plans with the value 0 foramount
insubscription_data[items][0]
. in /*******/wp-content/plugins/wpdmpp-stripe/libs/vendor/stripe/stripe-php/lib/ApiRequestor.php:210 from API request ‘req_IvPrCRHaOg61o5’ Stack trace: #0 *******/wp-content/plugins/wpdmpp-stripe/libs/vendor/stripe/stripe-php/lib/ApiRequestor.php(173): Stripe\ApiRequestor::_specificAPIError(‘{\n “error”: {\n…’, 400, Object(Stripe\Util\CaseInsensitiveArray), Array, Array) #1 /*******/wp-content/plugins/wpdmpp-stripe/libs/vendor/stripe/stripe-php/lib/ApiRequestor.php(473): Stripe\ApiRequestor->handleErrorResponse(‘{\n “error”: {\n…’, 400, Object(Stripe\Util\CaseInsensitiveArray), Array) #2 /*******/wp-content/plugins/wpdmpp-stripe/libs/vendor/stripe/stripe-php/lib/ApiRequestor.php(126): Stripe\ApiRequestor->_interpretResponse(‘{\n “error”: {\n…’, 400, Object(Stripe\Uti in /*******/wp-content/plugins/wpdmpp-stripe/libs/vendor/stripe/stripe-php/lib/ApiRequestor.php on line 210
When the API is coming back from Stripe servers, it can’t complete the payment process due to the error (there is a parameter that cannot be passed when its value is empty or zero) from Stripe.
Also, I added another plan that has 1 year interval and it works perfectly fine with Stripe Test mode.
Can you please take a closer look at your code (where Stripe API is set)? When you choose the lifetime option, maybe it should use a different method (function) not to pass the data for recurring payment method to stripe, but ONE time payment method.
Does that make sense for you?
Thanks for your help.
-
This reply was modified 4 years, 10 months ago by
Ali Khansari.
Can you provide the package URL for watching how you are trying to add the images? There are lots of packages in your site
Thanks.
This reply has been marked as private.
This reply has been marked as private.
In Korea, many people still use MS-Explorer.
So there is a problem when downloading a file in Korean.
But there’s no problem with Google’s Chrome.
So I have to change the file class.FileSystem.php from line 111 to the next code whenever WPDM version up.
if (!isset($extras['play'])) {
if (get_option('__wpdm_open_in_browser', 0) || wpdm_query_var('open') == 1)
header("Content-disposition: inline;filename=\"{$filename}\"");
else
$ua = htmlentities($_SERVER['HTTP_USER_AGENT'], ENT_QUOTES, 'UTF-8');
if (preg_match('~MSIE|Internet Explorer~i', $ua) || (strpos($ua, 'Trident/7.0') !== false && strpos($ua, 'rv:11.0') !== false)){
header("Content-disposition: attachment;filename=".iconv('utf-8', 'euc-kr', $filename)."");
}else if(preg_match("/Edge/",$ua)){
// do stuff for EDGE
header("Content-disposition: attachment;filename=".rawurlencode($filename)."");
}else{
// safari, chrome and firefox, etc...
header("Content-disposition: inline;filename=\"{$filename}\"");
}
header("Content-Transfer-Encoding: binary");
}
Could you add this code to next version-up for Korean?
-
This topic was modified 4 years, 11 months ago by
Jaewon Kim.
Hi,
We have a site that has installed inside it as a plugin WPML and DOWNLOAD MANAGER.
An android application has also been created to display the site as an application.
Android to display the pdf requires that the download link be added to the download link “https://docs.google.com/gview?embedded=true&url=”.
We have modified the custom template so that that string is automatically added before the [download_url] tag.
The problem arises in English language which is added after the lang=en download link.
This generates the wrong display of the pdf.
How can we make sure that it is automatically removed from every link that has the string “lang=en”?
Working link:
https://docs.google.com/gview?embedded=true&url=https://www.rallydiromacapitale.it/download/hotel-booking-form-english-version/?wpdmdl=727&refresh=5ee0a6e8cd9d11591781096
Link is not working:
https://docs.google.com/gview?embedded=true&url=https://www.rallydiromacapitale.it/download/hotel-booking-form-english-version/?lang=en&wpdmdl=727&refresh=5ee0a6e8cd9d11591781096
Thanks in advace
Hi there,
Yes possible, need to attach as URL and the video is mp4, then the preview will work then. And there is also a chance for showing via the template, you need to add [product_preview]
tag or [video_player_900x600]
for showing that
Thanks.
This reply has been marked as private.
This reply has been marked as private.
What is your site URL, above URL showing,
http://www.simonsays.org.uk’s server IP address could not be found.
let me know.
Thanks.
This reply has been marked as private.
Hi Nayeem,
You’re mentioning Additional previews. But i’m not adding mutlple images to the packages.
I’m importing from dropbox so the image preview per item in the package i want to show i based on the url-image i may assume.
The demo shows perfect lay-out but i’m getting to the point that it may only work with uploading from the library.
<div class="card bg-light c2a4 mt-2 mb-2">
<div class="card-body text-center pb-4">
<div class="text-center wicon">
[thumb_128x128]
</div>
<h3 class="p-0 m-0 mb-2"><a style="font-weight: 700" href="[page_url]">[title][ifbutton]</a></h3>
<div class="text-muted text-small"><i class="fas fa-hdd"></i> [file_size] <i class="far fa-arrow-alt-circle-down ml-2"></i> [download_count] downloads [ifbutton]</div>
</div>
<div class="card-footer text-center">
<a href="[page_url]" class="btn btn-secondary">View More</a>
<div class="d-button d-inline-block">[download_link]</div>
<div class="ml-3 [hide_empty:download_link]">[download_link]</div>
</div>
</div>
<style>
.w3eden .c2a4 .wpdm_icon{ height: 64px !important; width: auto; } .well.c2a4 .media-body{ font-size: 11pt; }
.w3eden .c2a4 .wicon img{ border-radius: 500px; max-width: 96px;margin: 5px auto 25px; }
.w3eden .c2a4 .btn{ border-radius: 50px; font-weight: 500; margin: 0 3px; padding: 0 25px; height: 36px; line-height: 36px; font-size: 12px; }
</style>


I made it with the code above, but it doesn’t seem to work properly.
How can I use this tag properly?
-
This reply was modified 4 years, 11 months ago by
Jaewon Kim.
This reply has been marked as private.
This reply has been marked as private.
This reply has been marked as private.
Hi,
Which add on are you talking about? is it related to https://www.wpdownloadmanager.com/download/file-hosting-sharing-add-on/ or others? please share your package or page URL.
Thanks.
When you are using user review plugin, here is the exact code you need to use:
add_filter("wpseo_schema_webpage", function($ldjson){
if(!is_singular("wpdmpro")) return $ldjson;
global $wpdm_user_reviews;
$reviews = get_posts("post_type=wpdmreview&meta_key=pid&meta_value=".get_the_ID()."&post_parent=0");
$ratingCount = count($reviews);
$ldjson['@type'] = 'SoftwareApplication';
$ldjson['@id'] = get_permalink(get_the_ID()).'#SoftwareApplication';
$ldjson['applicationCategory'] = "http://schema.org/OtherApplication";
$ldjson['fileFormat'] = "application/zip";
$ldjson['downloadUrl'] = get_permalink(get_the_ID());
$ldjson['softwareVersion'] = get_post_meta(get_the_ID(), '__wpdm_version', true);
$ldjson['operatingSystem'] = 'Any';
$ldjson['aggregateRating'] = array(
"@type" ► "AggregateRating",
"worstRating" ► 0,
"bestRating" ► 5,
"ratingValue" ► $wpdm_user_reviews->wpdm_get_average_reviews(get_the_ID()),
"ratingCount" ► $ratingCount,
"reviewCount" ► $ratingCount
);
$ldjson['interactionStatistic'] = array(
"@type" ► "InteractionCounter",
"interactionType" ► "http://schema.org/DownloadAction",
"userInteractionCount" ► (int)get_post_meta(get_the_ID(), '__wpdm_download_count', true)
);
return $ldjson;
}, 999);
It it is Yoast SEO, you need the add the following PHP code at the end of your active theme’s functions.php:
add_filter("wpseo_schema_webpage", function($ldjson){
if(!is_singular("wpdmpro")) return $ldjson;
$ldjson['@type'] = 'SoftwareApplication';
$ldjson['@id'] = get_permalink(get_the_ID()).'#SoftwareApplication';
$ldjson['applicationCategory'] = "http://schema.org/OtherApplication";
$ldjson['fileFormat'] = "application/zip";
$ldjson['downloadUrl'] = get_permalink(get_the_ID());
$ldjson['softwareVersion'] = get_post_meta(get_the_ID(), '__wpdm_version', true);
$ldjson['operatingSystem'] = 'Any';
$ldjson['aggregateRating'] = array(
"@type" ► "AggregateRating",
"worstRating" ► 0,
"bestRating" ► 5,
"ratingValue" ► "*.*",
"ratingCount" ► 0000,
"reviewCount" ► 0000
);
$ldjson['interactionStatistic'] = array(
"@type" ► "InteractionCounter",
"interactionType" ► "http://schema.org/DownloadAction",
"userInteractionCount" ► (int)get_post_meta(get_the_ID(), '__wpdm_download_count', true)
);
return $ldjson;
}, 999);
There, replace *.*
with an average rating and 0000
with rating and review count.
For the login button adjustment, is it related with WPDM membership add on. please give your page URL too.
Thanks.
I have added the following CSS:
.payment-gateway-list .list-group-item:first-child{
background: url("https://designs.metom.org/wp-content/uploads/2020/05/paypal.png") 32px center no-repeat !important;
background-size: auto 32px !important;
line-height: 48px;
color: transparent;
}
Here:

Hi!
I am building a grid of downloads using a featured image and title / download link.
My shortcode is…
[wpdm_category id="brochures" title="Brochures & Flooring Guides" template="5eb2d25e265b5" order_by="title" order="asc" cols=3 colspad=2 colsphone=1 download_link=1]
My custom template is…
<div class="knowledge-base-download"><a href="[download_url]">[thumb_200x200]
<b><a href="[download_url]" class="knowledge-base-download-heading" style="text-decoration: none;">[title]</b></div>
Two problems…
The first element after the wpdm_category shortcode is affected by this code. It looks like it’s throwing everything into a strange column layout, so I’m guessing it’s something to do with the columns.
Second, less critical problem, is that the title doesn’t appear. Any obvious issues? I don’t mind adding this manually, but while I’m here 🙂
Any ideas or fixes would be massively appreciated.
Thanks so much in advance!
Please put this code in your theme functions.php
, let me know if it works for you,
add_filter("wpdm_download_url_base", function($base, $ID) {
return home_url('/');
} , 10, 2 );
Thanks.
Hi,
For #option1, please your related page link and site URL
For #option2, Short-code for generating tree view of all packages and categories:
[wpdm_tree]
are you talking about this? this is related to this add on, https://www.wpdownloadmanager.com/download/wpdm-extended-short-codes/.
Thanks.
Hi,
I had to set the tag [download_page]
as return URL value to redirect to the order details page after purchase.

Now, it will redirect to the order details page after purchase.
Also, I’ve updated to download limit add-on, and tested there, it is working fine.
However, I’m watching this topic now, please let me know if you need any other assistance or I missed something there.