Rover12421's Blog

The End.

本博Tools栏的修改

开始加Tools栏是用静态的,风格虽然能和整个Blog一样,但是一些不长改动的地方就不能同步了,特别是侧边栏,于是改成现在用的动态,中间的文章内容区域就改成了小工具的显示区域,这样就好多了。这篇文章算是做下记录,方便以后修改。
1.首先是添加tools栏,很Home,About放在一列,修改当前风格的header.php文件,在最后的一对

标签中加一个 *
标签。这里我加

  • Tools 用的相对路径。我的tools目录放在Wordpress跟目录下,这里就有个问题,是相对路径引起的。在首页这个连接是 /tools.html,当跳到tools栏后,就成了/tools/tools.html.在这我都想让他指向/tools/index.php。这就需要在/和/tools/下都要建一个跳转文件,就是
  • 中的tools.html。注意这两个文件不一样。如果用觉得路径就是一样的。我这还是相对路径。
    /tools.html

    ?View Code HTML

      <td class="code" id="p347code37">
        <pre class="html" style="font-family:monospace;">&lt;SCRIPT LANGUAGE="JavaScript"&gt;
    

    location.href=‘./tools/index.php’ </SCRIPT>

    1
    2
    3
    

    /tools/tools.html

    ?View Code HTML

      <td class="code" id="p347code38">
        <pre class="html" style="font-family:monospace;">&lt;SCRIPT LANGUAGE="JavaScript"&gt;
    

    location.href=‘./index.php’ </SCRIPT>

    1
    2
    3
    

    如果嫌麻烦,完全可以在一开始的

    • 中就用绝对路径。
      2。/tools/index.php编写。
      直接用模板文件。把当前模板中的index.php文件内容全部拷贝到/tools/index.php
      当然这样是用不了的。

        <td class="code" id="p347code39">
          <pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
      

      …… …… …… <?php endif; ?>

      1
      2
      3
      4
      5
      

      把中间的这段全部去掉,暂时用一段文字代替,如"*****“。
      但是你打开这文件显示的是空白的。在最前面加一段。

        <td class="code" id="p347code40">
          <pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
      

      define(‘WP_USE_THEMES’, true); require( ‘../wp-load.php’ ); ?>

      1
      2
      3
      4
      

      最关键的是“require( ‘../wp-load.php’ );”这一句。
      打开/tools/index.php已经正常显示了。原本显示文章的区域现在显示的是刚才替换的"*****“。
      3.修改显示区域。/tools/index.php中的显示区域显示的只是一个在线小工具列表,怎样才能根据点击工具名显示相应的工具呢。用文件包含是不会错的,主要怎么去包含进去呢。想了个参数提交的方法。
      /tools/require_file.php

        <td class="code" id="p347code41">
          <pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
      

      $name = $_REQUEST[‘name’]; if ($name == ‘’) { $this_url = ‘list’; } else{ $this_url = $name; }   $url_array = split(‘[/:.<>]’,$this_url); $require_file = “./”.$url_array[0].“.html”;   if ( file_exists( $require_file ) ){ require( $require_file ); } else{ require( “./404.html” ); }   ?>

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      

      很简单,不带参数就显示list.html,参数就是要包含的文件名,用file_exists()来判断文件是否存在。
      $url_array = split(‘[/:.<>]’,$this_url); 这句主要是用来过滤参数的,其实不要也没关系,因为后面用的相对路径"./“这样防止了提交外部连接。
      测试这个文件没问题就用”<?php require( “./require_file.php” );> “替换”*****“;也可以把这个文件整个的替换也是一样。

      4./tools/list.html编写。这个文件很好写了,可以用post提交连接方式,也可以用带参数连接方式。这就不写出来了。
      5.写在最后。
      本来想用require或者include方式插入AD和Feed的,但是都行不通。Feed用的小工具中的文本,不支持php语法。放弃。Ad呢,虽然是修改边栏文件(我这是sidebar1.php),但是效果不好。不管用require还是include,首页显示的栏和栏之间的间距特别大,而在tools中就根本不显示。

Comments