Custom PHP development vs CMS [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 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!

Related

Wordpress as CMS without PHP

I need your advice. I have a site and want to create a blog within it. I'd like to use WordPress as CMS, but I don't know PHP.
So, the question is: is it enough to know just JS and HTML for such purpose? Thanks in advance
Styphon's comment on your question was a pretty good summary. Adding my 2 cents worth!
You say "I have a site and want to create a blog within it" - while you can rely on WordPress for part of a website, I wouldn't recommend it - it involves making WordPress do things it wasn't intended to do and will get you closer to. Much safer to port your existing website content to pages within your WordPress installation.*
The way that the WordPress ecosystem currently looks, you could develop multiple WordPress sites and not touch a line of PHP, especially if you're willing to pay for pro editions of various plugins from time to time. The currently landscape has more than a few visual page builders, all in one themes and frameworks that sit on top of WordPress that do almost anything you want with a few clicks of the mouse.
However...the purist developer in me has to add this... If you want WordPress to work as quickly and cleanly as possible, minimising code bloat and overly complex engineering, it's worth learning a bit of PHP, at least enough to be comfortable theming WordPress from a boilerplate theme (and not an all-in-one theme).
* If you planned to do something with Angular or another JS framework, pulling data from the WordPress API, you can disregard this comment... But if you're comfortable enough with Angular, basic PHP will be easy!

What are my scripting options for a library/framework for building a web app [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 9 years ago.
Improve this question
I am investigating building a web app.
I know systems like Twitter Bootstrap provide a great starting point for front end design but what are the options for back end, preferably PHP/mySQL but I am open to anything. I have searched around a bit but I am not sure I have the right terminology because all of my searches have brought up nothing close to what I need, so I can only assume I'm looking in the wrong places.
There are plenty of scripts out there that will create a youtube clone for example; and what I need will be similar to this but it will not be video site. My app will be geared up more towards managing and creating lists, information, tags, files ( like .doc .txt etc maybe ). I haven't actually gotten the content part worked out fully yet and I don't expect the base system to be able to handle that part necessarily but what I would like for now is if I could find some library/framework that would allow me to experiment with different content configurations.
What I need from this framework specifically is some kind of system whereby people could register and thus have a login, profile page and have variuous (private) things associated with their account ... ( again I'm not sure what 'things' yet but probably lists and possibly files of some kind). I will eventually probably need some kind of capacity to share things between members. There seems to be a library/script for everything else out there so I thought there might be something for the basis of a membership system.
So
a) can someone suggest the correct terminology I would search google for this - I was trying "portal" script and membership site but I got nowhere
b) does such a thing exist and can anyone suggest anything in particular.
One more important thing. The project is in the very early stages and has no budget so I am pretty much limited to Open Source Freeware, though I welcome any paid for solutions regardless
PS I have developed with WordPress for years now and I know I could probably squeeze this out of WordPress with a few plugins and CPT work but I really feel it might be asking too much and I'll get scaling issues earlier than I need to.
You would want to determine what language you will build the system in.
PHP/MySQL frameworks include Yii, Symphony, Zend and more. Google PHP Frameworks.
if you want to go with Ruby with a rails framework then you can look into that. Rails for Zombies is a good place to start learning Ruby On Rails.
You are referring to this as a "Portal" but I would not be searching for that. I would be looking at web applications. I build a lot of these types of applications in Yii framework with PHP. If you are familiar with wordpress, then perhaps PHP would be a better option. If you do go with PHP on a Yii framework, then consider learning how to use the Gii code generator. This will help you make tables and lists and manage records. I started with this book: http://www.amazon.com/dp/1847199585?tag=gii20f-20&camp=0&creative=0&linkCode=as1&creativeASIN=1847199585&adid=0BHF2HS6FNS82M85KJQT and it showed me everything I needed to know about the framework. It also is good if you are still quite new to PHP and Object Oriented Programming.

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.

Dynamic Sites with Wordpress (PHP)

Hey I'm slightly newb when it comes to building comment boxes and avatar/profile pic systems linking with acccounts
My question is: Is there a way I can just use parts of Wordpress CMS such as the content system (because it is* separate via comments.php) into my dynamic php/sql driven website?
Are there any examples of this? I've been having a hard time finding any examples/tutorials/github stuff on this
Thanks :)
Wordpress wouldn't really be something you could pick apart like that, most of the components are tied together and I don't think it would be easy to use just the cms part and not others. The admin interface would definitely be hard to change, and since wordpress updates frequently, you would have trouble merging the updates back to your site I would think.
That said, you can find or create a custom theme and disable comments and remove all the comment functionality from your site. If not, can you describe your needs more and/or what you already have done? Maybe another CMS or system would be more suitable for you.
Or look at one of the PHP frameworks such as Zend Framework, symfony, or Codeigniter. These frameworks can ease development but have some learning curve.

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!

Categories