Pimp My PHP-Fusion

Tutorial To Pimp Your PHP-Fusion Powered Website

Archive for Mei, 2007


Posted by Baron pada Mei 22, 2007


PHP was written as a set of CGI binaries in the C programming language by the Danish/Greenlandic programmer Rasmus Lerdorf in 1994, to replace a small set of Perl scripts he had been using to maintain his personal homepage. Lerdorf initially created PHP to display his résumé and to collect certain data, such as how much traffic his page was receiving. “Personal Home Page Tools” was publicly released on June 8, 1995 after Lerdorf combined it with his own Form Interpreter to create PHP/FI (this release is considered PHP version 2).

Zeev Suraski and Andi Gutmans, two Israeli developers at the Technion – Israel Institute of Technology, rewrote the parser in 1997 and formed the base of PHP 3, changing the language’s name to the recursive initialism “PHP: Hypertext Preprocessor”. The development team officially released PHP/FI 2 in November 1997 after months of beta testing. Public testing of PHP 3 began and the official launch came in June 1998. Suraski and Gutmans then started a new rewrite of PHP’s core, producing the Zend Engine in 1999. They also founded Zend Technologies in Ramat Gan, Israel, which actively manages the development of PHP.

In May 2000, PHP 4, powered by the Zend Engine 1.0, was released. The most recent update released by The PHP Group, is for the older PHP version 4 code branch which, as of May 2007, is up to version 4.4.7. PHP 4 is currently still supported by security updates for those applications that require it.

On July 13, 2004, PHP 5 was released powered by the new Zend Engine II. PHP 5 included new features such as:

  • Robust support for object-oriented programming
  • The PHP Data Objects extension, which defines a lightweight and consistent interface for accessing databases
  • Performance enhancements taking advantage of the new engine
  • Better support for MySQL through a fully rewritten extension
  • Embedded support for SQLite
  • Integrated SOAP support
  • Data iterators
  • Error handling via exceptions

The latest stable version, PHP 5.2.2, was released on May 3, 2007.


Posted in c0pp4z | Leave a Comment »

Information architecture for selling websites

Posted by Baron pada Mei 22, 2007

Information architecture for selling websites


This is not another article on how to set up a web shop; there are plenty of those already.

In this article I share a solution on information architecture for a website having the purpose of selling ideas, services or complex products. In other words, a marketing website that should create a desire to buy, to be a part of, etc. This article presents useful guiding principles to, for example companies and special interest organizations.

With information architecture I mean how required content should be structured on the web page to make the website easy and effective to use, in this case selling. So, this article doesn’t necessarily cover everything you need to make the website complete. Also, the marketing topic is enormous with tons of books on the subject – this short article can obviously not replace a comprehensive marketing guide.

The article assumes that PHP-Fusion or a similar content management system is used to setup the website, respecting license terms. Using PHP-Fusion and the advice given by this article, a selling website could be set up in just a few hours from start to finish (assuming that images and wordings have been produced already).

In the article I also elaborate on web collaboration in the development of the messages delivered.

In the following I use the word ‘customer’ to denote the website user, visitor or potential buyer or member. I use the word ‘member’ (such as in work team member, committee member) to denote the designers of the market messages. The word ‘product’ is used to denote the idea, service, product package or solution you want to sell.

Page layout

Since the article target group is so broad, it is difficult to give anything more than general guidelines regarding the page layout.

Keep it simple
It is good to try to keep a clean and minimalist view of the website. You want the customer see your messages, so don’t add or activate too many functions on the website. You should only activate the features, functions, panels and links that are required for the messages to get through to the customer. If you really need a photo gallery then do use the Photo Album feature of the PHP-Fusion. Otherwise you should deactivate or hide the feature to the customer. The same goes for commenting functions, forums, shout box, statistics, news panels, polls, clocks, etc. If possible, hide the login panel.

Use of images
Apart from the always-visible logotype in the page header, you should use one or possibly two or three relatively large but simple pictures on each page the customer can see. Use a different picture for each page, or rather: do not use a certain picture more than once on the website. For example, you may use slightly softened photographs of people in action. Try to avoid complicated product drawings or diagrams. The pictures may not necessarily need a logical connection to the messages but rather support the messages by making them more appealing. All pictures should have your own or free copyright.

Only use one menu or navigation panel. Using PHP-Fusion you can choose between the navigation panel and the top menu. Regardless which, the menu items should be the same. If you only have 1-3 products to sell you can do with the PHP-Fusion top menu.

Using the Navigation panel, it should be permanently placed to the left of the web pages of the website, with links leading directly to articles or custom pages with the selling information.

There should be no external links in the navigation panel, only links going internally within this website. The content area is to the right of the navigation panel. Required external links should be placed in a permanent panel to the right of the content area of the web pages of the website, appropriately grouped.

Using PHP-Fusion and its Internal links function you can easily control what page links in the navigation panel or menu that are visible to customers. Hide everything but links to the selected content on your website.


You need a welcome message, a presentation of the company or organization and of course the product presentations. You also need contact information.

Welcome message
Very short explanation of what kind of website this is. It should make the customer answer the question “Could there be something for me on this website?� In PHP-Fusion, use a sticky news item, a custom page or the welcome text field of the website configuration. The welcome message should be visible on the start page of the website but only there.

Write a short introduction to the company or organization. It should generate credibility and trust by answering the customer question “Why are they capable of this?�

Product presentations
Each product should have its own menu item (link) in the menu. Name it with the product name or customer issue, depending on your product (politics, services, etc). Of course, if there are plenty of products you need to group them appropriately, or even need to use a more advanced menu logic.

The below presented product presentation structure is often said to be best practice for “what the customer want to hear (read, see) and in what order�, regardless of media.

Using PHP-Fusion, you could use the Article feature, and write an article for each product you want to sell. Each article could have six pages, using the pagination function of the PHP-Fusion Article section – the ‘new page’ button. Then, the six pages for each product presentation are as follows:

Page One – Customer issue
Here you write a description of the customer problem or customer need. Not too much or too complicated. This should create customer attention.

Page Two – Our solution
Write a description of our (the company’s, the organization’s) idea or solution to meet this need or solve this problem. Also present all required details and options. This text should create interest.

Page Three – Proof
Here you state the evidence or track record to prove that our idea or solution is the right one and that we are the right ones to deliver. This should build trust, by answering the customer question “why you and why not them?�

Page Four – Benefits
List all benefits with our idea or solution. If suitable, in a bulled list which is foreseeable. This text should create the desire, by ‘painting’ the customer value. But not too much.

Page Five – Action
Present what action(s) the customer should take if s/he is interested. Don’t make this step complicated! This page should create the action.

Page Six – Summary
Present a summary of pages One-Five.

Don’t forget the unique picture on every page.

Depending on your product; if you do not need so much text or images to describe and sell your product, six pages could be far too much. Then, just follow the same principle as above, but shorter.

Contact information
Being detailed with contact information improves credibility.

Contact persons
Appointed contact persons for the different products, functions or issues, name with telephone number.

Contact e-mail
Due to spam, e-mail addresses should not be written out or exist in links on web pages. Instead a form is used. PHP-Fusion has such a form function built in to the system.

State the location of the company or organization, its postal address, telephone numbers.

Document management

If your product portfolio is complex, your customers probably wish to download more information for further offline reading. Much of the additional information can be stored in document files that should be accessible for download in the PHP-Fusion section Downloads, appropriately categorized. The suggested file format is Adobe’s PDF since not all customers have Microsoft compatible software installed.

Search function

The search function of the website should be capable of free text search both in PHP-Fusion’s database and within all document files published on the website.


Developing a selling website with all its is messages is usually a teamwork – a team of subject matter experts of the company or organization and perhaps also external consultants. PHP-Fusion gives the opportunity to make the development work efficient and effective.

Before the website goes live (goes public on the Internet) you may use a number of interactive functions to collaborate and co-operate in designing the market messages to be published. You may use for example commenting functions, discussion forums and custom pages specifically for this matter. Create a work group and then select this as authority level.

When you are ready, you should also test the resulting website with a selected group of ‘friendly customers’ before public marketing of the website. How to make your customers come to your website, is another story.

Posted in c0pp4z | 1 Comment »

How to modify PHP-fusion

Posted by Baron pada Mei 22, 2007

How to modify PHP-fusion


PHP-Fusion is/has been developed by Nick Jones, owner of http://www.php-fusion.co.uk.

I myself started using this system 30th of October 2004 – the purpose was to build my own site – easy with this kinda setup. I needed it modified a bit to fit my needs, so I went to the supportsite in Denmark and also this site, asked HOW TO and got my answers straight up.

As i modified my own site, I helped others out and had the kick of being ABLE to see some pieces of code that I could flip around and make something usefulof to others – also meant that my own site was modified over and over again, for test-purpose, (still is, he he).

I agreed to run a danish MOD-site with another member of this community – lotsa work, making a lot of new stuff – too much almost.

Where am I at now?

Setting up bigger sites for ppl, making “deeper” infusions than earlier – still learning about PHP and MySQL, didn’t now anything till I got this splendid system, only few snippets of HTML – not worth mentioning really.

Anyways – my input for HOW TO:

PHP-Fusion (PF from now on) is a multilingual system, meaning that you can chose between a lot of languages. If a language is not done already, it’s “just” to make a new set of language files in required language – upload and change settings to the new language uploaded.
The language files to the WHOLE system is located in ROOTlocale. Keep it in mind as you read on.

Let me start with folder and file structure at first:
(I will explain how to find the right files to modify later on)

Contains all files used in the administration section for admins and superadmins. Also contains the backup of your site in ROOTadministrationdb_backups
Images that are used in adminpanel in admin section is placed here also, in ROOTadministrationimages.

ROOTforum contains the files used in forum or discussion group if you like. The attachments to threads that members posts are put into ROOTforumattachments.

ROOTimages has several sub folders for each their purpose. Let me explain.

ROOTimages itself, contains basic images used for different purpose, banner, validationcode etc.

ROOTimagesarticles is the folder to use to upload pictures to, for the purpose of making articles.

ROOTimagesnews – same thing as above, but for news.
Next cpl of folders are different.

ROOTimagesavatars is where members avatars are uploaded when a member add an avatar to their profile.

ROOTimagessmiley is where you find default smileys used in PF – they can be chaged as you like, but adding MORE would take some coding work in dif. files.

ROOTimagesphotoalbum is the place where uploaded images being used in the section photoalbum, are uploaded.

ROOTnews_cats is a new folder that arrived with 6.00.203 version recently. It contains some premade images that are used when categorizing news in admin section – more can be added.

ROOTincludes are a special folder that are made for special features that request some deeper kind of kode. E.g. the mail-feature in the system, the TinyMCE and so on. Files from here should not be modified. These files are used in complex features in PF and they are “included” – important for other files in this system, for doing a “job” in a certain matter.

ROOTinsfusions contains what some would think of as “plugins” – it’s Nick Jones term of a plugin. Some are default and included in the basic system you already have. E.g. the navigation panel.
In administration section, system department, you can turn on and off some of these plugins. Not all are to be installed as they are part of basic setup. The idea of infusions are to make it easier for common user to download an infusion at one of the support sites, upload it and “switch” it on, and off you go, installed and ready for usage.
All infusions have their own folder name – note that.
E.g. ROOTinfusionsnavigation_panel files that makes navigation panel look as it does is put in this folder.

ROOTlocale – now THAT’S what I started with. This folder contains all language files for a given country setup.
E.g. ROOTlocaleDanish
It contains excactly the same text as ROOTlocaleEnglish,but translated to Danish. Files in each “Country” are named the same.

System imports these language files into the system, meaning that a site could change from German to Polish in a flip, through main settings, language control.
If your language is not included in basic package, but you want it to BE in that language, make a folder ROOTlocaleYourlanguage – copy all files from a selected language into this folder, take one file at a time and translate it, line by line. When done, go to administration and set the language control to your language.

Everything in this system is based on “softcoded” language files, meaning that you don’t have to change any system files at all, just the simple language files for the system to work.
Note that 2 subfolders are here as well. One for admin and one for forum sections.
These are bigger features in this system, and therefore they have their own folders.

ROOTthemes contains different themes or skins if you like. Several to chose inbetween as standard, more to find at theme-support site, PHP Fusion Themes.

As with language, these themes are listed in named folders, one folder for each theme, folder name is the name that is being listed in dropdown menu in main settings. The dropdown reads the folder names and lists them. If you find a new theme you like, upload it to it’s name folder, and go to main setting to choose it.

So far the folder structure.
If you only use a particular language, it’s OK to delete the others, same thing with the theme folders you’re not using.
It will easen up your daily backup if backing up all the time – just leave MAIN language folder, English – in case something screws up in your default language file set, it’s good to have ,he he (been there, done that).

Basic files – maincore.php config.php subheader.php index.php
Panels – building, center and left/right.
MySQL structure – some of the tables to be explained.
Making a table on a page – column and rows
MySQL query – how to address a table to get some datas to be shown in a page.
Indusions Development Kit – make your own Infusion – small step by step with a small feature.

Posted in c0pp4z, Tutorial | Leave a Comment »