Kohana front end , Wordpress back end - php

I love Kohana code, I don't love Wordpress code. I need to upgrade a blog to have a custom theme, very custom with Grid style blog roll (like Pinterest) and Traditional Blog Roll, and fully responsive for all devices.
I was thinking of keeping the Back end on Wordpress as it currently is (maybe on a different subdomain), and then writing a custom Kohana front end, which queries the WP database and makes up the pages. All blogging happens on WP, all pages that readers see are run as a Kohana site. No user sign up required, there is only one user (the blogger)
Am I crazy? Has anyone tried this? Is there anything to watch out for?
(Yes, what I need to do probably could be done by an experienced WP developer, but I'm not him, and I'm gonna have to maintain this for years to come).

Kohana is a front-end framework, WordPress is a blogging platform, they don’t play well together. You could write a website with Kohana than uses WordPress functions to query the WordPress database, but that’s just stupid and will lead to overhead, spaghetti code, and a pain in the ass at a later date when you realise what a stupid set-up it is.
WordPress’s front-end is perfectly capable at doing what you want to do. I don’t see why you would want to use an entirely different framework—it’s not going to give you an benefits.

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!

Converting PHP site to Joomla

I have a large complex web site currently implemented using PHP and MySQL.
Some of the pages (about, contact us, etc) are largely static, but need to be updated from time to time. I'd like these updates to be able to be done by non technical admins, so I'm migrating the site to Joomla CMS. I've created a Joomla template to reproduce the banners, styling etc of my existing web site and have successfully reproduced the static pages by cutting and pasting into Joomla articles.
I'm now trying to embed my existing dyanamic php pages into the Joomla framework. I assume that I need to convert them into one or more Joomla components? I realize that I'll need to strip out the php code that currently generates banners, menus, etc, but I don't want to make major changes to these php pages, i.e. I don't want to re-implement them to follow an MVC pattern. I'm looking for a simple Joomla 3.2 hello world component tutorial. The tutorials that I've found are either too complex (i.e. MVC) or they're "too simple". By too simple I mean the component is not listed when I select Menu Item Type within the Menu Manager. Can anyone point me to any documentation that explains the minimal config that I need to include in a custom Joomla 3.2 component in order for the component to be listed when selecting Menu Item Type?
Also, should I create one big custom component to wrap my existing PHP application containing multiple pages("views"?)? Conceptually there the system could be considered as about 3 sub-systems, but there is some overlap between the MySQL tables used in these different sub-systems.
I don't need the implementation to be portable, i.e. I'm not trying to create a reusable component that others could use, I just need it to work on my site, using the least amount of work possible.
Thanks, Wayne.
I hope to clarify a bit and give you way out.
In response to your comment on #user3057084, the power of Joomla and its flexibility comes from it being MVC! If you want to wrap your existing code with little modifications, Wordpress will let you do all kind of nasty things! Nasty in the sense of mixing logic with data, i.e. copying and pasting your code and getting it to work quickly.
Joomla coding standards require that you separate models from views. And that you understand how the Joomla MVC implementation works. It will take longer, but you'll learn a useful skill that can and should be applied if you want to write portable maintainable code following Design Patterns.
Now about the way out.
Nothing keeps you from putting your raw php code in a Joomla view, including the database access. It's really ugly and I feel bad even suggesting this, but if it can be a small step towards using a great framework, then the end justifies the means.
The absolute easiest way for you in Joomla would be to create a template override (which you'll do from the admin with a few clicks in the template manager), then throw your code in, and it will run. Then, a little bit at a time, you might learn to separate the parsing of the input in the controller, store / retrieve the data in a model, and leave just the markup in the view.
But are you absolutely sure you need to code for this? There are thousands of (free) extensions out there that might do the job for you with no coding and little configuration, leaving you just a data migration to handle.
Have you had a look at Wordpress yet? In my experience, non-technical people find it easier to administer a wordpress website in comparison to a Joomla website.
When it comes to the menu structures,themes and contact forms and blogs - Wordpress takes the cake.
It would be worth your while to check it out? It might save you hours of frustration?

Integrating my php application to a wordpress site pros/cons

I'm developing a car buying and selling website in php, currently what i'm planning is all the pages and the blog will be done using wordpress and other functionalities i'll develop as independent application and will connect it with wordpress using the function.php file. Only user management and posting for page and blog will be done by wordpress.
Including the database table will be custom. Is this a good idea? Will i get into any bottleneck?
Admin will only be uposting to news. Users will post their cars for sale after login. They can search and rate also...
To answer your question, let's look at the most common options:
Build from Scratch
Build using Framework such as Zend, Cake, etc...
Build using Content Manager such as Joomla, Drupal, etc..
Build using WordPress
Build from Scratch
This is the most time consuming. The benefits include complete control over the database and code - perhaps giving improvements in speed and resource management. The cons are the time to develop with additional time needed for testing and debugging (since all of the code is untested).
Build using Framework
A framework gives you the pieces that you need to build the site. It includes many of the benefits from the build from scratch option without the concern of 100% untested code. The only downside is having to take time to learn the framework and its gotchas (they all have little things that will bite during the learning curve).
Build using Content Manager
WordPress is not a true CMS like Drupal or Joomla. A CMS gives the ability for users to edit pages (with permission) while allowing customization via plug-in or code change. Like WP a CMS may have plug-in functionality to do everything you need. However, if there is a problem then you may find yourself debugging someones plug-in code.
Build using WordPress
WP is a blogging platform. It is now being used in a more CMS like fashion with the aide of plug-ins and developer know-how. If you have a news site, blog, media site, etc... then WP is excellent. If you are creating a site for buying and selling then there are plug-ins to do that. However, you still have the same problems of the CMS in that if there is a bug you may have to figure out plug-in code to fix.
Conclusion:
The idea of using anything other than write from scratch is to speed up development time and make the end result more solid in terms of pre-tested code. WP is a great platform and could serve you well but if the only thing being posted is news then a simple PHP blog class may do the trick.
If you are going to spend allot of time customizing WP (especially the database) then I would recommend using a Framework like Cake or Zend and writing most of it yourself. If you are writing a site to display media then WP is a no brainer.
What do you mean by "connect it with wordpress using the function.php file"?
I've delevoped http://storelocator.no on top of WP.
I've created WP templates which have custom code and retrieves data from it's own tables. This way I can create pages in WP and select which template to use. Good for page navigation.
As for pages that is completely separeted from WP, but you still want to use WP functions, just include the following at the top of the PHP file:
require_once($_SERVER['DOCUMENT_ROOT'].'/wp-blog-header.php');
You can use WP function to validate data instead of creating your own validation code (you can save time here). See available functions here: http://codex.wordpress.org/Function_Reference/get_template_directory_uri

Wordpress limits - system design consideration

I am designing a system for a customer. We are thinking about using Wordpress as a main platform (instead of writing our custom software), and customize it using addons or hiring developers to write some custom modules.
We need to have an ability to have some static pages, few php pages, and lot of user generated content.
What limits do Wordpress have? I have searched website, but did not found any info about for example max number of users. I am interested in experience-based opinions.
So, how Wordpress performs on multi-user websites? Or - do you think it is better to leave Wordpress, and swithch to some other open-source CMS?
Edit
The core functionality about the system will be to allow user to put text content and photos on categorized pages. Some users need an ability to have classic blog on the site, while others will only occasionally publish some content. Some data will be polled by RSS from users’ blogs on the other platform (with a respect to copyrights and legal stuff).
So as far as now I have identified a lot of blog-like functionality.
I have had some pretty good success using Drupal. If you aren't trying to build a blog there are much better things out there for dynamic CMS. Wordpress is a great piece of blogging software. Try to make it do something else? It becomes a big pain to do. Having developed "applications" in both. If a blog is not the primary component (which a news site would also follow suit) then use a true CMS and not a blogging platform.
WordPress places no maximum on users, posts, etc. beyond that of the underlying technologies (your database, mainly). WordPress.com runs on the WordPress MultiUser platform and it has six million blogs, a billion monthly pageviews, and 200k new posts a day.
Your limitations will be more structural - WordPress is designed first and foremost as a blogging platform. If its interface and methodology fit your project well, go for it, but if you're going to be hacking the shit out of it, a more generalist system like Drupal may suit you better.
If it's a blogging platform you are designing, then WordPress should fit you needs. You can also look into Movable Type (Perl).
If you are looking for a Content Management System (CMS), then you should look at Drupal and/or Joomla. Movable Type is actually starting to integrate with Drupal.
Wordpress has some performance issue, about a dozen pages/sec in default setup. But using plug-ins like SuperCache, it can get it to scale pretty well fairly easily. You can do anything you want with a custom "theme". But WordPress isn't going to manage the content in the "theme" for you, just display it.
If your doing a lot of User stuff then it's probably worth starting with BuddyPress instead of WordPress, you can still use a lot of WordPress plugins but it's better to start with a framework which is built to deal with a lot more users.
If you are interested in WordPress for a multi-user environment, perhaps you should look at WordPress MU, which is the software that runs WordPress.com. I'm not sure how the plugins work with WordPress MU as I've never looked at it in-depth.
If you need more of a social aspect, then you can refer to Tom's answer of using BuddyPress, which adds functionality on top of WordPress MU.
Depending on the type of User Generated content WP might work. You could use the Contributor Role to allow users to create content that site admins could then moderate before making it live.
Drupal seems to have more tools for Community type sites, but I have very little experience with it.

Developing an Application using Wordpress as a base?

Lately I've been thinking a lot about building a website/blog/community oriented site. However I can't decide if it's a good idea to build it using Wordpress as a base.
I've been reading around the Internet, and I've seen that many users have trouble with Wordpress using lot of CPU and other resource related problems.
So, what do you think? Is it wise to actually build an application based on Wordpress? Or it would probably lead to undesired results?
Any opinions would help.
WordPress is quite flexible once you get the hang of its WordPress Loop, Page Templates and how to create a customised homepage. Using some plugins, such as the Page Redirect To and Custom Taxonomy, you can have a pseudo-CMS. There are also widgets and plugins that let WordPress mimics CMS-like behaviour, such as listing all sub-pages within a pages, customize how categories are shown and etc.
If you can handle the WordPress loop and use Page Templates, WordPress is okay to build on-top of. However, its database schema is quite confusing. Depending on your goals, you may want to use CodeIgniter or something else.
If you to get really farther than a blogging software, maybe you can have a look at more generic CMSes.
I kinda like Drupal (which has a lot of plugins that can help you do almost whatever you want on your site) ; as a reference point, it is used by many quite big sites, so, if correctly configured, can hold a bit of load.
Just a remark : you might need at least a couple of day to learn how to use it well, because it is quite rich, has lots of features, and you will probably want to have a look at many modules, to get the ones you need/like. (But that would be true for any CMS, I guess)
I recommend using WordPress MU with the BuddyPress plugin for building a community site. BuddyPress is actively maintained, and the set of features are comparable to the basics of Facebook (wall, groups, pages, etc.). Not to mention all of the plugins. Also, with a little extra effort, you can have bbPress (WP forum software) in your community app too. I am working on a big project using each of these products right now, and it has been much less of a nightmare than the times I've done something similar in the past, using other community apps or forum software.
Well that's basically what Wordpress is for :P I've never heard of any issues with Wordpress using lot of CPU and other resource related problems. It seems perfect for what you want to do. Are you familiar with PHP?
Any moderately-sized site should have a cache in front of WordPress. WP Super Cache is one of the more popular ones. Basically, WordPress should be generating pages only when needed. In all other cases, the page should be served from cache.
Wordpress is open, so you can use it if you want.
But I think building a plugin and hook to Wordpress's main feature is a better ideal.
And btw, What is the meaning of "application" you are developing.

Categories