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