Which CMS meets the following requirements? [closed] - php

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 3 years ago.
Improve this question
I'm looking to create a rather content-heavy (but low budgeted) website that is going to have a lot of different sections.
The post important requirement is that it be easy to user for the administrator who won't be very tech-savvy. What I'm looking for is to minimize them coming back to me whenever they want something on the website done (i.e. adding a contact form or something like that).
The website is, for the most part, going to be a simply two level design. Each 'section' (i.e. link the navbar) is either going to be a standalone page or a page that lists other pages in a section (these pages are what constitutes the second tier).
To give an example, the top tier may be:
Home | News | Events | Volunteer | About
Home and About will be standalone pages. News will list all sorted news items. Events will list events in a potentially arbitrary order (i.e. user-weighted). Volunteer will be a form that will send an email to the 'volunteer manager'.
These volunteer-type, data-entry forms are going to be used in multiple places throughout the website and I'd like it to be rather simple for users to create these forms and get the data back from them (either through email or a backend interface).Furthermore, a section should be capable of having both forms and normal pages.
I don't know how well written this post is but that's the gist of it. Normally I'd choose Drupal but I'm not sure the person managing the website is going to be able to use it without having to come back to me constantly (although I might revert to it depending on what's available).
I was wondering what other recommendations you guys have for a system that's easy and intuitive but powerful enough to handle what I listed above.
I should note that while I'd prefer it to be a PHP-based CMS any open-source CMS should suffice for this project.

I did a usability study of different CMS systems in college and I'd like to share with you some of my findings:
After evaluating three systems, an average was taken of their usability problem severity ratings for each category for each system (0 being no problem at all, 5 being severe usability problems). Drupal had an average rating of 1.7, Joomla had an average rating of 1.5, and PHP-Fusion had an average rating of 1.2.
My recommendation for beginners is PHP-Fusion since the interface is very easy to learn. Intermediate to advanced users should use Drupal for its huge collection of features and extensions. But if one wants a middle ground between simple and feature-rich, Joomla would be the best system for that purpose.
If you're interested in the full study, I can email it to you.

My initial thought would be Drupal but you have already mentioned it as probably being too complicated.
I know most web developers will flinch at event the mention of this, but have you considered Wordpress? Some of the custom themes are pretty sophisticated and mimic a CMS pretty well. The advantage of wordpress is that it would be very easy to maintain for someone who has no knowledge of php.

I'd still say go with Drupal; just carefully create a role for the main user of the site and don't give them full admin access. That way they are shielded from the full complexity (and from screwing things up).

Joomla is what i would suggest.

Wordpress sounds like the best idea. It's free open source and PHP.
Check out Contact form 7 for your contact forms, as they are very customisable.

Related

Custom PHP development vs CMS [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 8 years ago.
Improve this question
I am building a website for my first client.
I've built my own websites in the past from scratch using PHP, HTML, CSS, etc... without a framework or CMS.
Therefore, before I proceed with this client, I want to make sure I'm going down the right path. Assuming I've already had custom development experience building a CMS (admin login, content management, etc) and can somewhat easily port my code to this new project, I'm wondering if a CMS (let's say we go with Joomla), is the better way to go. My questions are:
Is there a limit to the customization I can build/do with a CMS? If I want to add a really custom plugin/add javascript, will it be more difficult in a CMS? Or what about templates. How easily can I manage a template? Is it as simple as altering the template's HTML/CSS to fit the customer's needs?
If I have built most of the things the client is asking for already custom, would using a CMS for this new project just be bloated?
How is security handled in these CMSs, like Joomla? If the client needs online payments, can I just install a plugin and be rest assured it's secure? I haven't done my own payment systems before custom.
Would a CMS like Joomla already handle/optimized for things like SEO and Google Analytics?
Basically, given my experience building custom CMSs, what added benefit is there for going with something like Joomla vs just porting my code over?
And, the customer doesn't know anything about CMSs. Would it be better for me to go with custom development or build a site through a CMS? Is this something I should bring up to the customer?
Thanks
The basic story is this. If you do it yourself you know everything from the inside out but you also have to do everything from scratch and will make mistakes. If you use a CMS (of course I would use Joomla but it could be Drupal or Concrete 5 or one of the new ones) to some extent you have to live with the architectural decisions that other people have made. On the other hand they have millions of users and thus a lot of experience building in flexibility. With either Joomla or Drupal you don't have any limits on the customization you can do and there are many prexisting extensions that you can install for payments and so on and customize or you can integrate with other applictaions. Joomla uses its own framework while Drupal it somewhat depends on which version, but both have tons of developers and helpful communities. Basically in one of the major CMSes you have a lot of stability and people who have thought about many different problems and possibilities. So if you use an existing CMS you can be responsible for your customization and just keep an eye on all of the other parts. However you will have to deal with updates and API changes.
I'll add to Elin's comments.
Should you be using a CMS?
Go a lot of content on pages? Yes
Are you building software as a service? No way Jose!
Customisation and templates
Management and changing of templates is fairly straightforward. You can edit them and edit the css. With CSS I make sure I add a new custom.css include to the top of the template.php file and add all CSS changes to that file. This way when you update the template version (if required) you don't loose all your changes.
I spent a fair bit of time customising plugins in Joomla and Wordpress. Once again, same thing. Try and override javascript methods using included files. From experience, creating basic plugins and modules is easy - it quickly gets fairly confusing and messy when you start making your own database tables.
Custom payments
Yes, there are plugins for both. I would recommend trying to use pay-pal integration (or something similar). Two reasons 1) there is a level of confidence for consumers 2) you don't handle CC payments and all the hoo har that comes along with that and 3) it is low risk for you. Have a look through the extensions.joomla.org website to get an idea what is out there (or the wordpress plugins site)
SEO and Analytics
I read seo as "trying to trick google". Stay away from that stuff. Adding analytics into Joomla, Wordpres, Drupal etc is a plugin away (or an upload of a file into cPanel/onto disk).
Hope that gives you a bit more useful info.
Happy coding!

Should a CMS be used for a photographer portfolio web site? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
My friend photographer asked me to develop a portfolio web site, and I'm wondering if a content management system (CMS) should be used for this purpose? The website contains a minimum of dynamic stuff, mostly just photo galleries and a "Contacts" page.
I have some experience in development using PHP frameworks (Yii and CI), so it makes me wonder what is the most effortless and effective way to do develop this:
a) use some kind of CMS (will take time and effort to learn and
customize CMS to fit my needs)
b) develop a website from scratch using MVC framework (need to write
more code, but more control over the development flow)
Any tips from people experienced in developing those kind of websites is much appriciated. Thanks.
I think the biggest benefit of using a CMS is that, once you've put the site together for them, you should be able to hand control of the site completely to your friend because a CMS will already have all of the admin interfaces worked out for (in your case) adding pictures and making other small changes to the site.
Even if you are good friends, the last thing that you want is an email every month just to add some more pictures to the site. Rolling your own admin interface is certainly possible, but it will take more time and will most likely not have as many options as most major CMS's will provide.
Save yourself a lot of time and headache. There are some good CMS solutions for photography portfolio and they are pretty easy to learn. And your friend needs only standard, basic functionality (galleries, static pages and contact form), so there's no need to customize the code, only templates.
CMS platforms I would recommend:
Wordpress http://wordpress.org
ZenPhoto http://zenphoto.org
Building a website with a solid CMS has lots of benefits, e.g. saves time, gives you all required tools, those CMSs are well tested, secure and stable (not all but WP and ZP definitely are), they provide SEO tools and SEO-ready code (if you choose or create proper theme/template) etc. And with both of these CMS platforms it's really easy to upgrade without any pain.
c) A mostly static site that only uses server-side code where absolutely required.
If he is a photographer it's not a good way to use any auto-resizers that are built-in in many popular CMS, e.g. And you're right learning these CMS won't give you flexibility for further upgrades of the site (which cannot be avoided). So as a developer I always avoid Joomla and any like it. I don't have sufficient clearness and flexiblity with them, this is voice of my experience.
If you use Yii, I can offer you flexible extension exactly for your skills and situation:
AutoAdmin CMS framework for Yii
With it you can just design a database as you want, program front-end as you want (you're a programmer, aren't you?), and configure your back-end panel very quickly - exactly for your DB structure.
Or of course you may search something like it. Using Yii with extensions gives you a standartized site, which can be easily upgraded in future. Instead of Joomla-like systems which will always be oriented on customers of in-box solutions (with all following negative for skilled developers).
With mvc frameworks you get URLs that reflect your controller and action structure. This is not 100% what you want for search engine optimization. You could write your own URL dispatcher of course, if you know how to do it. Frameworks are best suited for web applications and not websites.
So better use a cms. I heard that contao (formerly Typolight) should have most functions built in and should be easy to learn ( in a day or so )
I dont CMS is necessary here, but if you want to you can try using wordpress and install a built in theme something that suits photography.

PHP ecommerce system: which one is easiest to modify [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I will have to set up ecommerce application. It will be ecommerce with high traffic (thousands views per day, few thousands orders per day, 30000+ products). I’m looking for ecommerce software written in PHP. I have checked:
Oscommerce
zencart
Magento (http://www.magentocommerce.com/)
PrestaShop (http://www.prestashop.com/) +
OpenCart (http://opencart.com) +
Cubecart (http://www.cubecart.com)
agoracart (http://www.agoracart.com/)
storesprite (http://www.storesprite.com/)
optioncart (www.optioncart.com)
interspire (http://www.interspire.com/) ~$300 + 12months support +
x-cart (http://www.xcart.com/)
and my favorites are:
PrestaShop
OpenCart
interspire
something own.
After few hours spend with each I dont know if it fill my needs. Maybe you have some experience. The project im working on have many very "special" requirements so I need something that will be very extensible (eg. add new payments types, new promotions, add functionality to have custom view for every category and by "custom view" i don’t mind different category name color only). But for me "easy extensible" means not only well written code but also well documented with good support. As you see this doesn't have to be free/opensource but licence have to allow to modify source code. It also cannot be very expensive (less than $5000). Also it has to be fast. It must support few thousand orders/per day. I don’t care if output is based on divs, tables or HTML5 section/srticle. We gonna rewrite it anyway, but build in seo support (meta tags, urls) for category/product is must. It also should allow to have unlimited category depth. It will be nice to have built in CMS but I am not interested in cart extension to jomla/drupal. It have to be standalone ecommerce application.
I'm not interested in java/python because there is lack of developers so only PHP solutions are taken into consideration.
Why not Magento: it looks good ad have awesome admin panel, but i heard that it is very slow. Also "super admin panel" means that there is a lot of javascript/functions/classes and it probably will be harder to extend. Also heard bad opinions about support.
Why not oscommerce/zencart: worked with oscommerce and it was hell. Zencart is based on oscommerce and i suppose that not many things changed.
Others from my list looks the same. I can’t see bi difference in functionality. My choice of presta, opencart, interspire is based on user opinions found on the Internet.
Which one you can you can recommend me? Maybe something totally different?
If you're worried about extensibility, write your own. It'll cost less than modifying a pre-packaged off the shelf solution. Writing it yourself isn't cheap, but it's cheaper than making heavy modifications to someone else's code. I'd suggest using Symfony as a framework, unless you have considerable experience with a different PHP framework. You're not going to get a custom solution for under $5000, period. That's a one month development window. You might be able to come close with NO bells an whistles, but it'd be very close with an extremely veteran developer.
But if you're not going to modify it, I'd recommend Magento.
If you're left there thinking, neither of these solutions solves my problem, there's a very real possibility that perhaps you should consider: the requirements are unrealistic. It's common. It's so common and taboo that I'd bet it leads to more project failures than any other consideration.
If you want a shopping cart to grow with the business, build one using a framework with no bells and whistles.
If they can make due with a cheap solution like Cube Cart (also good) with no modifications, then try that first.
Honestly, it sounds like you have an unrealistic client (based on the description) or a requirement to build a custom, simple solution. Don't try to bend a spoon with your mind to impress the client, you'll just get a headache.
Best of luck
I would recommend a Drupal 6 installation along with the Ubercart modules. You'll be able to take advantage of Drupal's powerful CMS features and manage your products just like any other pages on the site. Also, it's free!

How to document an existing small web site (web application), inside and out? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
We have a "web application" which has been developed over the past 7 months. The problem is, it was not really documented. The requirements consisted of a small bulleted list from the initial meeting 7 months ago (it's more of a "goals" statement than software requirements). It has collected a number of features which stemmed from small verbal or chat discussions.
The developer is leaving very soon. He wrote the entire thing himself and he knows all of the quirks and underlying rules to each page, but nobody else really knows much more than the user interface side of it; which of course is the easy part, as it's made to be intuitive to the user. But if someone needs to repair or add a feature to it, the entire thing is a black box. The code has some minimal comments, and of course the good thing about web applications is that the address bar points you in the right direction towards fixing a problem or upgrading a page.
But how should the developer go about documenting this web application? He is a bit lost as far as where to begin. As developers, how do you completely document your web applications for other developers, maintainers, and administrative-level users? What approach do you use, where do you start, what software do you use, do you have a template?
An idea of magnitude: it uses PHP, MySQL and jQuery. It has about 20-30 main (frontend) files, along with about 15 included files and a couple folders of some assets -- so overall it's a pretty small application. It interfaces with 7 MySQL tables, each one well-named, so I think the database end is pretty self-explanatory. There is a config.inc.php file with definitions of consts like the MySQL user details, some from/to emails, and URLs which PHP uses to insert into emails and pages (relative and absolute paths, basiecally). There is some AJAX via jQuery.
Please comment if there is any other information that would help you help me and I will be glad to edit it in.
The developer leaves on Friday. However he can dedicate most of his 24 remaining hours to this documentation task. So, yeah, things are bleak but 24 hours is quite a bit... right? :-\
I would start by listing the main features that the application currently implements (update the initial bullet points).
Then, for each bullet point, write down the main requirements associated with that bullet point.
For each requirement, write down:
Anything quirky about that particular requirement
Where in the code that requirement is implemented (which php, inc files, tables)
This will give you something of a traceability hierarchy
Feature => Requirement => Implementation
It will also provide a good framework to jostle memories and write down gotcha's.
Then, comment each php and inc page.
Start with a header that outlines the purpose and which requirement(s) from the previous list are satisfied (reverse traceability from code to requirement).
Go through each php/inc file and comment the major actions/decisions/loops indicating what they are trying to accomplish and any design considerations that are assumed (e.g. "input is assumed to have been validated in the previous step").
When commenting the source code, you may want to use a tool such as PHPDoc so that you can generate documentation out of the comments.
One approach could be to arrange a series of hand over meetings. In these the developer would have to explain the code for each section.
He could write some notes in preparation for these, but having the other developers take minutes as well might help them understand the code. Also these meetings would be an opportunity to ask questions about aspects that aren't clear.
Don't try to do the whole site in one go. Break it down into smaller chunks grouped somehow - by function or by area. This means that your other developers aren't bombarded with too much information in one go, the original developer can concentrate on one area at time and you have a chance to follow up after the meeting.
Even if nothing "sticks" straight away there will be some documentation and some familiarity with the site when you revisit it later.
Another approach could be for the developer to give a series of short presentations on the site and how it was built. This might prompt him to remember why he took the approaches he did. This is invaluable when looking at code. If you know what problem it was trying to solve it's a lot easier to understand.

User interface for an intranet system [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
The system that I am working on is an Intranet System only accessible within the company network to our staff. This is a primary system for storing data of all our customers. The system is entirely web based. There is a lot of data to be captured and held for each customer. At the moment opening up a customer record brings up all the information is input boxes, etc so that users can change them and click on the save button to update. There are about 40 to 50 pages organised with fields all over the page. There is a single top level navigation bar with a side navigation bar as well.
We have decided to work on the design and layout of the pages. The first step will be to create a Detail View and an Edit View. At the moment there is no Detail View, everything is shown within the same Edit fields.
Do you have any good ideas on improving usability on an intranet database system (web based)
It's a big question. The approach you mentioned is very much focused on the details when you might be better served figuring out the high-level design first. It sounds like you have a lot of data and might be overloading your users.
I would recommend that you do the following:
Ask your users. They live right down the hall, so this is easier for you. Ask them what kinds of things they go to the intranet for right now. (You can ask them to talk about hypothetical situations, but that's a different technique, and yields speculative data.) Ask if you can watch them use the intranet.
Aggregate their feedback and try to see patterns in it. Can you group data according to some logical classification? Is it better for you to provide a database-style search interface? What about both -- they're not mutually exclusive?
Look for examples. Look at websites that work for you: Stack Overflow? Amazon? Netflix? Whatever it is. What can you learn from how they organize and present information?
Mock up a simple prototype. And when I say 'simple' it could just be markers and sticky notes on a whiteboard. Use this low-fidelity prototype with a few users and see if they can figure it out. Don't "help", see what they make of it -- see if they can find what they're looking for.
Iterate. Do steps 1-4 over and over as you approach a design.
Good luck! This is a real challenge, but if you make a system that works well you will save your company a huge amount of wasted time; and time is money.
Well, this is really about "web user interface design" and the fact that you are on a company intranet really doesn't matter too much one way or another, except for the fact that you can assume users know certain things about your company already.
As for good interface design via a web interface, you may want to check out the other SO posts below:
Book Recommendations
User Interface Design
other search results

Categories