Joomla!吧

Sunday, May 20th

Last update04:29:37 AM GMT

You are here: Joomla教程 >> Joomla进阶教程 >> 用表格布局来显示Joomla博客内容

用表格布局来显示Joomla博客内容

使用过Joomla的朋友都应该清楚,Joomla网站默认的博客布局有点奇怪,如果你的显示内容没有比较一致的话文,就会导致章错位,页面非常难看,严重影响了网站的外观。其效果就像下图所显示的那样:

正如你所看到的,左中右三个栏目不对齐,上面的内容会将你的下方的内容挤下去。不过很多朋友都没有想过如何来改变这个布局,让内容布局显得更加整齐有条理呢?哈哈,没事,有我们聪明的Joomla8!我们下面要做的就是让内容布局显得像下面那幅图那样显示:

恩,让Joomla8带你细细道来,其实这是非常简单的一件事。

首先,找到文件:/components/com_content/views/section/tmpl/blog.php和 /components/com_content/views/category/tmpl/blog.php.

然后再模板文件夹里面增加一个文件夹

增加一个html文件夹

增加一个文件夹,名称为com_content.

增加一个文件夹,名称为你想要修改的博客样式的名称,是类别还是单元,分别为section或者category.

最后copy一下blog.php文件到刚刚创建的那个文件夹

刚刚的路径也就是:/html/com_content/section/blog.php.

然后编辑blog.php文件。

如果你使用的是Joomla1.5.6或者以下的版本,那么请找到第45到66行,将其修改为以下代码:

<tr>
   <td valign="top">
          <table width="100%"  cellpadding="0" cellspacing="0">
                 <?php for( $z = 0, $c = ceil( $this->params->get('num_intro_articles', 4) / $this->params->get('num_columns') );
 $z < $c; $z++ ) : ?>
                        <tr>
                           <?php $z == 0 ? $loop = 0 : $loop = $z * $this->params->get('num_columns'); ?>
                           <?php for( $y = $loop; $y < ( $loop + $this->params->get('num_columns') ); $y++ ) : ?>
                                  <?php if ($y > $loop) : $divider = " column_separator"; endif; ?>
                                  <td valign="top" width="<?php echo intval(100 / $this->params->get('num_columns')) ?>%" 
class="article_column<?php echo $divider ?>">
                                         <?php
                                         if ($y < $this->total && $y < ($numIntroArticles)) :
                                                $this->item =& $this->getItem($y, $this->params);
                                                echo $this->loadTemplate('item');
                                         endif;
                                         ?>
                                  </td>
                           <?php endfor; ?>
                        </tr>
                 <?php endfor; ?>
          </table>
   </td>
</tr>
<?php $i = $i + $this->params->get('num_intro_articles') ; ?>

如果你使用的是Joomla1.5.7或者更高的版本,因为此后的版本都增加了点东东,所以代码有所区别,请找到第48到73行,将其替换为如下代码:

<?php
                if ($this->params->get('multi_column_order')) : // order across, like front page
                        for( $z = 0, $c = ceil( $this->params->get('num_intro_articles', 4) / $this->params->get('num_columns') );
 $z < $c; $z++ ) : 
                                $divider = ''; ?>
                                <tr>
                                        <?php $z == 0 ? $loop = 0 : $loop = $z * $this->params->get('num_columns'); ?>
                                        <?php for( $y = $loop; $y < ( $loop + $this->params->get('num_columns') ); $y++ ) : ?>
                                                <?php if ($y > $loop) : $divider = " column_separator"; endif; ?>
                                                <td valign="top" width="<?php echo intval(100 / $this->params->get('num_columns')) ?>%" 
class="article_column<?php echo $divider ?>">
                                                        <?php if ($y < $this->total && $y < ($numIntroArticles)) :
                                                                $this->item =& $this->getItem($y, $this->params);
                                                                echo $this->loadTemplate('item');
                                                        endif;
                                                        ?>
                                                </td>
                                        <?php endfor; ?>
                                </tr>
                        <?php endfor;
                        $i = $i + $this->params->get('num_intro_articles') ;

保持文件,OK,现在你可以看看你的Joomla博客布局是不是有所改变了!

最后提醒大家一点,修改之前请先备份网站,否则,以不留神,网站挂了别骂我哈...

发表评论


验证码
刷新