Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: post_password_required

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 3 times in this file.

Line Code
871  *
872  * @param int|WP_Post|null $post An optional post. Global $post used if not provided.
873  * @return bool false if a password is not required or the correct password cookie is present, true otherwise.
874  */
875 function post_password_required( $post = null ) {
876      $post = get_post( $post );
877
878      if ( empty( $post->post_password ) ) {
879           /** This filter is documented in wp-includes/post-template.php */
880           return apply_filters( 'post_password_required', false, $post );
881      }
882
883      if ( ! isset( $_COOKIE[ 'wp-postpass_' . COOKIEHASH ] ) ) {
884           /** This filter is documented in wp-includes/post-template.php */
885           return apply_filters( 'post_password_required', true, $post );
886      }
887
888      require_once ABSPATH . WPINC . '/class-phpass.php';
889      $hasher = new PasswordHash( 8, true );
890
891      $hash = wp_unslash( $_COOKIE[ 'wp-postpass_' . COOKIEHASH ] );
892      if ( ! str_starts_with( $hash, '$P$B' ) ) {
893           $required = true;
894      } else {
 
Line Code
898      /**
899       * Filters whether a post requires the user to supply a password.
900       *
901       * @since 4.7.0
902       *
903       * @param bool    $required Whether the user needs to supply a password. True if password has not been
904       *                          provided or is incorrect, false if password has been supplied or is not required.
905       * @param WP_Post $post     Post object.
906       */
907      return apply_filters( 'post_password_required', $required, $post );
908 }
909
910 //
911 // Page Template Functions for usage in Themes.
912 //
913
914 /**
915  * The formatted output of a list of pages.
916  *