Skip to content

Instantly share code, notes, and snippets.

Avatar

Roland Barker xnau

View GitHub Profile
@xnau
xnau / xnau-email-html-wrapper.php
Last active Sep 5, 2020
Shows how to wrap an outgoing WordPress email with structural HTML such as a doctype, meta tags, style, etc.
View xnau-email-html-wrapper.php
<?php
/*
* Plugin Name: xnau HTML Email Wrapper
* Description: Adds a structural HTML wrapper to outgoing WordPress emails.
*/
class xnau_email_html_wrapper {
/**
*
@xnau
xnau / pdb-login-recaptcha.php
Last active Jul 17, 2020
Demonstrates a Participants Database custom template that adds a reCAPTCHA to the Participant Login form.
View pdb-login-recaptcha.php
<?php
/**
* @version 1.0
*
* the uses a recaptcha field in the login form if available
*
* @global PDb_reCAPTCHA $PDb_reCAPTCHA
*/
global $PDb_reCAPTCHA;
$recaptcha_fieldname = 'captcha'; // change this to match your captcha field name
@xnau
xnau / pdb-video-element.php
Last active Jul 8, 2020
Shows a way to create a Participants Database form element that displays an embedded video by using WordPress' built-in video embed filters
View pdb-video-element.php
<?php
/**
* Plugin Name: PDB Video Form Element
* Description: Demonstrates how to create a Participants Database form element that displays a video
* Version: 3.0
* Text Domain: pdb-video-form-element
* Domain Path: /languages
*
*/
@xnau
xnau / pdb-list-dropdown-search.php
Last active Aug 8, 2021
Shows how to set up a dropdown search input for a Participants Database list display.
View pdb-list-dropdown-search.php
<?php
/*
template for participants list shortcode output
this template demonstrates a "table-less" responsive layout for the list of records
with a dropdown selector search interface
*/
/**
@xnau
xnau / pdb-single-category-link.php
Last active Mar 5, 2020
Provides an example of a Participants Database custom template that places a link to show all records in the same category as the current record.
View pdb-single-category-link.php
@xnau
xnau / pdb-set-field-readonly.php
Created Dec 21, 2019
Shows how to set the readonly status of a Participants Database field based on the field data
View pdb-set-field-readonly.php
<?php
// set the first_name field to read only
add_filter( 'pdb-before_field_added_to_iterator', function ($field) {
/** @var PDb_Field_Item $field */
if ( $field->name() === 'first_name' ) {
$field->make_readonly();
}
});
@xnau
xnau / pdb-match-multiple-fields.php
Last active Dec 31, 2019
Provides a way to use multiple fields to match a record in the database when importing or adding new records in Participants Database
View pdb-match-multiple-fields.php
<?php
/**
* Plugin Name: PDB Multiple Field Match Check
* Description: checks a new Participants Database submission against the database for a matching record using multiple fields
* Version: 2.1
*
* requires PDB version 1.9.4.2 or later
*/
add_action( 'pdb-incoming_record_match_object', 'xnau_check_for_match' );
@xnau
xnau / pdb-wp-user-shortcodes.php
Last active May 23, 2020
Provides shortcodes for showing Participants Database content according to the logged-in WordPress user.
View pdb-wp-user-shortcodes.php
<?php
/**
* Plugin Name: PDB WP User Shortcodes
* Description: defines several shortcodes for use with Participants Database and WordPress Users
*/
class PDb_User_List_Shortcodes {
/**
* @var string name of the user ID field
@xnau
xnau / pdb-suspend-email-autop.php
Last active Jul 29, 2019
Shows how to conditionally suspend auto-paragraphs with a Participants Database Email Template
View pdb-suspend-email-autop.php
add_filter( 'pdb-rich_text_filter_mode', 'suspend_rich_text_for_sms', 10, 2 );
// changes the rich text filtering mode according to content
function suspend_rich_text_for_sms( $format_setting, $content ) {
// the setting is only altered if the message is an sms message
if ( content_is_sms( $content ) ) {
$format_setting = 'none';
}
@xnau
xnau / pdb-email-cron.php
Last active Jun 9, 2021
Shows how to set up a Participants Database email that will automatically send when conditions are met
View pdb-email-cron.php
<?php
/**
* Plugin Name: PDB Email Cron
* Plugin URI: https://xnau.com/?p=7354
* Description: Provides a basic framework for setting up an automated Participants Database email send
* Version: 1.0
* Author: xnau webdesign
* Author URI: https://xnau.com
* License: GPL2