Official: WCDDL - The DDL Script

Status
Not open for further replies.

JmZ

(╯°□°)╯︵ ┻━┻
1,789
2008
729
0
Here's a big summary thread for you guys, ill try keep it up-to-date.

logo.jpg


What is it?
I don't need a huge description here. If you're reading this thread you likely already know what WCDDL is.

WCDDL is a DDL script, created to act as a base to DDL sites which can easily be modified to your needs and runs efficiently with minimal 'bloat'. It is very secure and handles high traffic well, while keeping the database size reasonable.

Who made it?
WarezCoders.com made WCDDL. I coded it myself, the team created (and still do create) modules for it, also some seem to continue releasing themes for it.

System Requirements

All Versions: MySQL, PHP.
WCDDL 2 or later: PHP5
WCDDL 3: PHP5 with PDO (built in by default)

Features
  • Admin Panel
  • Blacklist & Whitelist Support
  • SQL-based blacklist/whitelist
  • Download Submissions Queue
  • Add Downloads
  • Edit Downloads
  • Delete Downloads
  • Download Ratings
  • Pre-Optimised Database
  • Module support for extending the script
  • SEO URLs supported (not included)
  • Compatible with all Autosubmitters
  • Customisable Categories
  • Search logs (Recent searches)
  • Complete pagination
  • Delete downloads on Blacklisting a URL
  • Cookieless admin sessions
  • Completely customisable
  • Search within a category
  • No pointless bloat or frameworks, pure, efficient code

Versions
WCDDL1 - Module support, procedural
WCDDL2 - Object-oriented, module support, database restructure
WCDDL3 - Completely object-oriented, module support, PHP5

WCDDL3 Changes
  • PHP5 only
  • PDO instead of old mysql_ library for portability
  • Full object-orientation
  • Optimised database
  • Fulltext searching
  • Better module system
  • COMPLETE RECODE FROM SCRATCH
As always, don't expect huge new features and such, that is what modules are for. Instead, expect better code, higher efficiency and faster page execution. Also the database will be slightly restructured for efficiency. Security changes may also be made.

IF ANY OF THE FOLLOWING LINKS ARE DOWN, SEE THE MIRRORS AT THE END OF THIS POST.

Download WCDDL3
https://github.com/jmzrlz/WCDDL/zipball/master

Download WCDDL2
http://warezcoders.com/code/WCDDL.zip

Download Legacy v1
http://warezcoders.com/code/WCDDL1.zip

Install
Edit wcfg.php and import database.sql into your database.

Support
This script is specifically directed at webmasters with prior experience with running DDL websites and/or PHP.
I do not provide support unless im bored. If you do need help, ask on these forums or the warezcoders forums, you'll most likely get a faster response here.
All those people who claim this script allows kids to throw up 5 minute DDL sites are mentally ill. You can see from v2 to v3 that I don't care about changing how it looks or frontend functionality, just the backend code. This DDL script is not for newbies, kids, etc, it is for real webmasters with a future.

Credits
I could thank loads of people but the ones who actually helped in the past are:
Sickness, Whoo, Jomasaco and the rest of the WC team.

Links
Development Thread
WCDDL2 -> WCDDL3 themes

Mirror Links

WCDDL1
- http://www.box.net/s/7b7df188v99pju1hd5rg

WCDDL2
- http://wanted.ws/wp-content/uploads/2010/10/WCDDL.zip
- http://www.box.net/s/185tun6g8ar67sjqxfab

WCDDL3
- N/A
 
Last edited:
145 comments
Well, WCDDL is the best DDL script and its easily customizable. Good work JmZ.

Just a small question, will the WCDDLv3 have a skinning feature (themes addition) ?
 
Why a new thread? I think everybody knows about it, but nice title selection I guess - Googlers will land straight here.

WCDDL is awesome though, great job.
 
Well, WCDDL is the best DDL script and its easily customizable. Good work JmZ.

Just a small question, will the WCDDLv3 have a skinning feature (themes addition) ?

Ideally I'd like to keep it structured so that you call the pages directly (e.g. /download.php?id=293 if not rewritten).

If I were to implement some sort of template system, it'd likely mean directing requests to some file (e.g. /loader.php) which then serves the correct template for the given request.

Right now you can implement any HTML/CSS design just by copypasting the PHP from the default files.

To have a theme switcher, a module could be written I guess.

Why a new thread? I think everybody knows about it, but nice title selection I guess - Googlers will land straight here.

WCDDL is awesome though, great job.

Because supposedly it's getting stickied and I figured this provides a better summary than previous threads.
 
UPDATES 29/04/11

After 2 days of working on the core, I've now completely recoded it from scratch.
Everything is object-oriented, searching is now fulltext (see MySQL FULLTEXT Indexing), the config has been simplified and repetition of code has been kept to a minimum.

I have yet to do all the admin functionality, module/hook system and whatever else needs reimplementing.

Then I may consider either adding new features or just releasing a couple of modules.
 
If I can get a load of it done today again, maybe before next week, so this weekend.

We'll see though, depends how busy I get.
 
I know it's a massive amount of extra work and removes a lot of the simplicity of the script but a loader.php file with a template system would have serious advantages. If you think that a DDL site only updates about once a day when the queue is processed by the admin it provides the perfect opportunity to cache the most used pages like the index and main $type pages.
Caching additional stuff like the stats in the sidebar, top downloads etc would also then be a lot easier.
Not much of a benefit to smaller sites but a considerable difference to larger sites.

Still though all sounds great and looking forward to testing it and creating modules.
 
The main reason for not having one loader/bootstrap file is because a lot of webmasters prefer having one file per page. They don't understand the whole 'one loader and multiple includes' thing.

The caching idea can be done by a module with the current structure.
 
Mr Happy I added a list of hooks to the first post of this thread for v3.

I'll be adding more.
 
Hooks are pretty much done for non-admin functionality.

I still have to code the admin functionality.

Here's an example module using hooks:
PHP:
function checkBacklink($submit) {
	// $submit is a Submit instance
	// surl is the site url
	$html = file_get_contents($submit->site_url);
	if(!preg_match('#href="http://(www\.)?mysite\.com/"#', $html))
		$submit->error = 'No backlink detected.';
	// That is all
	// Now validation will fail if no backlink is found
}
Core::load()->hook('SubmitValidation', 'checkBacklink');
 
Last edited:
Looks cool. I'm looking forward to a beta so I can test and have a play around with it.

You know it's quiet easy to update existing mods so as it's similar. They won't really have to be re-coded from scratch.
 
Status
Not open for further replies.
Back
Top