Skip to content

Instantly share code, notes, and snippets.

View adamsilverstein's full-sized avatar
💭
Working remotely, as usual

Adam Silverstein adamsilverstein

💭
Working remotely, as usual
View GitHub Profile
<?php
/**
* Add Google tag to WordPress.
*
* @wordpress-plugin
* Plugin Name: google-tag-for-wp.
* Description: Add the Google tag to the header of a WordPress site.
* Plugin URI: n/a
* Version: 1.0.0
* Author: Adam Silverstein, Google
@adamsilverstein
adamsilverstein / output-webp-from-png.php
Last active June 5, 2024 15:49
Output WebP images from PNG uploads
<?php
/**
* Outout WebP sub size images from PNG uploads.
*
* @wordpress-plugin
* Plugin Name: WebP-from-PNG.
* Description: Output WebP sub size images for PNG uploads.
* Plugin URI:
* Version: 1.0.0
* Author: Adam Silverstein, Google
<?php
/**
* Disable password reset
*
* @wordpress-plugin
* Plugin Name: Disable password reset.
* Description: Disable password reset.
* Plugin URI:
* Version: 1.0.0
* Author: Adam Silverstein, Google
@adamsilverstein
adamsilverstein / yield-to-main.js
Last active January 9, 2024 20:59
Yield to main thread
/*
* Yielding method using scheduler.yield, falling back to setTimeout:
*/
async function yieldToMain() {
if('scheduler' in window && 'yield' in scheduler) {
return await scheduler.yield();
}
return new Promise(resolve => {
setTimeout(resolve, 0);
SELECT
*
FROM(
SELECT
JSON_VALUE(third_party, '$.entity') as entity,
CAST(APPROX_QUANTILES(CAST(JSON_QUERY(third_party, '$.blockingTime') AS FLOAT64), 100)[offset(75)] as INT64) as p75_blockingTime,
COUNT(page) as usage
FROM
`httparchive.all.pages`,
UNNEST(technologies) as technologies,
%%bigquery oembeds
WITH
WPEmbeds AS (
SELECT
url,
JSON_EXTRACT(payload, '$._cms.wordpress.has_embed_block') AS has_embed_block,
CAST( JSON_EXTRACT(payload, '$._cms.wordpress.embed_block_count.total') AS FLOAT64 ) AS embed_block_count_total,
JSON_EXTRACT_ARRAY(payload, '$._cms.wordpress.embed_block_count.total_by_type') AS embed_block_count_total_by_type,
FROM `httparchive.pages.2023_10_01_*`
%%bigquery bytype
WITH
embed_data AS (
SELECT
url,
JSON_EXTRACT(payload, '$._cms.wordpress.has_embed_block') AS has_embed_block,
CAST(JSON_EXTRACT(payload, '$._cms.wordpress.embed_block_count.total') AS FLOAT64)
AS embed_block_count_total,
JSON_EXTRACT(payload, '$._cms.wordpress.embed_block_count.total_by_type') AS embeds,
FROM `httparchive.pages.2023_10_01_desktop`
@adamsilverstein
adamsilverstein / enable_revisions_for_product_price.php
Created October 16, 2023 16:41
Filter revisioned meta fields to include the `product_price` field
<?php
/**
* Enable revisions for product_price
*/
function enable_revisions_for_product_price_field( $revisioned_keys ) {
if ( ! in_array( 'product_price', $revisioned_keys ) ) {
$revisioned_keys[] = 'product_price';
}
return $revisioned_keys;
}
@adamsilverstein
adamsilverstein / defer_all_scripts.php
Last active November 22, 2023 22:04
Hook into `wp_enqueue_script` and defer all scripts using defer strategy from WordPress 6.3.
<?php
/**
* Recursively add the defer strategy to a script and all its dependencies.
*
* @param string $handle The script handle.
* @return void
*/
function recursively_add_defer_strategy( $handle ) {
wp_script_add_data( $handle, 'strategy', 'defer' );