向Wordpress页面添加自定义PHP
我有一个小名字生成器脚本,我正试图添加到我的Wordpress网站。脚本本身运行良好,我只是不知道如何正确显示它 这是一个简单的选择表单-用户选择一个角色种族和许多要生成的名称,脚本从各种文本文件中提取并吐出名称。(这里有一个现场演示:)向Wordpress页面添加自定义PHP,php,wordpress,forms,templates,Php,Wordpress,Forms,Templates,我有一个小名字生成器脚本,我正试图添加到我的Wordpress网站。脚本本身运行良好,我只是不知道如何正确显示它 这是一个简单的选择表单-用户选择一个角色种族和许多要生成的名称,脚本从各种文本文件中提取并吐出名称。(这里有一个现场演示:) 选择角色赛: Oofo 不 维尔姆 霍克 要生成的名称: 1. 5. 10 20 如果我将生成器代码放入页面模板中,然后使用该模板创建新页面,则表单将正确显示,但当用户提交表单时: 致命错误:在第7行的/home/content/09/10184409/h
选择角色赛:
Oofo
不
维尔姆
霍克
要生成的名称:
1.
5.
10
20
如果我将生成器代码放入页面模板中,然后使用该模板创建新页面,则表单将正确显示,但当用户提交表单时:
致命错误:在第7行的/home/content/09/10184409/html/namegen-page.php中调用未定义的函数get_header()
(文件名gen-page.php是我的模板文件,它位于我的主题目录中……它似乎试图在我的根目录中找到它。)
我是否需要将表单放在与生成器不同的页面上?我需要使用Wordpress插件来显示PHP吗?
我是Wordpress的新手,不知道自己做错了什么。感谢您的帮助 据我所知,有两种方法可以实现这一点:
我希望这有帮助 问题在于,您正在将表单的
操作直接设置到模板文件中(使用相对URL,在任何情况下都不太可能工作),而这无法正确初始化WordPress。将其替换为使用模板的页面的(绝对)永久链接。尝试将此代码移动到主题中的functions.php文件中,设置为短代码。ShortCodeAPI已经找到了,但下面是您需要做的基本操作
这将涉及将所有代码包装在一个函数中,然后创建一个短代码
在主题的functions.php文件中
//This is only to make sure another function doesn't already have that name
if ( ! function_exists( 'custom_name_generator' ) ) {
function custom_name_generator(){
//copy and paste your code here
}
}
//shortcode name, reference to the function name
add_shortcode( 'custom_name_shortcode', 'custom_name_generator' );
现在,在内容区域内的管理页面中,您可以放置[自定义\u名称\u短代码]。
系统将选择已注册的短代码并执行您的代码
希望有帮助。祝你好运。我已经制作了自定义页面模板,但正如@ebohlman所说,我的表单操作是错误的。谢谢你提供的额外资源!我从来没想过!另一条评论修复了这个问题,但是谢谢你提供的关于创建短代码的信息,我可能会在以后的某一天找到它的用途!
//This is only to make sure another function doesn't already have that name
if ( ! function_exists( 'custom_name_generator' ) ) {
function custom_name_generator(){
//copy and paste your code here
}
}
//shortcode name, reference to the function name
add_shortcode( 'custom_name_shortcode', 'custom_name_generator' );