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
787  *
788  * @param int|WP_Post|null $post An optional post. Global $post used if not provided.
789  * @return bool false if a password is not required or the correct password cookie is present, true otherwise.
790  */
791 function post_password_required( $post = null ) {
792      $post = get_post($post);
793
794      if ( empty( $post->post_password ) ) {
795           /** This filter is documented in wp-includes/post-template.php */
796           return apply_filters( 'post_password_required', false, $post );
797      }
798
799      if ( ! isset( $_COOKIE[ 'wp-postpass_' . COOKIEHASH ] ) ) {
800           /** This filter is documented in wp-includes/post-template.php */
801           return apply_filters( 'post_password_required', true, $post );
802      }
803
804      require_once ABSPATH . WPINC . '/class-phpass.php';
805      $hasher = new PasswordHash( 8, true );
806
807      $hash = wp_unslash( $_COOKIE[ 'wp-postpass_' . COOKIEHASH ] );
808      if ( 0 !== strpos( $hash, '$P$B' ) ) {
809           $required = true;
810      } else {
 
Line Code
814      /**
815       * Filters whether a post requires the user to supply a password.
816       *
817       * @since 4.7.0
818       *
819       * @param bool    $required Whether the user needs to supply a password. True if password has not been
820       *                          provided or is incorrect, false if password has been supplied or is not required.
821       * @param WP_Post $post     Post data.
822       */
823      return apply_filters( 'post_password_required', $required, $post );
824 }
825
826 //
827 // Page Template Functions for usage in Themes
828 //
829
830 /**
831  * The formatted output of a list of pages.
832  *