wordpress 新人求教如何在后台子项目里面调用其他的php文件?

2013-11-12 14:34:08 +08:00
 jianghu52
google了一遍,发现所有的例子上都是如此坑爹的写着:
<?php
function add_diy_menu() {
add_submenu_page(__FILE__,'子菜单1','子菜单名称1',8,'your-admin-sub-menu1','my_function_submenu1');
}
function my_function_submenu1() {
echo "<h2>子菜单1的页面内容</h2>";
}
add_action('admin_menu','add_diy_menu');
?>
我希望的是子菜单1能调用wp-admin文件夹下的showtest.php文件。(里面只有一句echo “xxxx”)
就是不会写了。
我将 echo "<h2>子菜单1的页面内容</h2>"; 替换成
wp_redirect(admin_url(showtest.php)); 但是不对。报错内容问:
Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\wppro\wp-admin\menu-header.php:162)

求教高人应该怎么写。
2941 次点击
所在节点    程序员
7 条回复
sarices
2013-11-12 14:36:54 +08:00
wp_redirect(admin_url(showtest.php)); 之前不能有输出,你改成js脚本跳转吧
jianghu52
2013-11-12 15:13:45 +08:00
functions.php里面写js么?那跟原来的在function里面写html没有区别啊。
ximan
2013-11-12 20:59:09 +08:00
你干嘛非要把showtest.php单独放到wp-admin里?
直接把这页面的内容放在functions.php里然后按照你这方法调用不就OK了?
这样好处就是升级不影响程序啊!所有东西应该都只放到模板文件夹里是最好的了。
jianghu52
2013-11-12 21:34:52 +08:00
因为很多的功能文件都放在了wp-admin 包里面,我只会在这个包里面调用其他的php文件,如果改在了主题里面,就不会调用了。
lijinma
2013-11-13 09:23:09 +08:00
你把showtest.php写成一个类 class showtest;

然后require一下呗,然后funtion my_function_submenu1() 新建类showtest的实例,再调用函数
jianghu52
2013-11-13 16:06:19 +08:00
@lijinma 这个方法好。我回去实验一下。
axha180
2013-11-13 21:49:25 +08:00
mark

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/88984

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX