Instantly share code, notes, and snippets.

View .readme.md

These commands will install multiple dummy sites in a WordPress Multisite environment.

I wrote this to easily create an environment to work on https://core.trac.wordpress.org/ticket/15317.

Usage

Shell

In the terminal, inside your WordPress directory: simply copy, paste, and run the one-line command.

You can also add it to a location available in your $PATH and invoke the script from the shell.

View searchwp-custom-settings.php
<?php
namespace Soderlind\Demo\SearchWP;
add_filter( 'searchwp_custom_field_keys', __NAMESPACE__ . '\\on_searchwp_custom_field_keys' );
add_filter( 'searchwp_initial_engine_settings', __NAMESPACE__ . '\\on_searchwp_initial_engine_settings' );
/**
* Add custom fields to the search index
*
* @param array $keys
View Install.txt
1) Install cloudflared using homebrew:
brew install cloudflare/cloudflare/cloudflared
2) Create /usr/local/etc/cloudflared/config.yaml, with the following content
proxy-dns: true
proxy-dns-upstream:
- https://1.1.1.1/dns-query
- https://1.0.0.1/dns-query
View site-url.php
<?php
$sites = array_map( 'get_object_vars', get_sites( array( 'deleted' => 0 ) ) ); //WP 4.6+
foreach ( $sites as $site ) {
switch ( $site['blog_id'] ) {
// If you are using Mercator (https://github.com/humanmade/Mercator) and domain mapping is active
case class_exists( '\Mercator\Mapping' ) && $mappings = \Mercator\Mapping::get_by_site( $site['blog_id'] ) :
foreach ( $mappings as $mapping ) {
if ( $mapping->is_active() ) {
$site_url = $mapping->get_domain();
View mercator-add-manage-aliases-link.php
View anonymize-comment-ip.php
<?php
if ( true == apply_filters( 'is_gdpr', true ) ) {
add_filter( 'pre_comment_user_ip', function( $ip ) {
$packed_in_addr = inet_pton( $ip );
if ( 4 == strlen( $packed_in_addr ) ) {
return inet_ntop( inet_pton( $ip ) & inet_pton( '255.255.0.0' ) );
} else {
return inet_ntop( inet_pton( $ip ) & inet_pton( 'ffff:ffff:ffff:ffff:0000:0000:0000:0000' ) );
}
View README.md

PHP Code Beautifier and Fixer (phpcbf)

phpcbf is included when you install PHP_CodeSniffer. Tom McFarlin has written a nice guide on how to install PHP_CodeSniffer and the WordPress Coding Standards Rules for VSCode. If you follow this guide, phpcbf will be installed in the project root, in ./vendor/bin/phpcbf

PHP 5.4 Short Array Syntax Converter

You'll find the convert.php script at GitHub

View no.json
"no": {
"background": "url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTAwIDgwMCI+DQo8cGF0aCBmaWxsPSIjZWYyYjJkIiBkPSJtMCwwaDExMDB2ODAwaC0xMTAweiIvPg0KPGcgZmlsbD0iI2ZmZiI+DQo8cGF0aCBkPSJtMzAwLDBoMjAwdjgwMGgtMjAweiIvPg0KPHBhdGggZD0ibTAsMzAwaDExMDB2MjAwaC0xMTAweiIvPg0KPC9nPg0KPGcgZmlsbD0iIzAwMjg2OCI+DQo8cGF0aCBkPSJtMzUwLDBoMTAwdjgwMGgtMTAweiIvPg0KPHBhdGggZD0ibTAsMzUwaDExMDB2MTAwaC0xMTAweiIvPg0KPC9nPg0KPC9zdmc+DQo=')",
"renderer": {
"landscape": {
"height": "100%",
"width": "137.5%"
},
"portrait": {
"height": "72.727272727273%",
"width": "100%"
View add-superadmin-to-new-site.php
<?php
/**
* Plugin Name: Add All Super-Admins to a New Site
* Description: Will attempt to add all super-admins to a site when it's created.
* Version: 0.1.0
* Plugin URI: https://gist.github.com/soderlind/b0a7abc91eaa2646db38b81acfb532a1
* Author: Per Soderind
* Author URI: https://soderlind.no
* Requires PHP: 7.0.0
*/
View add-lang-to-customizer-previewer.php
<?php
add_action( 'customize_controls_enqueue_scripts', 'add_lang_to_customizer_previewer' );
/**
* If Polylang activated, set the preview url
*
* @author soderlind
* @version 1.0.0
*/
function add_lang_to_customizer_previewer() {