Source for file multiblogs.php
Documentation is available at multiblogs.php
* This is a demo template displaying multiple blogs on the same page
* If you're new to b2evolution templates or skins, you should not start with this file
* It will be easier to start examining blog_a.php or noskin_a.php for instance...
# First blog will be displayed the regular way (why bother?)
$blog =
2; // 2 is for "demo blog A" or your upgraded blog (depends on your install)
# Tell b2evolution you don't want to use evoSkins
# (evoSkins are designed to display only one blog at once + optionnaly a linkblog)
# This setting retricts posts to those published, thus hiding drafts.
# You should not have to change this.
$show_statuses =
array();
# Here you can set a limit before which posts will be ignored
# You can use a unix timestamp value or 'now' which will hide all posts in the past
# Here you can set a limit after which posts will be ignored
# You can use a unix timestamp value or 'now' which will hide all posts in the future
# Additionnaly, you can set other values (see URL params in the manual)...
# $order = 'ASC'; // This for example would display the blog in chronological order...
* Let b2evolution handle the query string and load the blog data:
require
(dirname(__FILE__
).
'/b2evocore/_blog_main.php');
# Now, below you'll find the magic template...
<!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" xml:lang="
<?php locale_lang() ?>" lang="
<?php locale_lang() ?>"><!-- InstanceBegin template="/Templates/Standard.dwt" codeOutsideHTMLIsLocked="false" -->
<!-- InstanceBeginEditable name="doctitle" -->
<meta http-equiv="Content-Type" content="text/html; charset=
<?php locale_charset() ?>" />
<title>Multiblog demo
<?php
<!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="head" -->
<base href="
<?php skinbase(); // You're not using any skin here but this won't hurt. However it will be very helpfull to have this here when you make the switch to a skin! ?>" />
<meta name="description" content="
<?php $Blog->disp( 'shortdesc', 'htmlattr' ); ?>" />
<meta name="keywords" content="
<?php $Blog->disp( 'keywords', 'htmlattr' ); ?>" />
<meta name="generator" content="b2evolution
<?php echo
$b2_version ?>" /> <!-- Please leave this for stats -->
<link rel="alternate" type="text/xml" title="RDF" href="
<?php $Blog->disp( 'rdf_url', 'raw' ) ?>" />
<link rel="alternate" type="text/xml" title="RSS .92" href="
<?php $Blog->disp( 'rss_url', 'raw' ) ?>" />
<link rel="alternate" type="text/xml" title="RSS 2.0" href="
<?php $Blog->disp( 'rss2_url', 'raw' ) ?>" />
<link rel="alternate" type="application/atom+xml" title="Atom" href="
<?php $Blog->disp( 'atom_url', 'raw' ) ?>" />
<link rel="pingback" href="
<?php $Blog->disp( 'pingback_url', 'raw' ) ?>" />
<!-- InstanceEndEditable -->
<link rel="stylesheet" href="rsc/fp02.css" type="text/css" />
<div class="pageHeaderContent">
<!-- InstanceBeginEditable name="NavBar2" -->
<?php // --------------------------- BLOG LIST INCLUDED HERE -----------------------------
# this is what will start and end your blog links
$blog_list_start =
'<div class="NavBar">';
$blog_list_end =
'</div>';
# this is what will separate your blog links
# This is the class of for the selected blog link:
$blog_selected_link_class =
'NavButton2';
# This is the class of for the other blog links:
$blog_other_link_class =
'NavButton2';
# This is additionnal markup before and after the selected blog name
$blog_selected_name_before =
'<span class="small">';
$blog_selected_name_after =
'</span>';
# This is additionnal markup before and after the other blog names
$blog_other_name_before =
'<span class="small">';
$blog_other_name_after =
'</span>';
require
( get_path('skins').
'/_bloglist.php');
// ---------------------------------- END OF BLOG LIST --------------------------------- ?>
<!-- InstanceEndEditable -->
<div id="Logo"> </div>
<h1 id="pageTitle"><!-- InstanceBeginEditable name="PageTitle" -->
<?php echo
T_('Multiblog demo') ?><!-- InstanceEndEditable --></h1>
<div class="pageHeaderEnd"></div>
<div class="pageSubTitle"><!-- InstanceBeginEditable name="SubTitle" -->
<?php echo
T_('This demo template displays 3 blogs at once (1 on the left, 2 on the right)') ?><!-- InstanceEndEditable --></div>
<div class="main"><!-- InstanceBeginEditable name="Main" -->
<!-- =================================== START OF MAIN AREA =================================== -->
<h2>#1: <a href="
<?php $Blog->disp( 'blogurl', 'raw' ) ?>">
<?php echo
$Blog->disp( 'name', 'htmlbody' ) ?></a></h2>
<?php // ------------------------------------ START OF POSTS ----------------------------------------
if( isset
($MainList) ) $MainList->display_if_empty(); // Display message if no post
if( isset
($MainList) ) while( $Item =
$MainList->get_item() )
$MainList->date_if_changed();
<div class="bPost" lang="
<?php $Item->lang() ?>">
<?php $Item->anchor(); ?>
<a href="
<?php $Item->permalink() ?>" title="
<?php echo
T_('Permanent link to full entry') ?>"><img src="img/icon_minipost.gif" alt="
<?php echo
T_('Permalink') ?>" width="12" height="9" class="middle" /></a>
<?php $Item->issue_time(); echo
', ', T_('Categories'), ': '; $Item->categories() ?>
<h3 class="bTitle">
<?php $Item->title(); ?></h3>
<?php $Item->content(); ?>
<div class="bSmallPrint">
<?php $Item->feedback_link( 'comments', '', ' • ' ) // Link to comments ?>
<?php $Item->feedback_link( 'trackbacks', '', ' • ' ) // Link to trackbacks ?>
<?php $Item->feedback_link( 'pingbacks', '', ' • ' ) // Link to trackbacks ?>
<?php $Item->trackback_rdf() // trackback autodiscovery information ?>
<a href="
<?php $Item->permalink() ?>" title="Permanent link to full entry">
<?php echo
T_('Permalink') ?></a>
<?php // ---------------- START OF INCLUDE FOR COMMENTS, TRACKBACK, PINGBACK, ETC. ----------------
$disp_comments =
1; // Display the comments if requested
$disp_comment_form =
1; // Display the comments form if comments requested
$disp_trackbacks =
1; // Display the trackbacks if requested
$disp_trackback_url =
1; // Display the trackbal URL if trackbacks requested
$disp_pingbacks =
1; // Display the pingbacks if requested
require
( get_path('skins').
'/_feedback.php');
// ------------------- END OF INCLUDE FOR COMMENTS, TRACKBACK, PINGBACK, ETC. ------------------- ?>
<?php } // ---------------------------------- END OF POSTS ------------------------------------ ?>
<?php // ---------------- START OF INCLUDES FOR LAST COMMENTS, STATS ETC. ----------------
// this includes the last comments if requested:
require
( get_path('skins').
'/_lastcomments.php' );
// this includes the archive directory if requested
require
( get_path('skins').
'/_arcdir.php');
// this includes the profile form if requested
require
( get_path('skins').
'/_profile.php');
// ------------------- END OF INCLUDES FOR LAST COMMENTS, STATS ETC. ------------------- ?>
<!-- =================================== START OF SIDEBAR =================================== -->
<!-- =================================== START OF BLOG B =================================== -->
// Dirty trick until we get everything into objects:
<h3>#2: <a href="
<?php $Blog_B->disp( 'blogurl', 'raw' ) ?>">
<?php echo
$Blog_B->disp( 'name', 'htmlbody' ) ?></a></h3>
// You can restrict to specific categories by listing them in the two params below: '', array()
// '', array(9,15) will restrict to cats 9 and 15
// '9,15', array() will restrict to cats 9,15 and all their subcats
$BlogBList =
& new ItemList( $blog, $show_statuses, '', $m, $w, '', array(), $author, $order, $orderby, $posts, '', '', '', '', '', '', '', '3', 'posts', $timestamp_min, $timestamp_max );
while( $Item =
$BlogBList->get_item() )
<div class="bPostSide" lang="
<?php $Item->lang() ?>">
<?php $Item->anchor(); ?>
<h3 class="bTitle"><a href="
<?php $Item->permalink() ?>" title="
<?php echo
T_('Permanent link to full entry') ?>"><img src="img/icon_minipost.gif" alt="
<?php echo
T_('Permalink') ?>" width="12" height="9" class="middle" /></a>
<?php $Item->title(); ?></h3>
<?php $Item->content( 1, false ); ?>
// Restore after dirty trick:
<!-- =================================== START OF BLOG C =================================== -->
// Dirty trick until we get everything into objects:
$blog =
4; // Linkblog now
<h3>#3: <a href="
<?php $Blog_roll->disp( 'blogurl', 'raw' ) ?>">
<?php echo
$Blog_roll->disp( 'name', 'htmlbody' ) ?></a></h3>
// You can restrict to specific categories by listing them in the two params below: '', array()
// '', array(9,15) will restrict to cats 9 and 15
// '9,15', array() will restrict to cats 9,15 and all their subcats
$LinkblogList =
& new ItemList( $blog, $show_statuses, '', $m, $w, '', array(), $author, $order, $orderby, $posts, '', '', '', '', '', '', '', '3', 'posts', $timestamp_min, $timestamp_max );
while( $Item =
$LinkblogList->get_item() )
<div class="bPostSide" lang="
<?php $Item->lang() ?>">
<?php $Item->anchor(); ?>
<h3 class="bTitle"><a href="
<?php $Item->permalink() ?>" title="
<?php echo
T_('Permanent link to full entry') ?>"><img src="img/icon_minipost.gif" alt="
<?php echo
T_('Permalink') ?>" width="12" height="9" class="middle" /></a>
<?php $Item->title(); ?></h3>
<?php $Item->content( 1, false ); ?>
// Restore after dirty trick:
<!-- =================================== END OF BLOG C =================================== -->
<h3>
<?php echo
T_('Misc') ?></h3>
<p class="center">powered by<br />
<a href="http://b2evolution.net/" title="b2evolution home"><img src="
<?php echo
$img_url ?>/b2evolution_button.png" alt="b2evolution" width="80" height="15" border="0" class="middle" /></a></p>
<!-- InstanceEndEditable --></div>
<table cellspacing="3" class="wide">
<td class="cartouche">Original page design by <a href="http://fplanque.net/">François PLANQUE</a> </td>
<td class="cartouche" align="right"> <a href="http://b2evolution.net/" title="b2evolution home"><img src="img/b2evolution_button.png" alt="b2evolution" width="80" height="15" border="0" class="middle" /></a></td>
<a href="http://validator.w3.org/check/referer"><img style="border:0;width:88px;height:31px" src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" class="middle" /></a>
<a href="http://jigsaw.w3.org/css-validator/"><img style="border:0;width:88px;height:31px" src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" class="middle" /></a>
<a href="http://feedvalidator.org/check.cgi?url=
<?php $Blog->disp( 'rss2_url', 'raw' ) ?>"><img src="img/valid-rss.png" alt="Valid RSS!" style="border:0;width:88px;height:31px" class="middle" /></a>
<a href="http://feedvalidator.org/check.cgi?url=
<?php $Blog->disp( 'atom_url', 'raw' ) ?>"><img src="img/valid-atom.png" alt="Valid Atom!" style="border:0;width:88px;height:31px" class="middle" /></a>
<!-- InstanceBeginEditable name="Baseline" -->
log_hit(); // log the hit on this page
<!-- InstanceEndEditable --></p>
<!-- InstanceEnd --></html>