The SDK comes with a function called md_get_forum_cat_infos which retrieves the necessary information when creating a personalized homepage for the forum
This function requires certain variables that we will detail
md_get_forum_cat_infos( string $current_forum, int $cat, bool $registered, bool $use_current_db, resource $dbhr, resource $dbhw, [$add_field = ''])
$current_forum : This variable should contain the name of the forum in process, Initialize writes this value in the variable $md_db_extension
$cat : If you want to retrieve information about only one category, you can precise which one here.. For our example, we want to retrieve information for all categories. In order to do so, we will indicate to the variable that it should be “NULL”
$registered : Certain categories can be defined as being accessible only by registered members. This setting will be true if the parameter is set to 0, otherwise, those categories will be listed.
$use_current_db : This parameter enables you to give information about the number of databases used by your forum. This parameter can be initialized by the constant md_one_database.
$dbhr and $dbhw : Those 2 variable link to the MySQL connexion, they are initialized in initialize.php by the same names, $dbhr and $dbhw.
$add_field : This optional variable allows you to add other fields that should be retrieved in the databases.
The function returns a MySQl object that contains a certain number of variables that we will progressively study
(locked, cat_number, name, name_supercat, url_name, password, visible, link, target_cat, target_forum_id, use_current_forum, auto_redirect, allow_anonymous_posting, apriori_cat, orderby_creation)
At first, we will only retrieve the name
In our example we will create an original layout displaying the categories
On the screen, it should look like:

Now we want the names to be replaced by link in order to access those categories
In order to do so, we use the function md_get_url_forum1 by which we get the url to access a particular category
This function requires a certain number of parameters but a lot of them are optional and since we want to show you a quick example, we will not describe those over here. For more details , please refer to the complete SDK guide.
The function (without its optional parameters) : md_get_url_forum1( bool $modrewrite, string $forum_rewritten_name, bool $default, int $cat, string $cat_nom);
$modrewrite : allows you to specify if the URL Rewriting mode is activated on your forum, this variable is transmitted by the constant md_modrewrite.
$forum_rewritten_name : Name of the forum, initialized by $md_forum_url.
$default : Specifies if the forum to be reached is the one by default, we put 0.
$cat : the category number to reach.
$cat_nom : URL of the category to reach.
Now, we are going to modify our program according to those changes. We will first edit the CSS part to attribute values to textual elements that will become links
Then we modify the category fetching process for
We should come up with something like this. The names of the categories have been transformed into links. Clicking on a link will redirect you to the associated category topic list.

Now we want to display the author and the date of the last posted message in each category
In order to do so, we will use the SDK function md_get_forum_post_infos which provides information about categories last messages.
md_get_forum_post_infos( string $current_forum, int $cat, bool $use_current_db, resource $dbhr, resource $dbhw)
This function requires a certain number of parameters.
$current_forum : Name extension of the forum data basis in process, comes with initialize.php in $md_db_extension.
$cat : categories on which this information should be displayed, if this parameter is left empty, information will be displayed for all categories; This is what we are going to do here
$use_current_db : using the forum data basis in process or not, initialized by the constant md_one_database
$dbhr and $dbhw : those 2 variables link to the MySQL connexion(s), they are initialized in initialize.php with the same name, $dbhr and $dbhw.
This function will return a 2-dimension table containing the pseudo of the last author, the ID of the last reply, the date of the last message and the total number of messages for this category.
We will start by modifying the CSS. We will slightly enlarge the height of the blocs and then define a layout for the HTML tag p (paragraph)
Then we add the calling function and we modify our loop to display the our infos.
You should get something that looks like:

Now let's put some useful pieces of information:
First, we add a bloc around our list of categories, and then we will display the total number of messages on the forum. This is actually quite simple and no SDK function is needed. Simply memorize each category total number of messages and display the result.
Also, we want to display the pseudo of the current member. For this purpose, Initialize provides the variable $user, if $user is empty, we know that the user is not logged in. We can therefore suggest him to log in.
We edit our CSS to wrap the whole thing and we get something like this:

Here we are! This is our personalized homepage. Though the design might be tasteless, at least, it shows you the possibilities. Here is the final code by which we obtain what is shown above