Discuz X 系统的 DIY 功能,是一个很强大的功能。方便了很多不会 div+css 的站长。可以使用 DIY 很方便很快捷的,套出一套自己设计的网站模板样式出来。但要想用 DIY 功能,对于一些对网站优化比较看重的站长来说,无疑是个心病。
使用 DIY 功能制作出来的网站,页面会加载相当多的 CSS 样式表,更让人头痛的是,每一个 DIY 模块,都会嵌套至少 4 层以上的 DIV 层。
对于一些自己设计好 Discuz X 模板的站长来说,实在让人纠结!因为自己已经设计好了 DIV+CSS 。而系统自带的那些 DIV 层和 CSS 样式表,就成了多余。不仅不利于网站 SEO, 而且页面也因为那些冗余代码而变的臃肿!页面加载速度变慢!
经过一番研究,发现要想在 DIY 中去除 DIV 层是不可能的!只有在后台的数据调用中去除!修改方法如下:
打开 source/function/function_block.php
把 DIV 代码注释掉
找到以下代码
$str .= "
";*/
if($block['title']) $str .= $block['title'];
$str .= '
if($block['title']) $str .= $block['title'];
$str .= '
';*/
if($block['summary']) {
$block['summary'] = stripslashes($block['summary']);
$str .= "
if($block['summary']) {
$block['summary'] = stripslashes($block['summary']);
$str .= "
$block[summary]
";
}
$str .= block_template($bid);
$str .= '
';*/
$str .= "
";*/
替换成
/* $str .= "
";*/
if($block['title']) $str .= $block['title'];
/* $str .= '
if($block['title']) $str .= $block['title'];
/* $str .= '
';*/
if($block['summary']) {
$block['summary'] = stripslashes($block['summary']);
$str .= "$block[summary]";
}
$str .= block_template($bid);
/* $str .= '
if($block['summary']) {
$block['summary'] = stripslashes($block['summary']);
$str .= "$block[summary]";
}
$str .= block_template($bid);
/* $str .= '
';*/
/* $str .= "
";*/
然后在后台设置好数据调用后,把相关代码放到首页中进行调用。这样,调用出来的数据就不会有多余的 DIV 层,直接调用数据内容。本站也就是通过此方法进行优化设置的。查看源文件,你就明白了!
希望 discuz 能在这方面多考虑一下,网站优化也是很重要的!
为什么那么多专业的大站都选择 phpwind, 而多数小中型网站都选择 Discuz X 。我想原因也在此吧!