Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
demonstrates how to place a dynamic value in a text field in the Participants Database signup form
<?php
/*
* custom template for signup form
*
*/
// this is the name of the field you want to insert the value into
$ip_field = 'user_ip';
?>
<div class="wrap <?php echo $this->wrap_class ?>" >
<?php // output any validation errors
$this->print_errors(); ?>
<?php $this->print_form_head(); // this must be included before any fields are output. hidden fields may be added here as an array argument to the function ?>
<table class="form-table pdb-signup">
<?php while ( $this->have_groups() ) : $this->the_group(); ?>
<tbody class="field-group field-group-<?php echo $this->group->name ?>">
<?php if ( $this->group->printing_title() ) : // are we printing group titles and descriptions? ?>
<tr class="signup-group">
<td colspan="2">
<?php $this->group->print_title() ?>
<?php $this->group->print_description() ?>
</td>
</tr>
<?php else : ?>
<?php endif; // end group title/description row ?>
<?php while ( $this->have_fields() ) : $this->the_field(); ?>
<?php // this code places the value in the selected field if it isn't in the POST array
if ( $this->field->name === $ip_field && ! isset( $_POST[$ip_field] ) ) {
$this->field->value = $_SERVER['REMOTE_ADDR'];
}
?>
<tr class="<?php $this->field->print_element_class() ?>">
<th for="<?php $this->field->print_element_id() ?>"><?php $this->field->print_label(); // this function adds the required marker ?></th>
<td>
<?php $this->field->print_element_with_id(); ?>
<?php if ( $this->field->has_help_text() ) :?>
<span class="helptext"><?php $this->field->print_help_text() ?></span>
<?php endif ?>
</td>
</tr>
<?php endwhile; // fields ?>
</tbody>
<?php endwhile; // groups ?>
<tbody class="field-group field-group-submit">
<tr>
<td class="submit-buttons">
<?php $this->print_submit_button('button-primary'); // you can specify a class for the button ?>
</td>
<td class="submit-buttons">
<?php $this->print_retrieve_link(); // this only prints if enabled in the settings ?>
</td>
</tr>
</tbody>
</table>
<?php $this->print_form_close() ?>
</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment