at path:
ROOT
/
wp-content
/
plugins
/
contact-form-7
/
includes
/
pipe.php
run:
R
W
Run
block-editor
DIR
2026-02-08 11:50:05
R
W
Run
config-validator
DIR
2026-02-08 11:50:05
R
W
Run
css
DIR
2026-02-08 11:50:05
R
W
Run
js
DIR
2026-02-08 11:50:05
R
W
Run
swv
DIR
2026-02-08 11:50:06
R
W
Run
capabilities.php
834 By
2026-02-08 11:50:05
R
W
Run
Delete
Rename
contact-form-functions.php
10.26 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
contact-form-template.php
5.64 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
contact-form.php
30.74 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
controller.php
3.16 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
file.php
10.13 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
filesystem.php
3 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
form-tag.php
14.29 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
form-tags-manager.php
14.57 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
formatting.php
14.47 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
functions.php
16.98 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
html-formatter.php
20.66 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
integration.php
8.76 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
l10n.php
3.37 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
mail-tag.php
4.1 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
mail.php
15.15 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
pipe.php
2.62 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
pocket-holder.php
325 By
2026-02-08 11:50:05
R
W
Run
Delete
Rename
rest-api.php
12.99 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
shortcodes.php
2.66 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
special-mail-tags.php
6.53 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
submission.php
20.23 KB
2026-02-08 11:50:05
R
W
Run
Delete
Rename
upgrade.php
3.1 KB
2026-02-08 11:50:06
R
W
Run
Delete
Rename
validation-functions.php
6.67 KB
2026-02-08 11:50:06
R
W
Run
Delete
Rename
validation.php
3.26 KB
2026-02-08 11:50:06
R
W
Run
Delete
Rename
error_log
up
📄
pipe.php
Save
<?php /** * Pipe-related classes. * * @link https://contactform7.com/selectable-recipient-with-pipes/ */ /** * Class representing a pair of pipe. */ class WPCF7_Pipe { public $before = ''; public $after = ''; public function __construct( $text ) { $text = (string) $text; $pipe_pos = strpos( $text, '|' ); if ( false === $pipe_pos ) { $this->before = $this->after = wpcf7_strip_whitespaces( $text ); } else { $this->before = wpcf7_strip_whitespaces( substr( $text, 0, $pipe_pos ) ); $this->after = wpcf7_strip_whitespaces( substr( $text, $pipe_pos + 1 ) ); } } } /** * Class representing a list of pipes. */ class WPCF7_Pipes { private $pipes = array(); public function __construct( $texts = null ) { foreach ( (array) $texts as $text ) { $this->add_pipe( $text ); } } private function add_pipe( $text ) { $pipe = new WPCF7_Pipe( $text ); $this->pipes[] = $pipe; } public function merge( self $another ) { $this->pipes = array_merge( $this->pipes, $another->pipes ); } public function do_pipe( $input ) { $input_canonical = wpcf7_canonicalize( $input, array( 'strto' => 'as-is', ) ); foreach ( $this->pipes as $pipe ) { $before_canonical = wpcf7_canonicalize( $pipe->before, array( 'strto' => 'as-is', ) ); if ( $input_canonical === $before_canonical ) { return $pipe->after; } } return $input; } public function collect_befores() { $befores = array(); foreach ( $this->pipes as $pipe ) { $befores[] = $pipe->before; } return $befores; } public function collect_afters() { $afters = array(); foreach ( $this->pipes as $pipe ) { $afters[] = $pipe->after; } return $afters; } public function zero() { return empty( $this->pipes ); } public function random_pipe() { if ( $this->zero() ) { return null; } return $this->pipes[array_rand( $this->pipes )]; } public function to_array() { return array_map( static function ( WPCF7_Pipe $pipe ) { return array( $pipe->before, $pipe->after, ); }, $this->pipes ); } } /** * Trait for classes that hold cross-tag WPCF7_Pipes object. */ trait WPCF7_PipesHolder { protected $pipes; public function get_pipes( $field_name ) { if ( isset( $this->pipes[$field_name] ) ) { return $this->pipes[$field_name]; } $result = new WPCF7_Pipes(); $tags = $this->scan_form_tags( array( 'name' => $field_name, ) ); foreach ( $tags as $tag ) { if ( $tag->pipes instanceof WPCF7_Pipes ) { $result->merge( $tag->pipes ); } } return $this->pipes[$field_name] = $result; } public function scan_form_tags() { return array(); } }