WP Tournament Registration
A simple but highly configurable tournament registration form providing shortcodes for form, list, editor and export views.
Plugin info
Maintenance & Compatibility
Maintenance score
Possibly abandoned • Last updated 530 days ago
Is WP Tournament Registration abandoned?
Possibly abandoned (last update 530 days ago).
Compatibility
Similar & Alternatives
Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.
Description
WP Tournament Registration is a plugin that provides shortcodes intended for registering players with hobby sport events. As a matter of fact, it was made for the championship of my local chess club. There are four shortcodes for different views:
[wptournregedit tournament_id="myID" /]is an editor for the players’ data.[wptournregexport tournament_id="myID"]...[/wptournregexport]is a plain text export filter[wptournregform tournament_id="myID"]...[/wptournregform]is a form where people can register with the competition. It covers some[wptournregfield field="fieldname" /]shortcodes which customize the desired inputs.[wptournreglist tournament_id="myID" /]is a sortable list view of all approved participants.
All these shortcodes are customizable through a set of optional attributes.
Available fields
address[text]: self-explanatory.affiliation[text]: club or association.approved[checkbox]: entries become visible in in the list view or through the export filter only afer approved was checked.birthyear[integer]: self-explanatorycity[text]: self-explanatory.custom1,custom2,custom3,custom4,custom5[text]: if anything is missing.email[text]: comma-separated list of user names to notify of a new participant.fee_is_paid[checkbox]: self-explanatory.firstname[text]: self-explanatory.id[read-only]: an integer that serves as primary key and is incremented with every registration. Use it to separate entries if people register twice.ip[read-only]: The remote IP of the submitter throughwptournregform. May be useful for security checks.lastname[text]: self-explanatory.message[textarea]: self-explanatoryphone1[text]: self-explanatoryphone2[text]: self-explanatorypostcode[integer]: self-explanatoryprotected[checkbox]: if checked, all contact data of the particiapant are suppressed in list view.rating1[integer]: a rating that is used to calculate ranking lists.rating2[integer]: another rating that is used to calculate ranking lists.time[read-only]: a timestamp that records the exact date and time of submitting.
It is advisable not to misuse fields since there are some internal checks on the values. Use the custom fields instead. It is hard to say what the length of input fields is in characters as this depends on what is going to. But all are of reasonable length for their purpose.
Attributes
wptournregedit:
tournament_id(required).-
display_fieldsa comma-separated list of field names in the order of view.wptournregexport:
-
tournament_id(required). allif set to any value the list shows all enries, otherwise the ones with a checkedapprovedflag only.classadds a space separated list of custom CSS classes to the form.cssadds a style attribute with custom CSS to the form.idadds a custom CSS id to the form.fields_seta comma-separated list of fields which get ignored if empty.filenamethe name of the export file.-
formata plain text string where all field names preceded by a percent sign (%fieldname) get replaced by the respective field values.wptournregform:
-
tournament_id(required). backlinkadds a backlink to the plugin’s project page.classadds a space separated list of custom CSS classes to the form.cssadds a style attribute with custom CSS to the form.idadds a custom CSS id to the form.disabledsubmit and reset buttons are disabled if set to any value.-
emaila comma-separated list of login names who get an E-mail notification if somebody registeres.wptournreglist:
-
tournament_id(required). allif set to any value the list shows all enries, otherwise the ones with a checkedapprovedflag only.backlinkadds a backlink to the plugin’s project page if set to any value.classadds a space separated list of custom CSS classes to the form.cssadds a style attribute with custom CSS to the form.idadds a custom CSS id to the list.display_fieldsa comma-separated list of fields on view in that particular order.headingsa comma-separated list of column headings in that particular order.protected_fieldsa comma-separated list of fields that are suppressed if theprotectedflag is set in the database for a certain user.-
notsortablethe columns are sorttable by default. This is suppressed if set to any value.wptournregfield:
-
checkedchecks a checkbox if set to any value. classadds a space separated list of custom CSS classes to the form.cssadds a style attribute with custom CSS to the form.idadds a custom CSS id to the form.disableddisables the field if set to any value.fieldone of the field names (cf. list above).labelthe label of the field.placeholderthe placeholder is shown in an empty field.requiredif set to any value the field is marked as required.
Usage
The first example is a registration form. Several wptournregfield shortcodes are wrapped by a wptournregfield one. You can put HTML elements between (fi. fieldsets) in order to design your form:
[wptournregform tournament_id="my_tournament" css_id="my_tournament" email="[email protected]"]Red labels indicate required fields!
[wptournregfield field="message" label="Your message" placeholder="Whatever you like to tell us." /][/wptournregform]
The next instance is an editor for the data of the tournament. The non-approved players are highlihted in the selection list:
[wptournregedit tournament_id="my_tournament" display_fields="approved,firstname,lastname,affiliation,email,id,time,ip,rating1,phone1,phone2,protected,custom1,message" /]
Next is a list view. Normally you will make an password restricted full list for internal use and a small one for the public. Only approved players are on view:
[wptournreglist tournament_id="my_tournament" display_fields="lastname,firstname,affiliation,email,phone1,phone2,message" headings="Last Name,First Name,Club,E-mail,Phone 1, Phone 2, Message" /]
The next shortcode exports all participants into a csv list which than the is loaded into a tournament manager app (Swiss-Chess in this case). Here also non-approved players get exported. Wrap the field names in sections signs (§) in order to output the respective value.
[wptournregexport tournament_id="my_tournament" all="1" format='"§lastname§, §firstname§";"§affiliation§";"";"";"§rating1§";""' linebreak="1" filename="swiss-chess.txt"]Download Swiss-Chess list[/wptournregexport]
The following shortcode exports a list of all approved participants who have provided you with a mail address in a way you can directly copy and paste into a mail client. See FAQ for issues with some characters!
[wptournregexport tournament_id="my_tournament" format='"§firstname§ §lastname§" LOWER_THAN§email§>,' fields_set="email" filename="mails.txt"]Download mail list (use BCC!)[/wptournregexport]
Installation
- In your wp-admin (WordPress dashboard), go to Plugins Menu > Add New
- Search for ‘wp-tournament-registration’ in search field on top right.
- In the search results, click on ‘Install Now’ button next to WP Tournament Registration.
- Once the installation is complete, click Activate button.
You can also install the plugin manually by following these steps:
1. Download the plugin zip file from https://wordpress.org/plugins/wp-tournament-registration/
2. In your wp-admin (WordPress dashboard), go to Plugins Menu > Add New
3. Click the ‘Upload Plugin’ button at the top.
4. Upload the zip file you downloaded in Step 1.
5. Once the upload is finish, click on Activate.
The development repository is hosted on GitHub.
Frequently Asked Questions
Yes!
The shortcode is rendered as HTML which means that there are some protected characters. Fi. if you need tabsops, provide them as HTML entities ( in this case).
A special issue is the <. The format method strips HTML tags (and some other things) in order to avoid injection of evil scripts, even as HTML entity. LOWER_THAN will be substituded by a <.
No settings page at all! Everything is done with shortcodes.
WP Tournament Registration employs a single database table on multisite installs. This is
desired behaviour. Fi., if a multisite provides different language versions of the same site,
then you can provide a registration form in every language for the same tournament. For protecting
a site against others it is probably a good idea to namespace your tournament IDs somehow, eg.
mysite_mytournamentid
WP Tournament Registration does some checks to avoid spam.
Review feed
Changelog
1.3.0
- E-mail notification fix (remark the doc update!)
1.2b
- tested with WordPress 6.3
- message field bug fixed
1.1.2
- tested with WordPress 5.7
- small documentation fixes
1.1.1
- minor fix
1.1.0
- New feature: duplicate check on new participants.
- Removed deprecated
array_key_exists()for PHP 8 compatibility. - Removed deprecated array and string offset access syntax with curly braces.
cssattribute now works inwptournregfield.
1.0.0
- Initial Public Release


