What is this
This is a collection of things to know about the standard feed option as introduced in phpBB 3.0.7.
It replaces the FAQ: phpBB 3.0.6 ATOM feed.
Feel free to suggest corrections or textual enhancements.
phpBB 3.0.7
Many enhancements in the feed option compared to the initial release in phpBB 3.0.6.
phpBB 3.0.7-PL1
phpBB 3.0.7-PL1 fixed a security issue in the phpBB 3.0.7 ATOM feeds (Without logon, as Guest, the feed shows forum content where Guests have "No Access").
phpBB 3.0.8
There are no functional changes to the ATOM feed option in phpBB 3.0.8, only a minor bug fix, check the Changelog.
phpBB 3.0.9
There are no functional changes to the ATOM feed option in phpBB 3.0.9, only a few bug fixes, check the Changelog.
phpBB 3.0.10
There are no functional changes and no bug fixes to the ATOM feed option in phpBB 3.0.10.
phpBB 3.0.11
In phpBB 3.0.11 feeds are enabled by default (new installations only).
Feed format
The standard phpBB feed is ATOM format, NOT RSS, some feed readers may not be able to properly read the ATOM format. Although valid ATOM, it is quite unusual structured. There are no plans to add RSS format support with phpBB 3.x.
How to enable and where do I see it
To enable the feed in its basic form, go to: ACP>General>Feed settings
1)Set "Enable Feeds" to "Enabled".
2)Set "Enable board-wide feed" to "Enabled"
Leave all the rest default to start with and Submit the change.
If you return to the Board Index page, your browser should show a selectable feed icon near the address bar (examples of: Internet Explorer 8 and Firefox 3.6) which will open the feed page.
Open feed by URL
An example feed URL for use in a browser that support feeds or in a feed reader is:
http://yoursite.xx/phpbb/feed.php
The actual URL (location of feed.php) depends on YOUR board installation.
Security, access rights and passworded
The feed will show forums according the user credentials, if you have not logged in to the board, the feed will use Guests rights. Once you have logged in, your browser will keep the credentials wich may be passed to the feed and show forums accordingly.
Contents of Passworded forums are not shown at all.
Feed options
Depending if feeds are enabled, what options are selected and what page of the board you are viewing:
a) the browser feed icon appears
b) one ore more different feeds can be selected from the feed icon pull-down menu
c) feeds can be selected by the URL with a "get" parameter
The different feed settings can be explained as follows (seeing the different feeds is understanding):
General feed settings
Enable feeds = General Enable or Disable any feed, feed type(s) to be further specified with oter settings.
Item statistics = Enable this to add the author, date and time of the post.
Allow HTTP Authentication = Enabe this to allows you to open the feed with the parameter auth=http
URL = feed.php?auth=http
This option allows you to issue user credentials (a user as registered in your phpBB board) for opening the feed. The feed will show contents according to the user permissions (e.g. show forum contents that is hidden to Guests).
Most feed readers have the option to specify a username and password in the feed properties.
If opened with a browser, you will get a Login dialog. Depending on the web browser version you may specify the user credentials in the URL, e.g.:
http://username:password@yoursite.xx/phpbb/feed.php?auth=http
Internet Explorer no longer allows to include user credentials in the URL (see Microsoft KB 834489), with Firefox you get a confirmation dialog.
See Microsoft KB 917125 for Outlook 2007 and authentication.
Some webservers need a modified .htaccess file as found in the root of your board installation, remove the # sign in front of these four lines:
Code: Select all
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>
Number of items = X (default 10).
Enable board-wide feed = Feed with X most recent posts from all topics in all forums.
URL = feed.php
Enable per-forum feeds = Feed with X most recent posts from all topics in the selected forum.
URL = feed.php?f=[ForumID]
Enable per-topic feeds = Feed with X most recent posts from the selected topic.
URL = feed.php?f=[ForumID]&t=[TopicID]
Topic-based feed settings
Number of items = Y (default 15).
Enable new topics feed = Board wide feed with the first post of Y most recent topics in all forums.
URL = feed.php?mode=topics
Enable active topics feed = Feed that shows Y last posts, not older then 7 days, for forums that have "Display active topics" enabled.
URL = feed.php?mode=topics_active
7 days = set in feed.php (can be changed by editing and install the modified feed.php file, refresh your browser cache):
Code: Select all
var $sort_days = 7;
URL = feed.php?mode=news
Other feeds and settings:
Enable forums feed = Feed that shows a list of all forum titles (not the contents), excluded those forums you have no access to, but including passworded forums (not considered as bug).
URL = feed.php?mode=forums
Exclude these forums = Forums to exclude in any feed.
Enable feed icon with non-default style
If you use an other style then the default ProSilver or SubSilver2 or ProSilver Special Edition, you may need to modify your overall_header.html in /styles/yourstyle/template to include the feed icon activation as follows.
Find:
Code: Select all
<title>{SITENAME} • <!-- IF S_IN_MCP -->{L_MCP} • <!-- ELSEIF S_IN_UCP -->{L_UCP} • <!-- ENDIF -->{PAGE_TITLE}</title>
Code: Select all
<!-- IF S_ENABLE_FEEDS -->
<!-- IF S_ENABLE_FEEDS_OVERALL --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {SITENAME}" href="{U_FEED}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_NEWS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_NEWS}" href="{U_FEED}?mode=news" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUMS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_ALL_FORUMS}" href="{U_FEED}?mode=forums" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_NEW}" href="{U_FEED}?mode=topics" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS_ACTIVE --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_ACTIVE}" href="{U_FEED}?mode=topics_active" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUM and S_FORUM_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FORUM} - {FORUM_NAME}" href="{U_FEED}?f={S_FORUM_ID}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPIC and S_TOPIC_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_TOPIC} - {TOPIC_TITLE}" href="{U_FEED}?f={S_FORUM_ID}&t={S_TOPIC_ID}" /><!-- ENDIF -->
<!-- ENDIF -->
Add feed icon in forum header for ProSilver styles
If you want a feed icon in your forum header.
Edit overall_header.html in /styles/yourstyle/template as follows.
Find:
Code: Select all
<li class="icon-home"><a href="{U_INDEX}" accesskey="h">{L_INDEX}</a> <!-- BEGIN navlinks --> <strong>‹</strong> <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></li>
Code: Select all
<!-- IF S_ENABLE_FEEDS --><li class="rightside"><a type="application/rss+xml" href="{U_FEED}"><img src="{T_THEME_PATH}/images/feed.gif" alt="{L_FEED} - {SITENAME}" title="{L_FEED} - {SITENAME}" /></a></li><!-- ENDIF -->
Add feed icon in forum header for SubSilver2 style
If you want a feed icon in your forum header.
Copy: styles/prosilver/theme/images/feed.gif
To: styles/subsilver2/theme/images/feed.gif
Edit: styles/subsilver2/template/overall_header.html
Find:
Code: Select all
<!-- IF S_USER_LOGGED_IN --> <a href="{U_PROFILE}"><img src="{T_THEME_PATH}/images/icon_mini_profile.gif" width="12" height="13" alt="*" /> {L_PROFILE}</a><!-- ENDIF -->
<!-- ENDIF -->
Code: Select all
<!-- IF S_ENABLE_FEEDS --> <a type="application/rss+xml" href="{U_FEED}"><img src="{T_THEME_PATH}/images/feed.gif" alt="{L_FEED} - {SITENAME}" title="{L_FEED} - {SITENAME}" /></a></li><!-- ENDIF -->
Add feed icon in forum listing for ProSilver styles
Edit styles/prosilver/template/forumlist_body.html as follows.
Find:
Code: Select all
<!-- IF S_ENABLE_FEEDS and forumrow.S_FEED_ENABLED --><!-- <a class="feed-icon-forum" title="{L_FEED} - {forumrow.FORUM_NAME}" href="{U_FEED}?f={forumrow.FORUM_ID}"><img src="{T_THEME_PATH}/images/feed.gif" alt="{L_FEED} - {forumrow.FORUM_NAME}" /></a> --><!-- ENDIF -->
Code: Select all
<!-- IF S_ENABLE_FEEDS and forumrow.S_FEED_ENABLED --><a class="feed-icon-forum" title="{L_FEED} - {forumrow.FORUM_NAME}" href="{U_FEED}?f={forumrow.FORUM_ID}"><img src="{T_THEME_PATH}/images/feed.gif" alt="{L_FEED} - {forumrow.FORUM_NAME}" /></a> <!-- ENDIF -->