SMF SSI.php Functions

Current Version: 2.0

This file is used to demonstrate the capabilities of SSI.php using PHP include functions. The examples show the include tag, then the results of it.

Include Code

To use SSI.php in your page add at the very top of your page before the <html> tag on line 1 of your php file:

Code: [Select]
<?php require("SSI.php"); ?>

Some notes on usage

All the functions have an output method parameter. This can either be "echo" (the default) or "array"

If it is "echo", the function will act normally - otherwise, it will return an array containing information about the requested task. For example, it might return a list of topics for ssi_recentTopics.

This functionality can be used to allow you to present the information in any way you wish.

Additional Guides & FAQ

Need more information on using SSI.php? Check out Using SSI.php article or the SSI FAQ.

Recent Topics Function

Code (simple mode)

Code: [Select]
<?php ssi_recentTopics(); ?>

Code (advanced mode)

Code: [Select]
<?php ssi_recentTopics($num_recent = 8, $exclude_boards = null, $include_boards = null, $output_method = 'echo'); ?>

Result

Recent Posts Function

Code

Code: [Select]
<?php ssi_recentPosts(); ?>

Result

Recent Poll Function

Code

Code: [Select]
<?php ssi_recentPoll(); ?>

Result

Top Boards Function

Shows top boards by the number of posts.

Code

Code: [Select]
<?php ssi_topBoards(); ?>

Result

Board Topics Posts
English Support New 2897 16227
Custom Coding New 994 5609
Install and Upgrade New 721 4028
Turkish (Türkçe) New 731 3921
Spanish New 668 3327
Fixed or Bogus Bugs New 345 2113
Themes and Graphics New 348 1954
Block Requests New 370 1935
Blocks and Modifications New 65 1907
Feature Requests New 343 1348

Top Topics

Shows top topics by the number of replies or views.

Code (show by number of views)

Code: [Select]
<?php ssi_topTopicsViews(); ?>

Result

Code (show by number of replies)

Code: [Select]
<?php ssi_topTopicsReplies(); ?>

Result

Top Poll Function

Shows the most-voted-in poll.

Code

Code: [Select]
<?php ssi_topPoll(); ?>

Result

Top Poster Function

Shows the top poster's name and profile link.

Code

Code: [Select]
<?php ssi_topPoster(); ?>

Result

Latest Member Function

Shows the latest member's name and profile link.

Code

Code: [Select]
<?php ssi_latestMember(); ?>

Result

Please welcome tedwt3, our newest member.

Member of the Day

Shows one random member of the day. This changes once a day.

Code

Code: [Select]
<?php ssi_randomMember('day'); ?>

Result

Who's Online Function

This function shows who are online inside the forum.

Code

Code: [Select]
<?php ssi_whosOnline(); ?>

Result

722 Guests, 0 Users

Log Online Presence

This function logs the SSI page's visitor, then shows the Who's Online list. In other words, this function shows who are online inside and outside the forum.

Code

Code: [Select]
<?php ssi_logOnline(); ?>

Result

722 Guests, 0 Users

Login Function

Shows a login box only when user is not logged in.

Code

Code: [Select]
<?php ssi_login(); ?>

Result

 
 

Logout Function

Shows a logout link only when user is logged in.

Code

Code: [Select]
<?php ssi_logout(); ?>

Result

Welcome Function

Greets users or guests, also shows user's messages if logged in.

Code

Code: [Select]
<?php ssi_welcome(); ?>

Result

Welcome, Guest. Please login or register.

Today's Calendar Function

Code

Code: [Select]
<?php ssi_todaysCalendar(); ?>

Result

Today's Birthdays Function

Code

Code: [Select]
<?php ssi_todaysBirthdays(); ?>

Result

Today's Holidays Function

Code

Code: [Select]
<?php ssi_todaysHolidays(); ?>

Result

Today's Events Function

Code

Code: [Select]
<?php ssi_todaysEvents(); ?>

Result

Recent Calendar Events Function

Code

Code: [Select]
<?php ssi_recentEvents(); ?>

Result

Forum Stats

Shows some basic forum stats: total members, posts, topics, boards, etc.

Code

Code: [Select]
<?php ssi_boardStats(); ?>

Result

Total Members: 32534
Total Posts: 66619
Total Topics: 10637
Total Categories: 7
Total Boards: 64

News Function

Shows random forum news.

Code

Code: [Select]
<?php ssi_news(); ?>

Result

If you're interested in helping other members with support requests, consider joining the Community Support Helpers group.

Board News Function

Shows the latest posts from read only boards, or a specific board.

Code

Code: [Select]
<?php ssi_boardNews(); ?>

Result

xx Server Issues

March 15, 2018, 08:40:47 PM by Chen Zhen
Attention all members,

  We regret to inform all members that we have had a problem with the server regarding the database and files.  Our previous host has informed us that they had some hardware issues at their data center whereas  the RAID for the HDD that this forum resided on had crashed and all of our data including backups is not recoverable.

  We are now using a very reputable host with greater resources. Unfortunately since the backups from the previous host have been lost, we have been set back a few months concerning the database and files. Please forgive us for the inconvenience and remember that  Simpleportal.net will always be available so long as the SMF community continues to show this project such a great user base.

Regards,
- The Simple Portal Team
3 comments | Write Comment

xx Emails

March 15, 2018, 02:42:53 PM by Chen Zhen

Attention members,

  Emails from this forum should now be working correctly. We are now using SMTP-STARTTLS encryption via Gmail which should work without issue for all members.
New simpleportal.net email address:
noreply.simpleportal@gmail.com

Please post any inquiries in the forum as we will not respond to email replies.

Regards,
- The Simple Portal Team
0 comments | Write Comment

exclamation Simple Portal 2.3.7 Released!

December 17, 2017, 08:04:56 AM by Chen Zhen
The SimplePortal Team is happy to announce the release of SimplePortal 2.3.7, code-named "Ghost!" This release includes fixes for the bugs found in the 2.3.6 version.

We urge all users to upgrade to SimplePortal 2.3.7 as soon as possible to take advantage of the bug fixes. A full list of changes for 2.3.7 can be found in the changelog.txt file within the SimplePortal package, but the major fixes are:
  • Send required session ID in the user info block login form.
  • Replaced all instances of /e modifier to use callbacks.
  • Fixed canonical URL for front page mode.
  • Fixed shoutboxes for multilingual environments.
  • Properly redirect guests from custom pages.
Unfortunately, there is no auto-upgrade option from 2.3.6 to 2.3.7 due to the number of changes. So, if you are running 2.3.6 or an older version, you can upgrade by following these three steps. You shouldn't lose any data, but for safety, you should always back up before modifying your forum.
Finally, please do not use this topic for any support requests. You will get a much more prompt response by posting in Install and Upgrade board.

Thanks for all your support, and keep those bug reports and feature requests coming!
-The SimplePortal Team
1 comment | Write Comment

xx Security Breach on Community Forums

June 20, 2016, 05:14:22 PM by [SiNaN]
Dear SimplePortal community members,

On 17 June 2016, we discovered that unauthorized access to our website and database had been obtained on 16 June 2016. We determined that the unauthorized access has been obtained using stolen credentials of a high-level user.

We would like to make it clear that your personal SimplePortal installations were not affected in any way by this. We would like to assure you that your installations running the latest versions of SimplePortal and SMF should be safe. The unauthorized access was restricted to just our website.

The hacker attempted to download our database, but as of yet we are not certain that it was successful. Regardless, it's possible that your usernames, emails and hashed passwords have been retrieved by the attacker.

For this reason, we would like you to change your passwords for this website and we strongly advise you to change your passwords on any other website where you may have been using the same passwords.  Using unique passwords on all websites is very important to prevent such attacks. Note that, if you had shared passwords using personal messaging system, they can no longer be considered safe and needs to be changed as well.

To ensure the safety of our website, we have updated all the relevant credentials and rebuilt our installation from the ground up. We will implement stricter security policies in the coming days to make sure that such an unfortunate event does not happen again.

We are truly sorry for what happened and we deeply apologize for the inconvenience this has caused. We hope that you will continue to support us to make SimplePortal a better portal solution for your forums.

-The SimplePortal Team
16 comments | Write Comment

xx SimplePortal 2.3.6 Released!

October 09, 2014, 05:01:59 PM by [SiNaN]
The SimplePortal Team is happy to announce the release of SimplePortal 2.3.6, code-named "Mist!" This release includes fixes for the bugs found in the 2.3.5 version, and the change of license to allow for open development of SimplePortal. As of this version and going forward, SimplePortal is licensed under the BSD License. Older versions of SimplePortal are still licensed under the Simple Machines License.

We urge all users to upgrade to SimplePortal 2.3.6 as soon as possible to take advantage of the bug fixes. A full list of changes for 2.3.6 can be found in the changelog.txt file within the SimplePortal package, but the major fixes are:
  • Updates and improvements to the built-in blocks.
  • Several security improvements.
  • Proper logging of portal activity.
  • Several fixes and improvements to the interface.
  • Styling options for board news block.
  • Fixes to shoutboxes module.
Unfortunately, there is no auto-upgrade option from 2.3.5 to 2.3.6 due to the number of changes. So, if you are running 2.3.5 or an older version, you can upgrade by following these three steps. You shouldn't lose any data, but for safety, you should always back up before modifying your forum.
Finally, please do not use this topic for any support requests. You will get a much more prompt response by posting in Install and Upgrade board.

Thanks for all your support, and keep those bug reports and feature requests coming!
-The SimplePortal Team
43 comments | Write Comment

Menubar Function

Displays a menu bar, like one displayed at the top of the forum.

Code

Code: [Select]
<?php ssi_menubar(); ?>

Result

Quick Search Function

Code

Code: [Select]
<?php ssi_quickSearch(); ?>

Result

Recent Attachments Function

Code

Code: [Select]
<?php ssi_recentAttachments(); ?>

Result

File Posted by Downloads Filesize
session.PNG marcosbr 1022 46.54kB
index.php ccbtimewiz 623 2.77kB
index.php russguaj 504 2.97kB
Chat-ErrorLog-slice.txt OpoWolfie 459 3.17kB
favicon problem.JPG tfs 1416 43.67kB
ohnoerror.png LittleFang 920 21.41kB
finally.png msab 879 30.57kB
test.jpg msab 1573 833.89kB
arg-points.png msab 832 24.95kB
PortalBlocks.php Chen Zhen 463 121.83kB

Show Single Poll

Shows a poll in the specified topic.

Code

Code: [Select]
<?php ssi_showPoll($topicID); ?>

Result

Not shown because it needs specific topic ID that contains a poll.

Show Single Post

Fetches a post with a particular IDs. By default will only show if you have permission to the see the board in question. This can be overriden by passing the 2nd parameter as true.

Code

Code: [Select]
<?php ssi_fetchPosts($postIDs, $isOverride); ?>

Result

Not shown because it needs a specific post ID.

Show Single Member

Shows the specified member's name and profile link.

Code

Code: [Select]
<?php ssi_fetchMember($memberIDs); ?>

Result

Not shown because it needs a specific member ID.

Show Group Members

Shows all members in a specified group.

Code

Code: [Select]
<?php ssi_fetchGroupMembers($groupIDs); ?>

Result

Not shown because it needs specific membergroup IDs.

Home Page Sample

This sample uses the following features: ssi_recentTopics(), ssi_logOnline(), ssi_welcome(), and ssi_boardNews(). ssi_recentTopics() is fetched using the array method, to allow further customizations on the output.

Code

Code: [Select]
<?php require("SSI.php"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>SSI.php example for home page</title> <style type="text/css"> body { font-family: Arial, Tahoma, sans-serif; font-size: 80%; background: #DFDFDF; color: #FFFFFF; margin: 0 } ul,ol { padding-left: 19px; margin: 0; } li { font-size: 11px; } h1,h2,h3 { margin: 0; padding: 0; } h3 { font-size: 15px; } a:link,a:visited { color: #FF9000; text-decoration: none; } a:hover { text-decoration: underline; } #container { background: #52514E; width: 100%; border: 1px solid midnightblue; line-height: 150%; margin: 0; } #header,#footer { color: lightgray; background-color: #2A2825; clear: both; padding: .5em; } #leftbar { background: #DF7E00; float: left; width: 160px; margin: 0; padding: 1em; } #leftbar a { color: #000000; text-decoration: underline; } #content { margin-left: 190px; padding: 1em; } #navigation { float: right; } #navigation a:link,#navigation a:visited { color: #FF9000; } </style> </head> <body> <div id="container"> <div id="header"> <div id="navigation"> <a href="#">Link</a> | <a href="#">Link</a> | <a href="#">Link</a> | <a href="#">Link</a> | <a href="#">Link</a> </div> <h1 class="header">YourWebsite.com</h1> </div> <div id="leftbar"> <h3>Recent Forum Topics</h3> <ul> <?php // Using array method to show shorter display style. $topics = ssi_recentTopics(8, null, null, 'array'); foreach ($topics as $topic) { // Uncomment the following code to get a listing of array elements that SMF provides for this function. // echo '<pre>', print_r($topic), '</pre>'; echo ' <li><a href=\"', $topic['href'], '\">', $topic['subject'], '</a> ', $txt['by'], ' ', $topics[$i]['poster']['link'], '</li>'; } unset($topics); ?> </ul><br /> <h3>Online Users</h3> <?php ssi_logOnline(); ?> </div> <div id="content"> <?php ssi_welcome(); ?><br /><br /> <h2>News</h2> <?php ssi_boardNews(); ?> </div> <div id="footer"> <a target="_blank" rel="license" href="http://creativecommons.org/licenses/publicdomain/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/publicdomain/88x31.png" /></a> This sample website layout is dedicated to the <a target="_blank" rel="license" href="http://creativecommons.org/licenses/publicdomain/">Public Domain</a>. </div> </div> </body> </html>

Result