<?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=0'); ?>
这句代码报错的 页面上报错:
Fatal error: Call to undefined function wp_list_cats() in D:\phpnow\htdocs\mulan\wp-content\themes\muse\blog.php on line 48
意思好象是wp_list_pages()函数未定义。想要自己用html css javascript写模板
index.php链接到blog.php时,在blog.php中调用就报错了 
但是如果直接在index.php中调用就很正常,index.php和blog.php在同一个目录下,不明白是为什么。

解决方案 »

  1.   

    index.php
    有引入那个函数
    而blog.php没有你把index.php里面的一些require也加到blog.php试试
      

  2.   


    好像没有引入什么的 
    PHP怎么引入函数啊 
    而且 wordpress中的wp_list_cats函数在什么地方 ? 
      

  3.   

    解决了 
    在要调用函数的文件的前面加上<?php require('D:/phpnow/htdocs/mulan/wp-blog-header.php');?> 或者<?php require_once('D:/phpnow/htdocs/mulan/wp-blog-header.php');?> 
    路径由自己定 不过我有几个疑问 1. require 和 require_once 有什么区别 都是调用函数的 语法也是一样的 使用起来页面上没有看出区别。
    2. php中怎么获得上一级目录,用绝对路径不是很理想,../ 好像不对哦
    3. 调用wp_list_cats()函数以后,会出现 “页面”——“实例页面”这样的链接,怎么去掉
    4. wp_list_cats()函数的源代码在哪里?
      

  4.   

    require_once就是php的引用啊好比c的include
      

  5.   

    http://www.csharpwin.com/dotnetspace/5716r9253.shtml  lz可以看看这个   require_once() 函数会先检查目标档案的内容是不是在之前就已经导入过了,如果是的话,便不会再次重复导入同样的内容。 
      

  6.   

    嘿 .. 谢谢大家 .. 明白的差不多了 .. 
    php怎么获得上一级目录啊,比如要在D:/phpnow/htdocs/mulan/wp-content/themes/my/index.php文件中表示D:/phpnow/htdocs/mulan/wp-blog-header.php文件
      

  7.   

    ../写是可以的,只不过这个相对路径是根据你当前运行的脚本的相对路径。如果你确认要引用的文件在上一层目录,那么很可能实际执行的那个页面不是你预期的那个。举个例子:目录结构:
    test/1/a.php
    test/2/b.php
    test/2/c.php
    a.php
    -----------
    require '../2/c.php';
    b.php
    -----------
    echo $a;
    c.php
    -----------
    $a = 123;
    运行http://localhost/b.php你可能会认为没错,因为c.php相对于a.php来说确实是../2/c.php这样的路径。不过很可惜,你实际执行的是b.php,那么当前脚本的目录和c.php处于相同目录。所以a.php中要引用c.php应该写为:
    ./c.php或c.php这就是相对路径的坏处,当有文件相互引用时,相对路径会让逻辑看起来一塌糊涂。所以实际中我们都喜欢用相对路径。但直接写磁盘物理路径也不好,等你项目迁移了,那物理路径也许会变。最好的写法是基于web根目录的绝对路径。
    也就是以/开头,这个/就是你的网站根目录,然后向下写绝对路径。
    或者用realpath和dirname来动态返回物理路径再拼凑出绝对路径。
      

  8.   

    上面有句话错了:所以实际中我们都喜欢用绝对路径。或者用realpath、dirname等等动态获取相对路径。
    关于require 和 require_once 有什么区别,具体区别你可以自己搜一下,到处都是说这个的,我就不阐述了。不过要告诉你的是实际项目中最好用require和include,不要用带once的那个,带once的只是让php本身避免一些重复包含的错误,但这会大大降低效率。而这些问题如果程序猿本身素质够高的话都是可以避免的,没必要让php降低性能去做这件事。至于3、4两个问题,都属于wordpress系统本身的问题,严格来讲不属于php的范畴,你去他们官方论坛求助会比在这里问效果好很多。