A bash script for quickly creating local WordPress sites on Ubuntu in WSL.

View on GitHub

Usage

  1. Create and/or navigate to the directory where you want to create WordPress sites:
    mkdir -p /path/to/dev/directory && cd /path/to/dev/directory
  2. Clone the repository:
    git clone git@github.com:joshmckibbin/wp-create.git .
  3. Make sure you have execute permissions:
    chmod +x wp-create.sh
  4. Copy the .env-sample file to .env and replace the environment variables accordingly:
    cp .env-sample .env
  5. Run the script
    ./wp-create.sh

There is also a wp-destroy.sh script that undoes everything.
Visit the GitHub page for more info.

Why is this necessary?

Why not just use LocalWP?

LocalWP uses its own Docker containers and cannot be ran directly in WSL, which makes it run pretty slow. It also means that you have to do all of your coding directly in Windows and not WSL. I much prefer coding in a Linux environment.

Why not just use WordPress Playground?

No data persistence, so database development and testing is impossible.

What about wp-env?

In my experience, wp-env is incredibly buggy and inconsistent.

A simple WordPress plugin that shows phpinfo() in a dashboard widget and in a shortcode.

View on WordPress.org

Usage

Using the shortcode

Simply type [phpinfo] in the body of a shortcode field when creating a post or page. You can also set it to output without css styles: [phpinfo output=table-nocss].

Changelog

1.0.4

  • Compatibility with WordPress 6.3
  • Converted LESS styles to SASS and recompiled to CSS

1.0.3

  • Compatibility with WordPress 6.1.1

1.0.2

  • Added additional escaping
  • Removed array output option from shortcode

1.0.1

  • Added escaping
  • Fixed text-domain declarations

1.0.0

  • Initial Release

A simple WordPress plugin for configuring a site to use a SMTP server to send email instead of the default PHP mail function.

View on WordPress.org

Why is this necessary?

When working in a development environment, more than likely the PHP mail function is not going to work. I found that most of the SMTP plugins available on WordPress.org do way too much. This plugin does one thing and one thing only… Sends WordPress email using SMTP.

You can now easily test your forms in your local dev environment without installing a mail server!

Changelog

1.1.0

  • Added the ability to manually override plugin options by defining the SSMTP_MAILER constant
  • Changed PHP requirement to 8.0
  • The SMTP password is now stored as a salted hash
  • Errors now get added to the PHP error log when debug option is enabled
  • Some minor code refactoring

1.0.5

  • Compatibility with WordPress 6.3

1.0.4

  • Added a debug option

1.0.3

  • Compatibility with WordPress 6.1.1

1.0.2

  • Replaced all PHP short tags

1.0.1

  • text-domain fix
  • Changed permissions from administrator to manage_options
  • Added options page link on plugins page
  • Updated the description

1.0.0

  • Initial commit

A simple class for interacting with the Mediasite API. Download

Basic Setup

// Include the class
require 'Mediasite.class.php';

// Settings
$server = 'https://SERVER.mediasite.com/Mediasite';
$apikey = 'apikey_string';
$username = 'username';
$password = 'password';

// Initialize the class
$ms = new Mediasite($server, $apikey, $username, $password);

Sample Requests

Create a Presentation and Upload a Video To It

// Create Presentation
$user = USER_TO_CREATE_THE_PRESENTATION_FOR;
$presentation = $ms->createPresentation('Title', $user);

// Upload Video to Presentation
$video_path = PATH_TO_THE_VIDEO;
$upload = $ms->uploadVideo($presentation['Id'], $video_path);

// Show the URL of the new presentation
echo $upload;

View/Fork on Github

A simple class for interacting with the 3play Media API. Download

Basic Setup

// Include the Class
require_once 'ThreePlay.class.php';

// Set the API key provided by 3play
$apikey = 'xxxxxxxxxxxxxx';

// Initialize a new instance of the Class
$threeplay = new ThreePlay($apikey);

Sample Requests

Check the status of a transcript

$file_id = 0000000
$threeplay->status($file_id);

Download a transcript file

$file_id = 0000000; // Replace with the ID of a transcript file
$threeplay->download($file_id);

Create a Batch and order a transcript

// Create the Batch
$batch_name = 'New Batch';
$batch_id = $threeplay->createBatch($batch_name);

// Order the Transcript
$file = 'path/to/file.mp4';
$threeplay->order($file, 'Name of Video', $batch_id);

View/Fork on Github