I'm inheriting a php project of a complete website. It's currently static; the owner just wants a blog on the front page to keep things fresh. Is there a mature PHP blog software out there that I can make a few calls to and have a blog up and running on their front page, without having to convert their entire existing site to a blog or CMS software?
That's one of the use cases for Serendipity. It has a configuration option specifically for that. So unlike Wordpress you don't need to hack it. It's not as featureful and a somewhat bloated package, but has a far better security track record.
http://www.s9y.org/123.html <- embedding howto
Related
My questions about Wordpress
From what I can gather, Wordpress is fast becoming the norm for building content managed websites. Up until now, I have used my own CMS systems to allow my clients to manage their sites content etc. However, I was recently asked to build a Wordpress driven website, and as the client insisted on using Wordpress, I subsequently lost the contract...
Resultantly, I am very keen to learn how to build and program a Wordpress site from scratch. I am not interested in templates provided when you install Wordpress on your server, I am only interested in building a fully bespoke website, with the ability to update the content using the Wordpress management engine.
I therefore have the following questions with regards to how Wordpress works (I am completely new to this).
Can I build a completely bespoke designed website and have Wordpress manage the content?
Are there any limitations to using Wordpress to manage the content?
Can I specify which content is editable?
Are there any 'from the ground up' tutorials on starting to build bespoke Wordpress driven websites?
Where can I find the documentation for the Wordpress API (if there is one)?
Do I install Wordpress in the same way that I would if I was using the built in template engine? In other words, do I still install Wordpress as a package in Plesk for the particular domain?
Does the code have to be in a specific format, or structure?
I effectively would like to find (or be pointed to) an article that clearly explains how Wordpress works and how advanced web developers can make the most of it.
I appreciate that this question is not really related to programming, if it needs to be moved then please advise as to where I can re-post it.
My Research
I appreciate that the answers to these questions will be located somewhere on the web, but thus far, I have been unable to find any really helpful tutorials on this specific topic.
I have read through pages such as the following, and whilst they were helpful, they do not really explain 'in brief' what Wordpress is and how it can be manipulated:
Where to start
Features and Functions
I below is my answer.
Can I build a completely bespoke designed website and have Wordpress manage the content?
Yes you can. Here you can find some sites that are built on wordpress. You can get an idea of what kind of stuff can be done.
http://designwoop.com/2011/12/best-wordpress-themes-of-the-year-2011/
http://www.tripwiremagazine.com/2012/07/wordpress-websites-examples.html
Are there any limitations to using Wordpress to manage the content?
According to my experience building wordpress websites, plugins and widgets, I would say you will rarely come across where you want to do something and you can't. If you know well enough php and understand OOP you can basically build whatever you want. In fact there are so many plugins that most of the time you could even get away with not writing anything (in your case this is irrelevant as you want to learn).
Can I specify which content is editable?
Yes. Other wise there is no point of using any CMS. I am sure this would be the most basic feature of any CMS out there.
Are there any 'from the ground up' tutorials on starting to build bespoke Wordpress driven websites?
Here are few tutorials you can start with.
nettuts
css-tricks
wptuts
And of course the best way to learn is the starter theme that comes as default with wordpress installation. You can find more themes here.
Where can I find the documentation for the Wordpress API (if there
is one)?
The wordpress documentation is quite detailed covers most of the things. While learning or even further this will be your best resource. I usually tend to read the code itself if I want to know how the function works and other details which of course documentation won't cover.
Do I install Wordpress in the same way that I would if I was using
the built in template engine? In other words, do I still install
Wordpress as a package in Plesk for the particular domain?
Installing wordpress is as simple as copying it to your server and accessing it via the browser. You will get on screen step by step instruction. It could not be easier than that. And if somehow you got stuck, there are hundreds of tutorial online or you can visit the wordpress codex site.
Does the code have to be in a specific format, or structure?
Of course you would be following the wordpress coding style (not necessary for but recommended for sake of being consistent). Depending on your skill level you will fairly pick up the standards.
If you are building plugins or widgets, which I assume if you want to build sophisticated websites, you must follow the coding standards.
By the sounds of it, you need to learn about writing a theme from scratch. A Wordpress theme gives you absolute control over the HTML that's outputted by the engine. You can therefore customise your site to look however you want it to look. My company website, tec20, was designed this way without any themes used from wordpress.com. Obviously the themes are aimed at writing blog sites, but you don't have to include any of the commenting hooks, for example.
These tutorials may help:
http://rockablethemes.com/wordpress-themes-tutorials/
First off, this isn't really a programming question but more of a programming concept question. Basically, I've built a bespoke PHP framework to speed up deployment on my end and I want some kind of plugin system in place that will allow me to add specific features to the base of the framework (like the SQL class or maybe a Twitter package) that will allow me to throw them into a folder and not have to actually edit the base for every new project.
Any ideas of the best way of going about this?
Here is a nicely written post by #ircmaxell on how to do that and what are the options:
Handling Plugins In PHP
Also check out:
Best way to allow plugins for a PHP application
what im doing in my cms:
for each plugin i make a folder latin-named of this plugin's name.
i create a /translations folder in there too. Check here.
have a single php file that has 2 basic functions, the plugin_install and plugin_uninstall (you know, things to happen on install/unistall like tables creation/drop)
create a special page of your system that reads these plugins, installed and not and give an on/off switch so users can install/unistall them.
load these single files mentioned above by a single call to include_once on top of your index page (or administration page) so to include whatever functionality they offer.
enabled plugins will be loaded (include_once) from your main page, and also their functionality, so each plugin can call each other's as well.
I want to create a blog-like website. At the begining I'll need a simple one person blog software, but in the future I'd like to have full access to the code and database (control the way posts are organized, offer special forms for creating new posts, allow users to register, implement a rating system, etc.)
What's the best solution for this? Is there a specific tool that will generate a database and php files, to which I'll have access, or should I code everything from zip?
I know Wordpress and Joomla are good blogging tools, but couldn't figure out whether I'll be able to freely redesign a blog that was created using those tools.
Wordpress is an open-source, flexible website infrastructure that is pluggable; and also quite simple to setup without any code modifications. It will generate its own database files and is capable of upgrading itself with minimal administrative overhead.
If you choose at a later date to expand the blog, you can manipulate and customize the theme (100% of what the end-users see), as you see fit.
Wordpress also has a strong plugin repository that may provide extended functionality without any need to code. For example, a post rating plugin already exists that shouldn't require coding to implement;
http://wordpress.org/extend/plugins/rate-this-page-plugin/
Just install wordpress, you'll have full access to the code and database, and it supports writing plugins to extend functionality. You can change page layout with their template engine.
Writing a blog from scratch is not a simple job
Just use Wordpress for now.
There are plenty of plugins to customize Wordpress
You can later develop your own plugins or write a new weblog system and migrate to it.
I'll promise when getting familiar with Wordpress. you won't leave it anymore!
I am currently working on a project documentation site for an OSS PHP project. Presently all of the docs are written in Markdown and stored as separate files.
I would really like to keep the core documentation as static files within the project so that they can be downloaded and used as well as read on my website. But on the website, I'd like to render those pages from within a CMS.
In addition to presenting the code docs, I also want to provide a forum for discussion and a blog.
Wordpress is what I have experience with, but is there a better system for what I am trying to accomplish specifically?
For Blog and CMS I would suggest stick with Wordpress since you already have experience on it. And as far as Forum is concerned I would suggest SimplePress forum. I have been using it on my Wordpress installation and found it really good. You can see live forum on the link above to see how it looks in real world.
Also Wordpress has several nice plugins like Download Manager that will give you ability to manage your downloads/files.
Can't confirm if wp is the best, but it's certainly good enough.
To include your docs, you'll have to write a plugin, not likely that you will find one existing that does exactly what you want.
For forum, you should find a plugin. Google for posts similar to this to choose a best match.
Firstly Wordpress isn't a framework.
I believe CakePHP has the functionality to load hardcoded pages when they're placed in the webroot folder of the app. I'm unsure as to how they're loaded in regards to routing/templating however.
I have a Hindi magazine website hosted on Joomla. Though helpful from publishing point of view the site was a maintenance nightmare. Joomla is so much susceptible to hacker attacks. My host will often shut down my site due to bots attacking my website. Recently I relaunched the site as a new Wordpress based site on a different name. The Joomla based website would therefore never be updated anymore. However, I do want to maintain the old content. I have used PHP but hardly am a power user.
I want to convert the files as plain HTML. I created a mirror of the website using HTTrack. But thanks to the fact that Joomla had variety of URLs for the same page (if you used a SEF URL plugin you would understand) the mirror is full of redundant content. Moreover I have repetitive HTML content (for header,footer,menu etc) in each page.
My questions are:
Which is a better option, create a static HTML site or PHP4.x pages (with Unicode content and having include PHP fragments for repetitive content)?
If latter is better should I use template system like Smarty? I am worried about caching since the content will hardly be updated I want caches to last forever.
Thanks for the help.
If the content is not going to change frequently I recommend using HTML files. They are static and hence faster.
However, if you are going to be updating content frequently, then you can either upgrade to the latest version of any popular CMS preferably joomla or drupal. I cite these two because they are actively developed and you can get a lot of support for them on the internet. Be sure to follow their security guide for hardening your installation.
If I were you I'd move everything over to WordPress since you have started using this. This way you will be maintaining a single website application keeping things better manageable in the long run.
You can copy the data out of Joomla using the Joomla administration interface. Or maybe even quicker using a database tool like MySQL Tools or Navicat which has a lot of export options.
Copying the HTML from Joomla using tools like HTTrack or TelePort Pro will result in lots of duplicate code and pages like you state.
Maintaining an extra PHP site just for the old content will be as much effort as getting everything into WordPress.
The "Static Content" project at: https://github.com/juliopontes/staticcontent does exactly what you are after although it looks like it may need to be updated for Joomla 3.5.