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
845  *
846  * @param int|WP_Post|null $post An optional post. Global $post used if not provided.
847  * @return bool false if a password is not required or the correct password cookie is present, true otherwise.
848  */
849 function post_password_required( $post = null ) {
850      $post = get_post( $post );
851
852      if ( empty( $post->post_password ) ) {
853           /** This filter is documented in wp-includes/post-template.php */
854           return apply_filters( 'post_password_required', false, $post );
855      }
856
857      if ( ! isset( $_COOKIE[ 'wp-postpass_' . COOKIEHASH ] ) ) {
858           /** This filter is documented in wp-includes/post-template.php */
859           return apply_filters( 'post_password_required', true, $post );
860      }
861
862      require_once ABSPATH . WPINC . '/class-phpass.php';
863      $hasher = new PasswordHash( 8, true );
864
865      $hash = wp_unslash( $_COOKIE[ 'wp-postpass_' . COOKIEHASH ] );
866      if ( 0 !== strpos( $hash, '$P$B' ) ) {
867           $required = true;
868      } else {
 
Line Code
872      /**
873       * Filters whether a post requires the user to supply a password.
874       *
875       * @since 4.7.0
876       *
877       * @param bool    $required Whether the user needs to supply a password. True if password has not been
878       *                          provided or is incorrect, false if password has been supplied or is not required.
879       * @param WP_Post $post     Post object.
880       */
881      return apply_filters( 'post_password_required', $required, $post );
882 }
883
884 //
885 // Page Template Functions for usage in Themes.
886 //
887
888 /**
889  * The formatted output of a list of pages.
890  *