Social Locks

Overview

Social locks require users to interact with your social media presence before downloading. Options include sharing on LinkedIn, tweeting, following on Twitter, or liking on Facebook. This increases your social reach while providing free downloads.

Prerequisites

  • WordPress Download Manager installed
  • Social media accounts configured
  • OAuth credentials (for some lock types)

Quick Start

  • Edit a package
  • Find Lock Options panel
  • Enable desired social lock(s)
  • Save package

Available Social Locks

Lock Type Action Required
LinkedIn Share Share package on LinkedIn
Tweet Tweet about the package
Twitter Follow Follow your Twitter account
Facebook Like Like your Facebook page

LinkedIn Lock

Enabling LinkedIn Lock

  • Edit package
  • Enable LinkedIn Lock
  • Save package

How It Works

  • User clicks download button
  • LinkedIn share dialog opens
  • User shares the package
  • Download unlocks

LinkedIn Settings

At Downloads > Settings > Social:

Setting Description
Company Page URL Your LinkedIn company page
Share Message Default share text
Include URL Add package link to share

Share Preview

┌─────────────────────────────────────┐
│ 🔗 LinkedIn                         │
├─────────────────────────────────────┤
│                                     │
│  Share to Download                  │
│                                     │
│  [Share on LinkedIn]                │
│                                     │
│  Share this post on LinkedIn to     │
│  unlock your free download.         │
│                                     │
└─────────────────────────────────────┘

Twitter/X Locks

Tweet Lock

Require users to tweet about the package.

Enabling Tweet Lock

  • Edit package
  • Enable Tweet Lock
  • Configure tweet text (optional)
  • Save package

Tweet Settings

Setting Description
Tweet Text Pre-filled tweet content
Include URL Add package link
Include Hashtags Add hashtags
Via Account Your @username

Example Tweet

Check out this awesome download!
[Package Title]
https://yoursite.com/download/package/
via @youraccount #free #download

Twitter Follow Lock

Require users to follow your Twitter account.

Enabling Follow Lock

  • Edit package
  • Enable Twitter Follow Lock
  • Enter Twitter username
  • Save package

Follow Settings

Setting Description
Twitter Username Account to follow (@username)
Verify Follow Confirm follow via API

Twitter API Setup

For follow verification:

  • Create Twitter Developer account
  • Create an app at developer.twitter.com
  • Get API keys and tokens
  • Enter at Downloads > Settings > Social > Twitter
API Key: xxxxxxxxxxxxxxxxx
API Secret: xxxxxxxxxxxxxxxxxxxxxxxxxxx
Access Token: xxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxx
Access Secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Facebook Lock

Enabling Facebook Like Lock

  • Edit package
  • Enable Facebook Like Lock
  • Enter Facebook Page URL
  • Save package

Facebook Settings

At Downloads > Settings > Social > Facebook:

Setting Description
App ID Your Facebook App ID
Page URL Your Facebook Page URL
Verify Like Confirm like via API

Facebook App Setup

For like verification:

  • Go to developers.facebook.com
  • Create a new app
  • Add Facebook Login product
  • Get App ID and Secret
  • Enter at Downloads > Settings > Social > Facebook

Like Button Display

┌─────────────────────────────────────┐
│ 👍 Facebook                         │
├─────────────────────────────────────┤
│                                     │
│  Like to Download                   │
│                                     │
│  [👍 Like Our Page]                 │
│                                     │
│  Like our Facebook page to          │
│  unlock your free download.         │
│                                     │
└─────────────────────────────────────┘

Multiple Social Locks

Combining Locks

You can require multiple social actions:

Locks:
☑ LinkedIn Lock
☑ Tweet Lock
☑ Facebook Like Lock

Lock Behavior

Mode Description
Any Complete ANY one lock
All Complete ALL locks

Configure at package level or globally.

User Experience

Social Lock Display

┌─────────────────────────────────────────────┐
│        🔒 Unlock Your Download              │
├─────────────────────────────────────────────┤
│                                             │
│  Complete one action to download:           │
│                                             │
│  ┌───────────────────────────────────────┐ │
│  │  🔗  Share on LinkedIn                 │ │
│  └───────────────────────────────────────┘ │
│                                             │
│  ┌───────────────────────────────────────┐ │
│  │  🐦  Tweet This                        │ │
│  └───────────────────────────────────────┘ │
│                                             │
│  ┌───────────────────────────────────────┐ │
│  │  👍  Like on Facebook                  │ │
│  └───────────────────────────────────────┘ │
│                                             │
└─────────────────────────────────────────────┘

Mobile Experience

Social locks work on mobile with:

  • Native share sheets on supported platforms
  • App deep links when apps installed
  • Web fallbacks when apps not available

Global Social Settings

At Downloads > Settings > Social:

Setting Description
Default Share Message Template for all shares
Include Package Title Add title to shares
Include Featured Image Add image to shares
Open Graph Tags Enable OG tags for previews
Twitter Cards Enable Twitter card markup

Custom Share Content

Per-Package Share Text

  • Edit package
  • Find Social Settings section
  • Enter custom share message
  • Save package

Dynamic Tags

Use tags in share messages:

{title} - Package title
{url} - Package URL
{site} - Site name
{description} - Package excerpt

Example:

Download {title} for free! {url} via @yoursite

Styling Social Buttons

CSS Customization

/* Social lock container */
.wpdm-social-locks {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 300px;
    margin: 20px auto;
}

/* Individual lock buttons */
.wpdm-social-lock {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    transition: transform 0.2s, box-shadow 0.2s;
}

.wpdm-social-lock:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* LinkedIn */
.wpdm-social-lock.linkedin {
    background: #0077b5;
    color: white;
}

/* Twitter */
.wpdm-social-lock.twitter {
    background: #1da1f2;
    color: white;
}

/* Facebook */
.wpdm-social-lock.facebook {
    background: #1877f2;
    color: white;
}

Tracking Social Unlocks

Statistics

View social lock usage:

  • Go to Downloads > Statistics
  • Filter by package
  • View unlock methods

Data Collected

Field Description
Unlock Type Which social action
Date/Time When unlocked
User If logged in
Package Which package

Troubleshooting

Share Window Doesn’t Open

Cause: Popup blocker

Solution:

  • Advise users to allow popups
  • Use inline share instead of popup

Like Not Detected

Causes:

  • API not configured
  • User using private browsing
  • Third-party cookies blocked

Solutions:

  • Verify Facebook App ID
  • Inform users about cookie requirements
  • Use honor system fallback

Twitter API Errors

Causes:

  • Invalid API credentials
  • Rate limit exceeded
  • API version outdated

Solutions:

  • Regenerate API tokens
  • Wait for rate limit reset
  • Update to latest WPDM version

Social Buttons Not Appearing

Causes:

  • Lock not enabled
  • JavaScript error
  • CSS conflict

Solutions:

  • Verify lock is enabled
  • Check browser console
  • Test with default theme

Privacy Considerations

What’s Shared

When users share:

  • Package title and URL (you control)
  • Their profile posts the share
  • No private data collected by WPDM

Transparency

Best practices:

  • Clearly state what action is required
  • Explain the share will be on their profile
  • Provide alternative access methods if needed

Related Documentation


Last updated: January 2026
Applies to: WordPress Download Manager 7.x

Last updated on January 26, 2026

Need Help?

Get support from our team or community forum.

Visit Support

Customization

Need custom features? We can help.

Request Quote