I have a site which contains around 3000 static and dynamic pages. I think 2900 of the pages are based on 3 different php pages which create all the 2900 pages based on database content, and it has about 100 static pages.
How difficult would it be to integrate a CMS into the website so our Marketing department can make changes to the website easily without them having to mess around with code?
That will largely depend on how your site is currently structured. Since you say about 2900 pages are dynamic, you should be able to port these in an automated fashion (again : all will depend on your actual data, this can be very easy or very hard depending on how that data is structured). Suppose for instance you were to use Drupal (just picking one of the major players here). Then you could use the Migrate module to port your existing data over to Drupal.
A nice video on how to do this is at http://dc2009.drupalcon.org/session/migration-not-just-birds (you can also find it at archive.org for easy downloading btw - DrupalCon DC 2009 - Migration: Not Just for the Birds)
That's a big question as it depends on what you want the cms to be able to do, and how much it needs to do. If time is a factor, why not use an existing third party cms and integrate your design and content into it.
They're easy to install, but again, your question is kinda vague. In the long run, a cms would probably save you time, so I'd say invest in setting one up.
That's heavily dependent of the structure of your website!
Most CMS use a template engine/system with placeholders. You need to change your existing content so it fits into the CMS system.
Or do you only want that the data is easy editable by users? Then you can try to include a WYSIWYG editor. But a page with so many sites, I think it will be more workload to put it into a CMS, but it will be more future-proof.
You will need to use a TAG based CMS.
You may add tags at the of each page (automaticaly or via the template)
and give your users to be able to edit the site page.
I think Toko Content Editor can help you with that
Editizer is a service that retrofits WordPress to existing static pages.
Related
So, I have an interesting conundrum. I need to build a small website (no more than ten pages). I expect the site to receive low or maybe eventually medium traffic; I'm not expecting thousands of visitors per day or anything like that. One of the pages will basically need to act like a database, displaying hundreds, and potentially thousands, of results. The "database" will need to be searchable and filterable. I'm trying to decide between Drupal and WordPress.
For Drupal, the views and exposed filters functionality would give me exactly what I need. But, Drupal seems like overkill for a small site with low traffic. Plus, I'm the only web person in my department, and I worry about having to maintain a Drupal site (which is more difficult than maintaining a WP site) on my own. I could probably make it happen, but I suspect it would eat a lot of time.
For WordPress, I would probably need to purchase some sort of faceted search plugin. The free plugins available don't meet the need of the site. My concern is that if the "database" reaches thousands of entries, WordPress will start performing poorly. I've heard that too much content can affect WordPress performance in a way that it doesn't with Drupal. I come from a Drupal background, so I'm not sure whether WP could handle this.
Finally, I'm assuming that each database entry would be entered as a custom post (for WP) or a piece of content on a custom content type (for Drupal) -- so technically the site would have more than ten pages, but the entries don't really need their own page, they just need to show up on the page that is acting like a database. So I'm also wondering if there is a better way to store the data and bring it in to the website another way.
Any advice?
Thanks!
If I was you I would go for Drupal because you already have Drupal background, you know how to implement what you need with Views + Exposed filters whereas things are not so clear with WP. If you reach really large size of the data you could install Search API Solr + Facets on your Drupal website. Since then you may not be bothered by your data capacity anymore.
Maintaining a simple website (and for me it sounds like a simple "site-building" website so far) is not that difficult and time consuming. Just check your modules and core are of the freshest version every now and then.
In case you need to improve your coaching - Memcached plays nice with Drupal out of the box.
P. S. I might be a little bit biased since I have solid Drupal experience including building complex projects and small, quick, "one day" websites. I don't have much experience with WP though. Choose a system you know best.
I'm creating a website which has a public-facing side, which I want selected users to be able to edit like in a CMS, but I also want to create a private intranet side which is made up of pages written in PHP by me to perform certain functions, but are not part of the CMS as such.
So basically I want:
- Some CMS-ified pages which are user-editable
- Some custom pages which use the CMS templating engine, authentication etc..
Which would be the best CMS for this?
Drupal is really good when you need this kind of flexibility. You can easily configure it to link to other pages via the menu system and TBH, it's so flexible, you'll find that anything you would want to hand code for the intranet can be done by installing and configuring existing third party modules, with the option of writing a custom module if you really have to.
We do developments like this and bring all of the intranet stuff into Drupal by putting code into a custom module and having the functions called by simple forms made in Drupal. To see data from internal DBs, tell Drupal the DB details in the config, then use the views module to make lists etc.
Not sure if it's the best, but Drupal is a very good candidate based on your description.
Your custom pages can be implemented in a module (PHP code). Specific URLs can be declared as being handled by your module and the rest of the CMS will not get in the way if you don't want to. From the point of view of your code, Drupal can be seen as a kind of framework.
I might use drupal. From what I've done with it, it seems very customizable. It's more flexible and seems more clean and secure than something like joomla. There are plenty of addon's. I haven't done enough with it to get to the point where I was interfacing my own PHP pages with it, but if I had to try anyone that's what I would go with.
I, however, personally just make my own CMS. It might be more work, but then everything is the way that I want it to be. It depends on how much you want them to be able to edit. For example, I was making a website for a shop, and so I created a place where they could add and remove items, which wasn't that difficult, especially since it was database based. To be able to do things like change menus and appearance and such might be harder...probably look towards something like a CMS.
I'm taking on a relatively small freelance project and my client would like to update several portions of their site; photo gallery, calendar list, about page, and some event links.
My gut tells me to use something like WordPress and use "Pages" for these sections, but I'm worried about my client maintaining the formatting. Especially something like calendar dates and links.
They won't be doing any blogging - this is just so they can update those sections when needed (obviously).
But then I thought, what if I just roll my own CRUD for these portions, but I'm not sure if that would be necessary for a project like this.
So what would people out there use in a situation like this? How much control does one have over the formatting of content in WordPress? I'd like not to have to teach my client on when to call certain CSS classes.
Any help is more than appreciated.
EDIT:
Any idea how the top carousel of BungoBox was made in WordPress? Or don't you think it's possible and that is done manually?
I would stick to wordpress or similar CMS system. It will be a pain-in-the-arse, to take care of formatting (WYSIWYG for client), take care of security, make the administation pages nice and functional, and so on.
You will find a LOT of information on wordpress as a cms on the web, for example see here
Have you considered any other cms system?
From the description this is a site that would consist of just a few pages that the client would want to update? if so, I'd stick with wordpress myself. There's a ton of pre-written modules and themes already out there, and there's no sense "re-inventing the wheel". Also I've found in my travels that Wordpress leads the pack in being able to manipulate content to your will of all the CMS's and the available WYSIWIG plugins they have. Remember, if they cant' get their document to look just right, guess whose getting the call, and who will be expected to fix it on your dime if you didn't specify that in your contract (you are offering maintenance as an additional feature right?)
Now if the client is looking for a more robust system, a larger site then I interpreted in your writeup, then I'd look into more of a CMS system such as Drupal or Joomla. Avoid the trap that seems to nail PHP coders that it'd be faster to do it yourself; it'd have to be a lot of custom functioanlity to start looking at building it yourself from the ground up (and even then, there's enough frameworks to help)
What about something like Drupal? Never used it personally, but I think it's built for this sort of thing, whereas WordPress is kind of tailored towards blogs.
Definatly go with wordpress, drupal is just too heavy for the job and will take you much longer to configure.
If you are worried about your client ruining design with a WYSIWYG editor, just don't give them access.. keep them on a need to know basis for their own good.
Working with wordpress will free you from maintaining security issues and many other unpredictable-at-this-point cases of reinventing the wheel.
If you were to integrate some open source CMS into your already existing website... which CMS would you choose and how would you go about achieving it?
The BEST CMSs that will work very well and may fit your needs are :
Instante Update - the best one in my opinion
PulseCMS
SiteCake
These three CMSs can be integrated into any existing Website & they are easy to use. I think they fit your needs.
you should ask the question in different order "How to migrate already existing content to open source CMS" and your action list would be
map existing data and url schema (so you could make redirects from old content to new locations if locations change) to get the hang of the amount of pages/structure that need conversion
choose your next weapon (wordpress, joomla, modx and so on dependent of your needs and amount of data) and make a clean installation of latest version
convert old site information to data import format of your chosen weapon
if your information is in start planning design, editorial and other regular tasks that each site needs
the idea here is to make the conversion first with raw data to get the clean site structure and content you really need and not mess with design and editorial tasks first as those are secondary and can be addressed separately over and over
i would go with wordpress... just download in from wordpress.org and install it into ur site, via FTP or File Manager, but you need to know how to use wordpress, everything would be very basic in PHP, they usually slice the website into three parts. Header, Body, and Footer, try to mess with it, and you could integrate it... but i think CMS is much preferrable if ur trying to create a blog-style website
You should also consider the popularity of the Open Source platform you choose. The more popular it is, the less likely it will disappear all of a sudden - and it will be a lot easier to get community support (and 3rd party modules).
For me there would be 3 choices if it has to be a PHP based CMS : Wordpress, Joomla or Drupal. I tend to prefer the latter, because it's very flexible (though it also has some quirks, especially if you're creating multilangual sites).
As for how to go about it : that largely depends on what you already have. Is it a static site or dynamic site? Have you got some scripts that wouldn't be easy to alter? Your first priority should be to list specific functionalities of your site and see if any of the CMSes you consider supports these out-of-the-box (or using 3rd party modules).
Porting data to Drupal can be very easy (using the Migrate module - Migration: not just for the birds).
Oh, and one more thing : also keep things you plan for the future in mind. If you consider building a full blown website, don't stick with something that will help you out now, but hold you back in the future.
I'm building a new website which has one core application and many content pages. Content pages are mostly dynamic and I require a way to manage this dynamic content on a regular basis. The core application's main functionality is a 3 step process or reading user data (input page), reading data from MySQL (product page) and submitting an application to an email address (application page).
Ideally I would like to build the core application in regular PHP and leverage Drupal for its content management capabilities. Can Drupal and regular PHP be integrated as I suggest easily? My feeling is that coding the core application as a Drupal module(s) will add layers of complexity that could be difficult to code from the outset and maintain later on as the system matures - so I would really like to just use regular PHP.
Let me explain where dynamic content (managed by the CMS) intersects with the core application:
Dynamic content such as FAQ data is used both on the 'normal' help pages and also within a mini-feed displayed within core application pages down a right hand side column. In this column, 3 random questions are pulled from the database and displayed as a feed. When users click on FAQ question they are not taken away from the core application product page but are instead shown data in a pop-up window displaying the question and answer. In addition, users can browse other questions and answers through a simple navigation menu within this popup. There are 3 such like feeds as I describe above that I require on the core application product page.
So, what is the ideal solution here in terms of 'keeping things simple' for both the management of dynamic content and the ease of coding the core application? Can 'regular PHP' and Drupal co-exist 'peacefully'? If so, how is this technically possible? Because there is some content managed by Drupal contained within core application pages, can the core application still be coded in regular PHP?
Any advice / suggestions?
Thank you!
Jim.
This is part of a post I submitted few years ago. Unfortunately the linked article is long gone, but it might still be relevant for your needs:
Importing old-style standalone PHP scripts into Drupal system
Drupal system is a very strong CMS, but taking an existing PHP site and trying to force it on Drupal might be a hard thing to do.
The "right" way to convert a site into Drupal is to "Drupalize" it, which means to do everything "the Drupal way", which is really the right thing to do - but is some cases not everybody agrees about that.
I had an example with a company that has many HTML/PHP based sites. They heard about the flexibility and strength of Drupal, and decided it is their choice for the revolution. But, on the other hand, they want not to change anything, and that I will do it as fast as possible.
The "right way" to do it was to break each PHP script they have to its pieces, find the commons, create the right methodology with existing Drupal modules, and finish the gaps with my own additional module.
But this is not what they asked me to do - instead, I looked for a way to just import the existing PHP script into Drupal environment.
Searching for am existing solution brought me to a proof-of-concept described by Dan Morrison. In the bottom line it uses PHP output buffering commands it order to collect everything the old script does, and then to display it as part of a Drupal module. In my case I had to make some small modifications (mainly to pass variables from the request to the PHP in the relevant scope), but in the bottom line it did exactly what I needed.
Well, almost... In other cases, in which I wanted to enjoy from Drupal's Form API, I handled it differently, as I will describe later on.
It sounds like you are asking about two things:
Including Drupal content in a custom-built PHP application.
Displaying Drupal content in a pop-up window from the PHP application.
There are a number of different levels of integration- if your need is as simple as pulling content into a page then you may be able to simply create a view (http://drupal.org/project/views) with that content from Drupal that you can make available to and then include it in your web app.
If you are looking for a tighter integration between the 2 including sharing of users, sessions, etc... then it is likely also "possible" but would take additional information to understand what you need.