I am currently trying to figure out a way to create templates for a number of pages that look exactly the same. The only thing that is different is the content part.
I have worked with PHP and include() to separate several parts of my pages, but still need something that allows me to set a default layout and styling of an entire page since I will be creating thousands of pages that are identical.
Please help me with some tips! Highly appreciated.
thousands of pages that are identical.
As stated in the comments, you should definitely go with a CMS (Content Management System)
Main features of a CMS:
Allow for a large number of people to share and contribute to stored data
Control access to data based on user role (i.e., define information users or user groups can view, edit, publish, etc.);
Facilitates storage and retrieval of data;
Control data validity and compliance;
Reduces duplicate inputs;
Simplify report writing;
Improve communication among users.
Define data as almost anything: documents, movies, texts, pictures, phone numbers, articles etc.
Content Management of Pages
Reference: http://en.wikipedia.org/wiki/Content_management_system
With that said, unless you want to spend countless hours studying and learning (which is not a bad thing) but it seems that you simply want to get this sophisticated website working, then a CMS is what you really need.
Take a look at what i believe are the top CMS's out there:
Joomla
Wordpress
Dupral
In a nutshell, you just need to get your Host, http://www.godaddy.com/ (not my personal favorite) but for simplicity; godaddy will install the CMS for you with a click of a button, it will setup everything and get you up and running! After that is complete, you can login via the administrator panel and play around with the settings to see how things work.
I would start with WordPress, heres a nice site to get you going once you have everything setup (assuming you go for Wordpress CMS)
http://www.siteground.com/tutorials/wordpress/wordpress_start.htm
http://codex.wordpress.org/Site_Design_and_Layout
Have fun! Hope this helps.
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 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.
I am looking for expert advice on how to best serve multiple sites with one Drupal instance (using Pressflow 6.x). Let's consider the company needing this is called "ABC Group of Companies" and it has 3 sister concerns. So, altogether there will be four sites:
www.abcgroup.com
www.company-a.com
www.company-b.com
www.company-c.com
Here are the things that are most interesting:
The users will be shared among all
the sites
Each site will "mostly" host their own content (say the welcome text on home page, or menu items - different for each site)
Some contents, will be shown in all of the sites (say, a company-wide notice....or an employee directory)
The theme for each site will be different
Now, I am thinking of having DNS entry so each of the domain point to the same Drupal installation and when Drupal gets bootstrapped, I would like to sniff into the $_SERVER array to know which site is being hit. I'd then like to load the theme accordingly, show the contents specific to that site, and also show the contents that are shared with all the sites.
To make this happen, so far I have created a node type called "Site" and have created four contents for each of the sites. Then for each other content type (say, Page) I have put a node reference to the "Site" content type with multiple value so when creating a new content, the administrator can specify in which site that content will be showed. However, after that I am stuck.
I have tried to understand Contexts, Spaces, PURL - but haven't figured them out fully yet and I believe I could use the community power to help me out. What do you think is the best approach to handle this scenario ?
It'd be greatly helpful if anybody can suggest a direction.
Regards,
Emran
The way you are suggesting is certainly a way that you could do it, but have you considered domain access? I have used it in the past and found it to be very useful. there is also quite a large collection of modules which work with it. Different themes, Options as to which nodes should appear on which sites and shared users are all features that it has.
Hope this helps!
http://drupal.org/project/domain
First up, I strongly second hookds suggestion of using Domain Access Module for this (+1). It has extensive support/features for your scenario and already covers most of the hard parts you'd need to solve yourself otherwise.
Second, if you insist on trying to do this yourself, I can assure you that it is possible, as we have done something pretty similar recently (some special requirements ruled out domain access), but it was a lot of work, especially when functionality provided by contributed modules would not fit well into our 'unusual' scenario.
Given the multitude of special cases you'd have to cover, it is hard to point out a general direction (apart from suggesting to use Domain Access Module ;) but one major point would be to check out the custom_url_rewrite_inbound()/custom_url_rewrite_outbound() function combo. These will allow you to do pretty low level URL manipulations for incoming requests, as well as for URLs generated for output, both of which you'll need to do if you you want to serve multiple domains from the same instance.
Did I mention that you should check out Domain Access Module before you try to build this yourself?
It sounds like there will be virtually no content shared between these sites. Will you be wanting a single login across all sites?
Remember, Domain Access uses 1 shared database.
You could also just do a regular multi-site install, and share certain tables.
I give Domain Access two thumbs up, but just make sure you really need what it actually does.
Also, I would look into the Feeds.module. You can pull content from anywhere (especially another drupal site) and it imports it directly and creates nodes and fields automatically from it.
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.
I am building a social network. I need a cms that will allow users to contribute content. Each content item will need to have a google map, list of features, ratings, comments, etc.
And the content must be editable by other users with revision control.
Also, each user should have a profile with their bookmarked content items, contributed items, comments, etc.
It's very important that I can create a template for the wiki/content entries so that each item looks uniform. (and as a kick in the teeth, I would like to be able to search for wiki items using a radial search or map)
Joomla was my first choice, as I've used it for many projects, but the wiki functionality is not there.
I was also setting up a grou.ps site, but the wiki is so-so - not feature rich and it really doesn't have the option I need.
Additionally, I know someone out there will mention Drupal. I may consider it if I can see it put to use without and overabundance of custom programming (I don't mind initial coding, but drupal requires constant coding & recoding - with this site, I dont' have that time commitment)
I thought about using mediawiki with buddypress, but i'm not sure if that's the way to go.
Thoughts?
A modified version of Mediawiki sounds like it could do everything you want to do. Mahalo.com does pretty much what you are talking about, and they (used to, I don't know if they do anymore) use a heavily modified version of Mediawiki.