Skip to content

Instantly share code, notes, and snippets.

Roland Barker xnau

View GitHub Profile
@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 Apr 10, 2020
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 Nov 22, 2019
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
@xnau
xnau / pdb-show-user-record.php
Created Apr 2, 2019
Shows how to display a single Participants Database record for a logged-in WordPress user.
View pdb-show-user-record.php
<?php
// this is meant to be used with some kind of plugin that lets you insert php into a page
//
// the Participants Database field named 'user_login' is expected to have the user's user login value
//
$current_user = wp_get_current_user();
if ( $current_user->ID ) {
$record_id = Participants_Db::get_record_id_by_term('user_login', $current_user->user_login );
@xnau
xnau / pdb_email_reply_to_header.php
Created Feb 27, 2019
Shows how to set the "reply-to" header on a Participants Database email template
View pdb_email_reply_to_header.php
<?php
/**
* Plugin Name: PDB Set Reply-To Header
* Description: sets the reply-to header for a Participants Database email template
*/
add_filter( 'pdb-template_email_header', 'xnau_add_reply_to_header', 20, 2 );
/**
* adds a reply-to header to a Participants Database email template
*
You can’t perform that action at this time.