我试图在函数中创建自己的形式.php。我做了很多研究,发现使用Post /重定向/ Get来做一个表格是最安全的,以避免重新提交POST请求。一切都很好。表单发送 POST,操作文件处理所有内容,将其保存到 SESSION 并将其重定向回去。表格在页面上:http://plovarnaluhacovice.icreation.cz/my-account/zustatek-kreditu/但我的问题是,我不希望链接“发送”有一个链接:http://plovarnaluhacovice.icreation.cz/ wp-内容/主题/Divi_Child/进程.php,但出于安全原因,http://plovarnaluhacovice.icreation.cz/ 我的帐户/zustatek-kreditu/进程.php。为了让它变得有点复杂,我使用了WooCommerce插件,这个页面(/zustatek-kreditu/)被添加到WooCommerce“我的帐户”页面菜单(照片)。形式:<form action="http://plovarnaluhacovice.icreation.cz/wp-content/themes/Divi_Child/process.php" method="post"> <p>Uživatelské jméno: <br><input type="text" name="username" /></p> <p>Heslo: <br><input type="password" name="password" /></p> <br><button type="submit" name="save">Přidat</button></form>文件结构:wp-内容/主题/ 1.Divi_Child 2.函数.php 3.进程.php自定义 Woo 商务菜单://ZŮSTATEK KREDITU// ------------------// 1. Register new endpoint to use for My Account page// Note: Resave Permalinks or it will give 404 errorfunction zustatek_kreditu_endpoint() { add_rewrite_endpoint( 'zustatek-kreditu', EP_ROOT | EP_PAGES );}add_action( 'init', 'zustatek_kreditu_endpoint' ); // ------------------// 2. Add new query varfunction zustatek_kreditu_query_vars( $vars ) { $vars[] = 'zustatek-kreditu'; return $vars;}add_filter( 'query_vars', 'zustatek_kreditu_query_vars', 0 );// ------------------// 3. Insert the new endpoint into the My Account menufunction zustatek_kreditu_link_my_account( $items ) { $items['zustatek-kreditu'] = 'Zůstatek kreditu'; return $items;}add_filter( 'woocommerce_account_menu_items', 'zustatek_kreditu_link_my_account' );// ------------------// 4. Add content to the new endpoint?> <form action="http://plovarnaluhacovice.icreation.cz/wp-content/themes/Divi_Child/process.php" method="post"> <p>Uživatelské jméno: <br><input type="text" name="username" /></p> <p>Heslo: <br><input type="password" name="password" /></p> <br><button type="submit" name="save">Přidat</button> </form><?php
1 回答
LEATH
TA贡献1936条经验 获得超6个赞
最简单的解决方案是在wp中创建一个页面模板,将其添加到名为“Page-process.php”的主题文件夹中,并将进程.php的所有编码放入此模板中,并将以下文本添加到此模板的顶部:
创建一个wp页面,并在“页面属性”元框下选择此模板作为页面模板。
在表单代码上,替换刚创建的页面的操作 URL,并将其链接到您创建的新页面模板。
操作 =“http://plovarnaluhacovice.icreation.cz/wp-content/themes/Divi_Child/process.php”
回顾:您将用WordPress上的普通页面替换您的“porcess.php”,该页面将使用您放置在“进程.php”上的页面PHP代码,但此权限将允许您使用wp页面运行代码,而不是直接在主题PHP文件上运行代码。
谢谢,让我知道发生了什么!:)
- 1 回答
- 0 关注
- 68 浏览
添加回答
举报
0/150
提交
取消