I wasn't sure where to put this, so I thought I'd post it here as it seemed appropriate enough. I'm looking for some good advice on how to approach this assignment I've gotten my hands on.
So, here's the deal!
My case is that I need to create a new website for a small company that I'm working for. I'm skilled enough with (X)HTML, CSS, graphics design and all that, but the website needs a Newsletter as well as a discussion Forum and an associated Blog.
Also, some other functionality will be added to mostly improve commercialization/marketing of the website as well as Accessibility, Usability and some Social Bookmarking and stuff.
Now, adding a PHP forum and a WordPress blog is sorta straightforward enough since I plan on just linking to both of them from the main website unto their own separate sub-domains (ie., forum.mywebsite.com and blog.mywebsite.com) and simply installing WordPress and phpBB, respectively.
My problem will likely be how to add the Newsletter feature?
Right now, they have a website done with TYPO3 (an OpenSource CMS) and a newsletter module associated with their template (a default template that doesn't show off their company brand, whatsoever, which is what we also want to change, of course) and it seems to work fine.
However, I'm fairly certain that using TYPO3 is far too much "over-the-top", and I also don't believe I even have the time to get to learn how to use TYPO3 as it's pretty huge.
Right now, though, I'm digging into Drupal to see how it works.
Up until now, I've been using Dreamweaver and hand-crafted designs and CSS which works like a breeze for me, but I'd like to have a decent Newsletter implemented, and I need some kinda database stuff added for that.
Is it possible to get decent and free Open Source newsletters somewhere? I've tried searching, but haven't found much yet.
Anyway, hoping to hear some thoughts!
At some point the need for customization will outweigh the difficulty and you will need to learn to make these yourself.
Relying on prebuilt software is only as good an idea as you are willing to be limited to what it allows.
Programming a newsletter in PHP would actually be quite easy, and there are other ways around it. Compared to everything else you just mentioned, manually sending the newsletter each month would be really easy, if you don't figure out something for a while.
I don't have any suggestions for software that will do all of this for you, though something "over the top" is good because that is probably the only thing that will have all of what you want.
Given that you want 10 features (for example), you probably need to find something with 100.
It goes something like this:
1 feature needed; 1 feature in software (easy)
2 features needed; 2-4 features in software (relatively easy)
5 features needed; 10-50 features in software (harder)
10 features needed; 50-200 features in software
Though this is just a guess in general, it will often be the case that you can't find a single piece of software that has exactly the features you need and nothing else. It's much more likely that either:
1. It won't have everything you need, or:
2. It will have everything you need and a lot of extra stuff.
The only way to get a lot of features you need and nothing else is to program it yourself, in many cases.
Also, it is often easier to reprogram something yourself than to try to modify something that already exists. For example, taking wordpress and adding a lot of features to it and changing others would be very difficult.
Of course this depends on the project, but know that often modifications can be even harder than just starting over.
As you mentioned yourself, I've actually wondered if it would be a good idea to use WordPress as a base for expansion.
Obviously, I'd customize the theme completely, and add modules for Newslettering, Bookmarking and stuff.
The perfect solution would be if I could create everything in Dreamweaver through html, css, graphics and scripts, and then add a newsletter.
My problem seems to be the damn newsletter. Everything else I've done before.
Oh, and thanks for a good response, dude! Much appreciated.
The newsletter feature can be added to your site using following code:-
# Installation -
# 1 - Define all the variables for your web site below
# 2 - Save and upload this file to your cgi-bin
# 3 - Chmod it to 755
# 4 - Create an empty file for your e-mails list called whatever you want.txt
# and upload that in ascii mode to the same directory. Make sure to chmod 777.
# 5 - Create a directory in your cgi bin called "archives".
# Chmod the directory 711.
# 6 - Create an html form to send it information using the fields:
# -'address' which will be the address to subscribe to
# -'action' which should have two possible inputs; either
# 'Subscribe' or 'Unsubscribe'. Example code:
# HERE'S THE CODE YOU COPY INTO YOUR WEB SITE SO PEOPLE CAN SUBSCRIBE.
# <form action="/cgi-bin/mailmachine.cgi" method=post>
# <input type=text name="address" size=50><br>
# <input type=radio name=action value=Subscribe checked>
# Subscribe | Unsubscribe <input type=radio name=action value=Unsubscribe>
# <br><input type="submit" value="Update">
# 7 - To access the administration section in order to send e-mails to
# subscribers and subscribe/unsubscribe e-mails, enter the path in your web
# browser to the Mail Machine script - http://www.yourdomain.com/cgi-
# bin/mailmachine.cgi - and add a ?admin on the end so it would look like
# Quick note about customization -
# Wherever you see $message below an error / thanks message is defined. You
# may want to change these to fit your site.
$mailprog = '/usr/sbin/sendmail';
# Change the location above to wherever sendmail is located on your server.
# Change the address above to your e-mail address. Make sure to KEEP the \
$list_name="Name of Newsletter Here";
# Change the name above to whatever you would like to call your mailing list.
# Change the password above to whatever you would like to use to access the
# administration section.
# Set this at 1 if you want to be informed everytime someone subscribes or
# unsubscribes from your mailing list. Note: For large mailing lists you
# probably want to set this at 0 or else you will most likely be bombarded
# with subscribe/unsubscribe notices.
# Set this at 1 if you want to have subscribers confirm their addition to
# the mailing list before they are actually added. This will stop people
# from adding e-mail addresses without the owners knowledge or entering
# fictitious addresses. Note: A temp.txt will be created - DO NOT DELETE!
# Set this at 1 if you want to allow your subscribers the ability to remove
# themselves directly from your mailing. This will create a removal notice
# at the bottom of your mailing.
$html = "0";
# If you would like to send out messages in HTML set this at 1. Otherwise,
# leave it at 0 and your subscribers will receive standard text messages.
$file = "list_of_email_addresses.txt";
# This is the file that will store all e-mail addresses for your mailing
# list. Make sure and name this something that nobody will think of so
# that no one will be able to get a hold of your mailing list.
$temp_file = "temp.txt";
# - APPLIES TO TEMP SETTING ABOVE. IGNORE THIS IF NOT USING THAT FEATURE -
# This is the file that will temporarily store e-mail addresses awaiting
# verification from the user. Once verified, the e-mail address will move
# on to the "REAL" list. To be safe, I would add a couple digits to the
# end of the name like this: temp17462.txt
@bannedaddresses = ('email@example.com','firstname.lastname@example.org');
# This is a list of all addresses that you don't want to be able to join
# your mailing list at anytime. If you don't want any addresses banned,
# use this setup: @bannedaddresses = (); To extend the list of banned
# addresses just add a comma.
$lock = "2";
# Keep this at 2 if your server allows you to use file locking. File
# locking helps insure that the file storing e-mail addresses will not
# become corrupt in heavy usage. If your server doesn't allow you to use
# file locking then you need to simply remove the 2 in between the quotes.
Hope it could solve your problem.
Awesome, I'll definitely try that out, thanks dude!