$posted_data Posted data. * @param string $rate_limit_identifier Identifier used only for hashing. * @param int|null $timestamp Current timestamp. */ public function build_from_posted_data( array $posted_data, string $rate_limit_identifier = '', ?int $timestamp = null ): SubmissionContext { return $this->build_from_submitted_data( $posted_data, self::DEFAULT_FORM_ID, $rate_limit_identifier, $timestamp ); } /** * Build context from a Contact Form 7 submission object or fallback data. * * @param object|null $submission Submission object. * @param array $fallback_posted_data Fallback posted data. * @param string $rate_limit_identifier Identifier used only for hashing. * @param int|null $timestamp Current timestamp. */ public function build_from_submission( $submission, array $fallback_posted_data, string $rate_limit_identifier = '', ?int $timestamp = null ): SubmissionContext { $posted_data = $fallback_posted_data; if ( is_object( $submission ) && method_exists( $submission, 'get_posted_data' ) ) { $submission_data = $submission->get_posted_data(); if ( is_array( $submission_data ) ) { $posted_data = $submission_data; } } return $this->build_from_posted_data( $posted_data, $rate_limit_identifier, $timestamp ); } }