truongwp / wp-redirect-with-error
处理WordPress中重定向到其他URL时的错误。
0.1.1
2017-05-31 04:59 UTC
This package is not auto-updated.
Last update: 2024-09-29 03:33:14 UTC
README
此类处理WordPress中重定向到其他URL时的错误。使用简单的URL参数和nonce,不使用SESSION或COOKIE,这在WordPress中不建议使用。
如何使用?
只需将文件class-truongwp-redirect-with-error.php
包含到您的主题或插件中,或使用Composer进行安装。
composer require "truongwp/wp-redirect-with-error >= 0.1.1"
然后创建一个全局存储类实例的函数。
<?php function prefix_redirect_error() { static $errors = null; if ( ! $errors ) { $errors = new Truongwp_Redirect_With_Error(); } return $errors; }
您需要注册您使用的所有错误。这可以通过register_error()
方法完成。
<?php function prefix_redirect_error() { static $errors = null; if ( ! $errors ) { $errors = new Truongwp_Redirect_With_Error(); } // $errors->register_error( 'error-code', 'error-message' ); $errors->register_error( 'error-1', 'This is error 1' ); $errors->register_error( 'error-2', 'This is error 2' ); $errors->register_error( 'error-3', 'This is error 3' ); return $errors; }
要将错误传递到重定向URL。而不是
<?php wp_redirect( $url );
您需要
<?php // This will add error code and nonce to URL parameters. $new_url = prefix_redirect_error()->add_error( $url, 'error-2' ); wp_redirect( $new_url );
要显示错误,使用此代码
<?php // This check error code and nonce via URL parameters to get error and display. prefix_redirect_error()->show_error();
要显示特定错误,将错误代码传递给show_error()
方法
<?php prefix_redirect_error()->show_error( 'error-1' );
要更改显示错误时的标记,使用set_template()
方法
<?php function prefix_redirect_error() { static $errors = null; if ( ! $errors ) { $errors = new Truongwp_Redirect_With_Error(); } $errors->register_error( 'error-1', 'This is error 1' ); $errors->register_error( 'error-2', 'This is error 2' ); $errors->register_error( 'error-3', 'This is error 3' ); // Set new error markup. $errors->set_template( '<p class="error error-%1$s">%2$s</p>' ); return $errors; }
您还可以更改一些其他值,阅读class-truongwp-redirect-with-error.php
文件中的代码和注释。
贡献
贡献者:@truongwp
欢迎提交错误报告或Pull请求。