【发布时间】:2021-04-26 16:49:06
【问题描述】:
我正在学习使用更新用户配置文件的高级自定义字段创建表单的教程。当我按下提交按钮时,页面变为空白(白色)。也许你们可以在下面看到导致问题的一行代码。该教程说它告诉 Wordpress 它正在更新用户而不是页面。
我希望页面重新加载,或者在提交后重定向到另一个页面。
教程参考:https://usersinsights.com/acf-user-profile/
此代码在functions.php 中。它转换简码并提交数据,它确实会更新,但提交后页面上什么都没有,它只是空白。
功能 my_acf_user_form_func( $atts ) { $a = shortcode_atts(数组( 'field_group' => '' ), $atts ); $uid = get_current_user_id(); if ( !empty ( $a['field_group'] ) && !empty ( $uid ) ) { $选项 = 数组( 'post_id' => 'user_'.$uid, 'field_groups' => 数组(intval($a['field_group'])), 'return' => add_query_arg('updated', 'true', get_permalink()) ); ob_start(); acf_form($options); $form = ob_get_contents(); ob_end_clean(); } 返回$表格; } add_shortcode('my_acf_user_form', 'my_acf_user_form_func'); //添加AFC表格头 函数 add_acf_form_head(){ 全球 $post; if ( !empty($post) && has_shortcode( $post->post_content, 'my_acf_user_form' ) ) { acf_form_head(); } } add_action('wp_head', 'add_acf_form_head', 7);【问题讨论】:
-
更容易启用错误检查和错误显示。您可以在您的 wp-config.php 文件中执行此操作 -
define( 'WP_DEBUG',true);define( 'WP_DEBUG_DISPLAY',TRUE );- 希望能告诉您哪一行出错了 -
谢谢约翰。这使我走上了解决它的道路。我发现它不喜欢将 acf_form_head() 添加到头部 (wp_head)。然后我发现一篇文章说acf_form_head()应该在get_header()之前。我在 page.php 上添加了它,因为我想不出在 functions.php 中执行它的方法并且它有效! :) 感谢导致解决方案的提示。测试时我会一直保持 wp_debug_display 开启。