URL Shortening Service - How to not use any? All shortening services available are spammed!

I don’t know how to implement it - but it really has to be from your own domain - anything else ends up in too many spam folders. BTW - the goo.gl service did not work for some time, and now is fully switched off.

Pretty Links is a free plugin for WP. Once installed, you create a new Pretty Link by entering the destination URL you want to shorten, and then it will provide you the “root” part of your domain and then you add whatever you want to call it. So for example the (fake) url could start as:


but end up as http:// yourdomain(dot)com/ register2019

And the source does not even have to be on your own domain, so you can even create a Pretty Link with your domain in it, yet, it could link to an affiliate page.

Yes - but how do I integrate it into s2member? I don’t think that will be easy.

I’ve never used Pretty Links, but have heard about it. I tend to redirect affiliate referrals before things get to PHP to save CPU (e.g., NGINX or Apache conf files), but it’s just a plugin. Install it and use it. Am I wrong @Cassel?

You’re right for inbuilt wordpress functions, but not for anything related to s2member. You would need to set up s2member to recognize it and use it especially for those links

Hi Felix.

I updated s2’s URL Shortening with some changes:

  • Removed Goo.gl, since it’s no longer available.
  • Added the option to not shorten the URL.
  • Added a field for other shortening services over GET.

The last one makes it possible to integrate with YOURLS. Just install YOURLS in a dir (e.g. /r), get your token from YOURLS Admin > Tools > secret signature token, and use it in the API URL like this:


YOURLS is included in cPanel’s Softaculous or Fantastico, which makes it easier to install.

You may be interested in this YOURLS plugin to generate a random string ID, instead of the incremental number ID. https://github.com/YOURLS/random-keywords

After setting it up, you can test this from the signup link generator here: WP Admin > s2Member > PayPal Buttons > Member Registration Access Links. Just enter a random value in the subscr ID and click “Generate Access Link”. It will output something like this: https://yoursite.com/r/0s1q4

I look forward to your feedback. :slight_smile:


Thanks a lot for this Change - and sorry for not thanking/replying earlier. I was very busy with other problems the last weeks.

So what did I do:

  • following several tutorials how to install yourls I went crazy! And actually several times managed to get the firewall of my server to block me. Not sure what went wrong here - Easiest is not to install yourls with own domain - but just install an instance of yourls for each website - and follow this guide:

Actually I realised that it it intended this way anyhow.

Just one thing missing - before opening the /admin/ website to run the yourls installer - I did a
sudo chown -R www-data:www-data /var/www/MYWEBSITE.COM/go
because you likely have the wrong user still.

Watch out in the config to change the following line correctly (if installed to go subdirectory):
define( ‘YOURLS_SITE’, ‘https://MYDOMAIN.ORG/go’ );

I of course also created a new user for MariaDB database to be used your yourls (one for each website!).

then Copied in the Random Keyword plugin - and activated it from the Yourls Plugin section. Copied the secret key to the above API URL - and it seems everything is working fine - at least the test worked okay.

If I don’t report back here again - it means it is working and it would be great to include this patch into the next s2member version.

I guess you could run yourls also using your website database user - but I guess using a separate database is more secure? Or would you recommend using the same database and user so in case you need to move your server - less things to go wrong?

1 Like

Can you please check the download link for the pro version? I cannot download it even though being logged in (and downloading the normal release without problems). It does not look like a normal s2member protected download link… Else I cannot test it (even though of course I like everyone else here is mainly waiting for the new credit card implementation for SCA/EU regulations).

I tested it again, and it works for me. You have to be logged in to s2member.com and have an s2Member Pro license for the s2Member Pro RC download. The Framework’s RC is public.

Yes, the the PSD2 thing I’m still working on, but I had this ready for a while and decided to release it instead of waiting any longer. There will be more releases for the coming things.


Nope - not working:
The link (removed https://s here so it shows correctly):

becomes: https://s2member.com/prices/?_s2member_vars=file..ccap..pro..file..ccaps%2Faccess-s2member-ccap-pro%2Fs2member-pro-v190813-RC.zip..Lz9zMm1lbWJlcl9maWxlX2Rvd25sb2FkPS9jY2Fwcy9hY2Nlc3MtczJtZW1iZXItY2NhcC1wcm8vczJtZW1iZXItcHJvLXYxOTA4MTMtUkMuemlw&_s2member_sig=1565807428-7e867a439e1c90c34c97cfdd03973816

while other links to pro version are like this and working.


And I end up on the signup page. On my account page I have: s2Member® Pro / Unlimited-Site License

I see. It redirects you as if you didn’t have the “pro” ccap… Could you tell me your username over at s2member.com so I check your account and make sure everything’s okay there? I looked you up with openmtbmap, Felix Harmann, Harmann, and the email you use here, but couldn’t find the account.

Thanks :slight_smile:

Username is extremecarver

Thanks. Found it.

You were missing the Pro access. For some reason your account was demoted over a year ago. I gave you back the Pro access and you should be able to download the file now.

Let me know if you need more help with it. :wink:

okay thanks - now the donwload worked (strange I could download all normal pro Versions from the download list and from within s2member though, guess only ccap was missing but level of account was still correct).

1 Like

btw - no new problems with the release candidate - everything works as expected.

1 Like

Thank you for the feedback! :smiley:

Why not use PrettyLink?

I haven’t tried it, but i don’t think it’d work on s2 links. With the new s2 Pro release, if PrettyLinks has a API to shorten links, it may be possible to use it too, as I suggest with YOURLS.


I’m confused about the use case for this. Why do we need to use shortened links and have it integrated with s2?