I know the question sounds a little weird, but, please, read along. I have a store based on wordpress, woocommerce and wpml - currently in two languages but with plans to add another 3. The theme is quite huge with a lot of custom integration like Infusionsoft, Xero and more. About 50 plugins, 1100 product and 1700 posts. The number of posts and products will most likely double in the near future once we add another 3 languages. The overall setup is already kind of slow although we have enough server resources: 12 cores and 31 GB of ram. On top of this, I'm looking to integrate some sort of multi store and multi domain functionality. The multi store functionality will also require to be multilingual (wpml). There are two solutions to create the multi store functionality and none of them seems to be ideal and easily replicable without hacking more into woocommerce and wordpress.
1. Another install of wp, woocommerce, wpml and then using the woocommerce API to transfer the orders, stock, etc. back to the main site.
2. Wordpress multisite - from what i read is quite buggy with woocommerce and wpml.
As a developer myself, I feel this is a overkill for the wp, woocommerce and wpml. Especially if we take into consideration that Opencart or Prestashop comes with this functionality by default - without any kind of complications. But maybe, just maybe I am missing something really clever. Did anyone faced a similar setup ? What are your thoughts about developing such a complex setup in Wordpress and Woocommerce? Do you guys think it's imminent to move to another solution like Opencart, Prestashop or Magento ?
I would really appreciate your feedback about this!
Cheers
What i would do here is investigate why the website is slow first before adding hardware to the issue. Wordpress is a great base to start with but the same as all db driven websites needs optimization as the website grows.
There are many techniques for the below so ill just point to ideas and you can re-search them yourself and decide whether they suit your website.
Test here:
http://www.webpagetest.org/
To test your server code:
Use something like microtime to measure processes especially wp queries. http://php.net/manual/en/function.microtime.php
Where possible use caching (server caching) - possibly use varnish to cache product pages and serve static pages in place of dynamically created pages.
For expensive queries like post-archives use wp-transients or your own object caching.
To test browser code:
This is probably where you will see the greatest timesavings if you have 50 plugins. Unfortunately dev's love to hook js files, css files to the footer/header. This can be a significant load time. Investigate what you can remove from your templates (un-used js scripts, css files, etc) and de-queue them. For more savings see if you can isolate the css / js actually needed for the page out of the files present - combine into 1 file of each. Most of the time you will need the header/ sidebar css and some text styles but you are loading an entire themes stylesheet.
Pretty essential:
investigate your browser caching strategy.
https://developers.google.com/speed/docs/insights/LeverageBrowserCaching
Fun project:
Did you know you can load images/js/css to the cache using js? Pre-loading!
Maybe look at post-archives that require a lot of images and see if you can preload the "above the fold" content - your user will get a pretty quick browser load time and by the time they navigate below the fold the next batch of images should be cached (if you are combining with lazy load techniques)
This might save you the need to use extra servers but if you have to look at sharding rather than using a api to transfer data using php (i presume woo commerce api uses?)
I'm looking for tools or libraries that load simple but old existing websites and produce an output which can be loaded into wordpress or other CMS. The goal is to keep the existing websites navigating structure and content.
Any hints?
What I've discovered is that it really depends upon the CMS. I would recommend a "tag-pair"-based CMS like the new Craft or ExpressionEngine's free Core version (there're others too) where you drop in a looping control area, replace the fields with the tags and then it just runs. I personally like those because they offer a cleaner separation between content and design.
I'm trying to learn Wordpress now and it's backwards of what you want - you create template environments and half the design seems to be controlled by the code. Great if you want to swap generic templates around, but if you customize them you're doing a lot of work. I'm looking at a site I inherited and conditional statements are a nightmare - half in the templates and other in the plugins themselves (Events, I'm looking at you).
I am a web Designer that recently decided to expand into developer waters as well :). What I have in mind is to build an elaborate portfolio site that will also contain a blog. The sites sections will be standard for such a project - something like Home, About, Portfolio, Contact and Blog.
The Home page will contain some static parts but also feeds from the latest additions to the portfolio and the blog.
The Portfolio page will have sections on the different types of portfolio pieces (like logo, print, web etc).
The About will be completely static.
The Contact page will be static and will have a contact form.
The Blog page will basically have your standard WordPress blog structure.
At first I was thinking of doing the whole thing in WordPress (since I already have some experience with it) but what got me thinking about different options was the portfolio part. I want the portfolio page to be quite differently stylized than the blog page and yet I want to have the possibility of doing quick and easy additions to it trough an admin panel.
So please give me suggestions and direction about what would be best for me to do? Is this thing possible with WordPress? Should I instead code the whole project with CodeIgniter (or a similar framework)?
I am quite good with HTML & CSS. Comfortable with jQuery. Trying to get better with PHP :).
I am willing to learn and improve and wouldn't mind trying a CMS or a Framework that Ive not had experience with before.
Thank you.
Wordpress is more than sufficient. You might want to find some plugins that allow you to add special content like videos, scripts and other things to portfolio pages. Also knowing html, css well is important if you want to build or modify a theme a lot to your liking. It is also very helpful to know some php if not be very experienced with it. MySql is helpful as well but not as need to know.
This Wordpress PHP function sheet is very helpful at times.
The Wordpress Codex page is also very good. Not an end all be all, you'll still need to know how to do things on your own, but it defiantly will get the ball rolling if want want any custom functions, or want to modify functions.
If you know wordpress a little bit, I hope you will able to make your desired project. Using wp you can do several types of project.
Read some wp books or tutorial and learn wp functions.
Essential wp functions sheet https://codex.wordpress.org/Function_Reference
I hope it will help you.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 12 years ago.
Improve this question
I am planning to build a training site which will accommodate multiple users. It will also have lots of custom pages with videos in them. Which CMS/CMF is better suited for this project? Please advise..
Wordpress is designed from the ground up to be a blog, but also to be modular. Drupal is designed to be a complete CMS out of the box, but there are also extensions for Drupal too. Both are CMS systems, but again, Wordpress is really designed to be a blogging platform. Also, Drupal is a little more complicated at first and has a higher learning curve.
However, you can do what you are trying to do with either one. In addition to out of the box functionality, you can customize both Drupal or Wordpress. People tend to specialize in one or the other, and the choice comes down to personal preference (people make a living off of being Drupal or Wordpress developers, that's what's great about open source!). Once you become proficient in PHP and the CMS platform of choice, you can build your own extensions/modules and have a very custom website, but I would minimize customization to only what you absolutely need. If you are creative in using the framework and freely available modules, you may not need to write any code.
Lastly, Drupal is getting a complete re-write with version 7, which people have been waiting a long time for! If you want to get into Drupal, you may want to look into the newest version.
Edit: Personally, I prefer Wordpress, I think the admin section looks great, gives you a lot of control, but without being overwhelming (however, my opinion doesn't really matter). I really think Wordpress has a lower learning curve. I'm also pretty sure, although you haven't given many details, but if you are planning on having simple pages with videos on them, and want access to those pages to be restricted only to authenticated users, I'm pretty sure you can do that without any custom PHP coding, just some HTML.
Here's a couple helpful links for Wordpress:
Restrict Page View to Authenticated Users
Setting your Posts or Entire Blog to Private
It can be confusing trying to decide which CMS to dive into; I hope that helps a little!
The answer is Drupal.
I've been running various websites, and few years ago I decided to use Drupal as my main CMS engine and I never looked back.
I used Joomla, phpNuke, Mambo and WordPress before and nothing is as flexible, as maintainable as Drupal.
My biggest website – www.mugen.pl has 14853 registered users so I can confirm Drupal is just perfect for big, heavily used web portals.
Drupal has few wonderful 'social-networking' modules I make an excellent use of to make sure my users are keen to stay on the website, sneak preview: (sorry, I've got only screenshots in Polish):
(source: mugen.pl)
Unfortunately for Drupal, sometimes it takes a while to understand this system. Some theming stuff is not that obvious at first, but the online community is huge and always helpful.
Additionally, Drupal has excellent support for SEO. It’s built-in “path” module allows to set custom URLs for every item on the page, and other available modules (i.e. Nodewords) allow to set custom meta data for every subpage.
When you decided to go with Drupal, you should have a look at the following modules:
Content Construction Kit - http://drupal.org/project/cck
Views - http://drupal.org/project/views
Custom breadcrumbs - http://drupal.org/project/custom_breadcrumbs
Last Node - http://drupal.org/project/last_node
Nodewords - http://drupal.org/project/nodewords
Fivestar - http://drupal.org/project/fivestar
Go with Drupal ;-)
With the new release of WordPress 3.0, I would have to say WP. Many useful updates just came around the bend (menu system et al) that make it even easier to create a "site" out of a WP installation instead of just a "blog".
Drupal is extremely powerful and accommodating to the time-allowed developer, but falls short on the ease-of-use-side of things (at least from my experiences.
In short, if you're looking to make a site that's easy to install, update, and maintain - especially for posting media, go with WordPress.
Hope that helps.
Read both JohnB's and Lance May's answers. The choice is quite tricky so the only way you can make a good decision is to do your own feature comparison/score matrix.
List all the features that you need and assign importance score to them - then objectively go through both systems (or ask again on so) to get their scores.
This will also help you if you have to justify your decision later.
In the end both are good, both have quirks and both will get the job done.
WordPress is just easy to understand, for both the developer and the content editors.
WordPress is best suited for sites with:
1) Typical CMS needs - Pages, Posts, Menus - I would also include embedded videos in this list
2) Low to Moderate Traffic Loads - I know there are sites like Smashing Magazine that user WordPress under high-load, but I am sure there is some custom code added to introduce a better caching architecture and multiple servers
3) Hand off to Client for Content Editing - In my opinion, the best feature of WP is the admin user interface. The sleek visual design, smart use of ajax controls, and the simple layout makes it possible to hand off content editing to "non-technical" people
When I start a WP site, I create a new theme with two files, index.php and styles.css. Then I build my own, custom theme, that is uniquely designed for my project. Examples of my work are http://perqworks.com, http://janemonheitonline.com and http://generalordersno9.com. As you can see, these are not blogs, but CMS sites. I agree, WP was a blog platform, but it has proven itself as a CMS-lite application.
I prefer WordPress because of its extensibility and easy install and modifications.
Version 2.0 has introduced a bunch of features (like custom post types) that makes using it as a CMS easy.
Wordpress is mostly use for blogging and Drupal is used for creating websites. YOu should consider using drupal for that ;)
You may be lured to WP immediately from how quick it is to get started. But in the long term, do yourself a favor and use Drupal. It's a proven CMS framework and less prone to security issues from contributed modules. I can count on two hands how many times a WP plugin has bit me in the ass, even highly rated ones. It has very granular security also, so you know exactly what your users can and cannot do.
I've used both and Drupal is just easier to extend and configure. I don't get why people think it has a huge learning curve.
I also think a big deal breaker is the end user experience - WordPress makes it just so damn easy to manage your website, all whilst looking (in my opinion) rather beautiful at the same time.
Every client I've handed a WP site to has been impressed with it's simplicity - as the iPad put it;
You already know how to use it!
I prefer Drupal over Wordpress . Drupal is made for flexibility . But you must know how to do it , ie all . You may need some time to read how to do with that module x and how to with module Y . But once you have learned you will be comfortable to do any site.
The main advantage of Drupal is CCK and Views . Wordpress 3 have come with CCK , but Drupal has it from version 5. Now we are moving to 7, and it still misses Views :) . Yes ofcourse wordpress is a wonderful tool for blogging with ease. But when talking other than blog, you may want to opt for Drupal . Once you have learned how to do with drupal , you will never say wordpress .
If some one is against Drupal then he may have not used or learned it to the extent :) . So my suggestion for you to checkout Drupal 6 for now , as Drupal 7 is still in alpha for the present time.
A client asked me to redesign her web site, built several years ago in WP by another developer. Although I've never worked with WP before, I'm pretty comfortable with html, css, and php, and I more or less understand how WP stores content and dynamically builds pages. But I'm wondering how to approach these challenges:
My client's site has about 75 pages. There are about 25 that are static (i.e. the content changes infrequently if at all; things like "about us" and "faqs") and there are about 50 pages that are more "blog-like", except that instead of posts, the content contains directory-type info (e.g. 12 DJs in the area) or event-related info (e.g. upcoming shows at local theaters). Both of these categories contain many sub (and sometimes sub-sub) categories (e.g. medical services > pediatric > kid allergy specialists) and the content updates fairly frequently.
I understand the difference in WP between "pages" and "posts". But I need to find out the best way to structure the static content. Should I just set up a parent/child hierarchy of pages, changing the permalinks to something that makes sense? Or is it better / easier to just build the static pages outside WP and somehow link to them from the common navigation?
As a web designer, I want to "wow" my client with a great design. While there are loads of wonderful WP themes available, I really need to create something unique. But I'm wary of breaking something, so what's the best way to take an existing theme and just tweak it enough to make it look a little different?
Finally, other than mounting a massive "copy and paste" effort when the new site is built, is there a way to transfer content from the original site to the new one?
By reading your question, it seems to me that choosing WP for this kind of website was a bad choice.
Redesigning it, though, won't be that hard if it's using page templates for pages.
And yes, there's a import/export tool in WP to tranfer content. (see administration panel)
I, really, advise you to read this great tutorial about creating WP themes.
I've a blog-like WP site myself (contains RPG development articles). Here's what I did. Nested static pages simply have parent-child hierarchy: /about/mingos - that's easy to understand and i value this kind of content organisation (personal opinion).
As for themes, there's a no-brainer tool that, while not exactly apt for real business, has the capability of letting you see how stuff will look in seconds, and can sometimes give you great ideas. It's called Artisteer and there's a demo on its site that you can have a look at. Try your design ideas with it, see how stuff will look like. I'm sure you can come up with some great ideas for a "wow" design :).
Exporting content, as Soufiane Hassou remarked, is possible from within the admin panel.
Don't rule out using categories to create your hierarchy. That way you'd get the benefit of cross categorization of DJs and venues by location to create a robust cross reference system. Pages don't get this benefit without extra work.
To make this in to a directory, though, is gonna either be heavy work on managing the pages or heavy work on creating a solution that will cross reference everything and bring the content together in a usable way on the front end.