Last updated 29 May 2005. Created on 4 May 2005.
Edited by rivena, Dries, puregin. Log in to edit this page.

Drupal provides a number of ways to make user blog posts accessible. You'll need to decide which ones work best for how your Drupal site is configured:

  • A link in the navigation bar: After activating the blog module, most Drupal themes will include a Blogs link in the header navigation bar. The user blog listing contains the most recent blog posts by all site users. If the site is using xtemplate, you'll need to create the link yourself. Go to site configuration » themes » xtemplate and add in the HTML to create the URL (to find the URL, switch your site theme momentarily to Marvin and the link will be present in the navigation header).
  • Making user blog listings the default home page: Click administer » settings and type in the word "blog" (without quotes) for Default front page.
  • Promoting individual blog posts: If "node" is the Default front page setting, administrators can elect to promote any user blog posts to the front page. Click onto the blog post you want to promote, then the edit tab and then check Promoted to Front Page.
  • Promoting individual blog posts automatically: Click administer » content » configure » content type, then the "configure" link next to "personal blog entry, and check the Promoted front page box in the "Default options" group. (This will work if "node" is the Default front page in administer » settings.
  • Links to recently-updated blogs on the sidebar: Drupal also makes available a Most recent blogs block under administer » blocks.

Looking for support? Visit the forums, or join #drupal-support in IRC.


wheelercreek’s picture

I didn't like how the blog nodes format the dates by default. It always shows "Submitted by !user on !datetime" - where !datetime is shown with a 24 hour clock.

I added this to my theme's Template.php file, and did the trick (Drupal 7):

function themename_preprocess_node(&$vars) {
	$node = $vars['node'];
	if($node->type == 'blog') { 
		$vars['date'] = date('n/j/Y - g:ia ', $node->created);
		$vars['submitted'] = t('By !username   !datetime', array('!username' => $vars['name'], '!datetime' => $vars['date']));

Change "themename" to whatever your theme's name is. This should also probably make use of Drupal's format_date() function, instead of the basic PHP date(). If you use that, you would be able to specify one of the date formats you set in the drupal configuration settings. I just used date() because it was faster.