Changeset 59753
- Timestamp:
- 02/03/2025 04:53:16 PM (5 weeks ago)
- Location:
- trunk/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/post-template.php
r59737 r59753 1781 1781 $aria = ''; 1782 1782 $class = ''; 1783 $redirect_field = ''; 1783 1784 1784 1785 // If the referrer is the same as the current request, the user has entered an invalid password. … … 1799 1800 } 1800 1801 1801 $output = '<form action="' . esc_url( site_url( 'wp-login.php?action=postpass', 'login_post' ) ) . '" class="post-password-form' . $class . '" method="post">' . $invalid_password_html . ' 1802 if ( ! empty( $post->ID ) ) { 1803 $redirect_field = sprintf( 1804 '<input type="hidden" name="redirect_to" value="%s" />', 1805 esc_attr( get_permalink( $post->ID ) ) 1806 ); 1807 } 1808 1809 $output = '<form action="' . esc_url( site_url( 'wp-login.php?action=postpass', 'login_post' ) ) . '" class="post-password-form' . $class . '" method="post">' . $redirect_field . $invalid_password_html . ' 1802 1810 <p>' . __( 'This content is password protected. To view it please enter your password below:' ) . '</p> 1803 1811 <p><label for="' . $field_id . '">' . __( 'Password:' ) . ' <input name="post_password" id="' . $field_id . '" type="password" spellcheck="false" required size="20"' . $aria . ' /></label> <input type="submit" name="Submit" value="' . esc_attr_x( 'Enter', 'post password form' ) . '" /></p></form> -
trunk/src/wp-login.php
r59671 r59753 765 765 766 766 case 'postpass': 767 $redirect_to = $_POST['redirect_to'] ?? wp_get_referer(); 768 767 769 if ( ! isset( $_POST['post_password'] ) || ! is_string( $_POST['post_password'] ) ) { 768 wp_safe_redirect( wp_get_referer());770 wp_safe_redirect( $redirect_to ); 769 771 exit; 770 772 } … … 783 785 * @param int $expires The expiry time, as passed to setcookie(). 784 786 */ 785 $expire = apply_filters( 'post_password_expires', time() + 10 * DAY_IN_SECONDS ); 786 $referer = wp_get_referer(); 787 788 if ( $referer ) { 789 $secure = ( 'https' === parse_url( $referer, PHP_URL_SCHEME ) ); 787 $expire = apply_filters( 'post_password_expires', time() + 10 * DAY_IN_SECONDS ); 788 789 if ( $redirect_to ) { 790 $secure = ( 'https' === parse_url( $redirect_to, PHP_URL_SCHEME ) ); 790 791 } else { 791 792 $secure = false; … … 794 795 setcookie( 'wp-postpass_' . COOKIEHASH, $hasher->HashPassword( wp_unslash( $_POST['post_password'] ) ), $expire, COOKIEPATH, COOKIE_DOMAIN, $secure ); 795 796 796 wp_safe_redirect( wp_get_referer());797 wp_safe_redirect( $redirect_to ); 797 798 exit; 798 799
Note: See TracChangeset
for help on using the changeset viewer.