deciding on a CMS system to build website - html

If I need to build a website that allows users to update their content (personal information), and I also need to create a login system (accounts for users), does it make sense to build this from scratch using HTML/PHP, or should I go with something like Drupal or Wordpress? I don't know too much HTML/CSS/PHP but I've never touched a CMS like Drupal before.
Thanks for the advice!

well if you don't know much about those subjects then i'd suggest that you use use wordpress. it extremely easy for majority of people to pick up, has oodles of plug-ins, and tons of support.
also, in my experience i've found drupal to be a tad bit steep for most people to pick up.

Use a CMS. Developing anything beyond very basic functionality from scratch is generally a waste of time and is likely to result in an insecure system that doesn't easily scale or allow you to add additional functionality.
Both Wordpress and Drupal will do what you describe, I prefer Drupal as a more flexible and secure platform.
I'm somewhat unclear on what you are trying to accomplish but if you are looking to give users the ability to sign up for the website and attach additional information to their profile I'd use the Profile 2 module with Drupal to build out the extra profile fields you'd like to track.
I'm not as familiar with the Wordpress module landscape but a quick search finds the Cimy User Extra Fields plugin which appears to have similar functionality.

You can use buddypress framework which runs above wordpress. It comes with built in capabilities to create a social networking type web site. No need to do coding and theming. Lot of themes and plugins are available in internet to extend its default look and behaviour. Wordpress is very easy to use and you can implement addons as plugins to extend its capability. Buddypress is an addon for wordpress to create community websites. Also many video tutorials are there for learning wordpess development. Visit wordpress.org and buddypress.org

Related

Best practise for updating / managing HTML pages

I am developing an e-commerce website as part of an assignment and am wondering what is the best practise for updating a collection of webpages.
I currently have one index.html page for the news etc. and then I copied and pasted the file and edited as i needed for the shopping cart functionality.
My question is; if I need to update something on the index.html file and which that change to show in all the pages, is there an easy / convenient way to update all of the pages together if I have a large amount instead of updating them manually one by one?
This is where the rubber meets the road for most developers. Now you are seeing a need to update something once and have that change propagate out to some / elements / pages. This is where making things "dynamic" and "modular" start to make sense and is the very reason server side scripting languages such as PHP were created. This in addition to a database such as mysql can create powerful, data driven websites and applications. HTML is just markup, all sites use it, but it by itself isn't able to take advantage of the benefits of being a dynamic language.
A great place to start looking for a content management system is by using something that has a lot of support / community behind it to help with the questions you will have along the way. It is also a good place to ease in to dynamic languages like php. I suggest using something like wordpress (wordpress.org) to get started. It handles most / all of the heavy lifting in regards to structure and all you really need to do is worry about the presentation of your site (themes). You'll only need something like MAMP (for mac) or XAMMP (for win) in order to make a local server (php / mysql) so you can install wordpress. There is a TON of resources and tutorials, plugins, themes, community support.
Edit :
Since you are limited to the client side. Alternatively, if you know javascript, you could look into a javascript MVC framework and use client side templates like handlebars, .EJS etc.
Good luck & Happy Coding!

Plug-And-Play Blogging Engine?

OK, the title is a bit misleading I suppose, but only because I'm not really sure how to condense down what I'm looking for.
Currently, I have my own personal site that I've built which rests on a CMS that I also built. I wasn't really interested in blogging when I started the site (it was mainly to showcase my Android apps), so I only added basic 'blogging' features like posting news items and such.
As of late, however, I have taken a keen interest in blogging, and would like to pursue it on my website. The issue I'm having is that I don't particularly want to invest the time it would take to expand upon my CMS to include things like archives, comments, search, and all of the other various blogging-related features that are standard.
So what I'm looking for is a blogging engine that I can plug into my existing site framework. I have found tons of services that are platforms that you build on top of (i.e Wordpress, Chyrp, and TextPattern just to name a few) but that's not what I want. I'm looking for something that I integrate into my site, not something I integrate my site into (if that makes sense).
So you want a third-party application that can plug in to a proprietary custom-built blogging/CMS framework? Unless you patterned your framework after some other publicly available and widely used framework then I think it is very unlikely that such a thing exists.
I'd suggest maybe seeing if there's a way to come up with a database migration script that will take the data that your custom framework is using and translate it into something that an existing blogging platform can understand. Then just completely replace your custom platform with the prebuilt one.

Are there any good sites for blogging about programming?

I have a few programming articles I would like to write, but I do not have a site of my own - yet ;).
Is there a site that is specifically geared toward technical / programming topics, with great functionality and style? Or will I have to go with things like wordpress or blogspot?
I would like a site that can track number of views and that has an intuitive commenting system.
Any thoughts would be appreciated.
There are other platforms, but you can do a lot of things with a Wordpress installation and the right plugins: there are plugins for analytics (you can use Google's or install something like Piwik)
The commenting system is the classical one for blogs, and you can add extra things to it with plugins (like the possibility to edit it after submit) - is there something in particular you are looking for?
The style is for you to choose and customize. There are a lot of free themes, and you can change a lot about it.
Wordpress is quite powerful when you own the domain and can control everything, so I think it's worth a try.
See http://lambda-the-ultimate.org/ but that is highly specialized
Rox suggested WordPress. I would second that. You don't need your own domain to start a Wordpress blog. Just go to wordpress.com and sign up. You will probably get an address like wordpress.com/. The advantage would be that when you get your own domain, you probably can export all your content and import it in your own wordpress installation on that domain.

Where to Start with build a personal site and WordPress, CSS and CMS

Hey guys im in a very confused state of mind at the moment and need some help with Word Press and generally starting a website. My parents have had a business for 20 years and have finally decided to get a website!
As im studying IT and Business i said id get it done for them. Rather than design it from scratch i used a template which i bought from themeforest.net (awesome template!) and yesterday a friend mentioned in passing using word press as a CMS which i had never heard of before, and he left before i could ask any questions.
SO basically i have a site working on my computer and i have no idea how to get it live as a .com or .com.au, so far as i can see wordpress is a blog with .wordpress.com which isnt what im looking for.
Thanks in advance
Simon
It seems like you have two questions here:
Q1. I have a site working on my computer (locally hosted) and I have no idea how to get it live as a .com or .com.au?
You will need to get a domain name (www.something.com or .com.au) and a Web Hosting Provider where you can upload your site to. Some Web Hosting Providers provide the service of registering a domain name for you, so that you don't have to do it on your own. Take a look at the following links for more info:
http://www.hostcompare.com/guide/guidetohosting.html
http://www.hostcompare.com/
However, since you are still learning this hosting thing, you may want to learn by using some free hosts and perfect your site by making the appropriate changes (if and where necessary) to make your site fully working on the web. For that period you can use the free sub-domain provided by the free host and when you've got it all worked out, you may then either upgrade your plan to premium or migrate to a premium host and buy a domain name as well. Search google for free hosting sites, there are lots of them to choose from.
Q2. A friend mentioned in passing using word press as a CMS which I had never heard of before?
Depending on your needs a CMS could be helpful. It allows you to easily update your sites content online and most CMSs come with additional components such as PayPal integration and the such that can be easily added to the site. Wordpress is one example of a CMS. Note that if you do want to use Wordpress or any other CMS you will need to make sure that:
The hosting provider you chose provides the necessary requirements for it. Ex. PHP, ASP.Net, MySQL, etc...
There is a version of the template that you purchased for the CMS you choose. If not, then you will have to do some custom coding to get the template to work.
If the site you have only contains a small number of static pages, then a CMS might be overkill. This doesn't mean that you can't migrate your site to a CMS in the future if needed.
Hope this helps.
You'll want to sign up with a web hosting provider (site5, dreamhost etc) and register a domain name. Once that's setup you can use the control panels from the hosts to install WordPress, plop in your theme and add content. It's often a one click affair to get WordPress installed, just be mindful of security updates as new versions come out.
Wordpress.com can host blogs, but if you want to install it on you own hosting server you can download the blog platform from wordpress.org and install it on your own server.
The only thing you have to be sure of is if the template you downloaded is for wordpress or not.
There is a difference between http://wordpress.com and http://wordpress.org In your case I think you might want to use http://wordpress.org It is a great free and open source CMS Most web hosts come with the facility of installing WP using stuff like Fantastico.

Becoming a Web Designer: CMS, or by hand [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I'm biting the bullet and becoming a Web Designer, there are just too many good opportunities out there. I'm a professional SW engineer, so I want approach this correctly. So far I'm fairly good at HTML/CSS/Javascript all completely by hand. I'm also good with jQuery and Django with mySql. I've made some cool sites but it takes TOO LONG if I want to do this for many sites.
Here is my question: Do I learn a CMS really well and use it (and be stuck with it) or do I spend that time developing some reusable HTML/CSS templates and do everything by hand?
So far my CMS experience is that there is overhead setting it up, and it you want a lot of customization you're doing CSS anyway.
If I go the CMS route -- which one?
What is the "best method" for Web Dev? I intend on creating a very diverse array of sites as well...
Thanks!!!
The future of web publishing is clearly in Content Management Systems for everything larger than a small personal site. People are not buying sites anymore for which they have to pay a professional every time a paragraph needs changing.
Make sure you know your HTML, CSS, and Javascript, but get familiar with one or more CMS's on the market, preferably one of the big ones that get you a big community, and the advantage of a widely known standard that it is easy to find people for. Learn how to customize it, how to build templates for it quickly and effectively.
One of the biggest flagships in enterprise-level CMS'es is certainly Drupal. From personal experience, I also know Joomla, but I'm not sure whether I'd recommend it to get started with - it tends to be a bit dirty on the code side sometimes. WordPress is successfully used as a CMS by many.
Look around on SO what systems people are happy with; if you want to get to know the concept of a certain CMS check out openSourceCMS who provide live demos of many CMS'es. There are also very robust commercial products out there that are better maintained than the open source projects.
There isn't a single correct answer for this IMHO. Basically, it comes down to:
Use the best tool for the job.
The best thing you can do for yourself is learn about what tools are available, and what they are capable of. Try to match each one to a scenario you think might be particularly suitable for a given solution.
You will find that if you invest a lot of time in learning something like Python / Django you will be able to create just about any site you can imagine, but then you might find that if all your client requires is a simple, mostly static company info site that something like Drupal might be more appropriate.
The baseline technologies like (X)HTML, JavaScript, CSS and SQL are used across all of them, so knowing these tools well in a generic context is also extremely valuable.
A truly well-equipped toolbelt is invaluable.
If you need a little number of pages, without any dynamics, render your site with your favorite language and numerous templates to html files and don't deal with anything but www-server.
Once you need a rather big site - use a tool which you already know well. (I using django and happy with it).
When a site is really huge - make your own CMS. But at first have a practice with tool like django. Until you know how it works - try not to deal with big projects at all.
I can advice to use statically typed language for anything, but i'm sure that you know benefits and caveats.
Python and Django is suitable almost for anything.
I am a Web Designer and recently I began using Wordpress. I've found it great so far, once I have my site ready in xHTML and CSS it only takes me a couple of hours to make the content editable.
I have also created about 3-5 themes my self, I've found creating Child Themes and using Themes like Twenty Ten as a parent, so I can use their functions etc.
I would highly suggest that you look into wordpress, especially if you want to speed up the process for creating websites.
Those two choices aren't mutually exclusive.
You should build reusable code regardless of which option you choose. With a CMS, there will already have some design decisions made for you of course, but I find myself building APIs and interfaces using Drupal all the time. In fact it's a measurement of quality.
There are also some frameworks that you might like too that will let you custom build and increase productivity. See The Zend PHP framework, Ruby on Rails, Kohana, Nanoc and the 960 CSS/HTML grid. You could say they are the best of both worlds!
If you are going to implement web sites for the general public, I'll go with Joomla. I managed to implement 9 websites in one year with this CMS. In my opinion, it is important to know PHP, HTML, CSS and Javascript pretty well before using Joomla (which you seem to know), or any other open source CMS for that matter. This way, you will be able to customize all aspects of the website (both frontend and backend) with ease. For example, when I don't find a plugin which does what I need, I just create the plugin myself.
However, if your aim is more on Web Applications rather than web sites, I'd go with ASP.NET and ExtJS, which seems to be today's trend for web applications since you will be combining the power of ASP.NET with the power of AJAX (ExtJs).
IMO, Python is more targeted for very large and complex projects (look at Google or Amazon).