Skip to content

Instantly share code, notes, and snippets.

View brianleejackson's full-sized avatar
✍️
Writing

Brian Jackson brianleejackson

✍️
Writing
View GitHub Profile
@brianleejackson
brianleejackson / disable-wordpress-fetch-priority.php
Created December 8, 2023 03:58
Disable WordPress core fetch priority
function disable_fetchpriority_high( $loading_attrs ) {
unset( $loading_attrs['fetchpriority'] );
return $loading_attrs;
}
add_filter(
'wp_get_loading_optimization_attributes',
'disable_fetchpriority_high'
);
@brianleejackson
brianleejackson / divi-cls-fix.js
Created November 20, 2023 02:54
Fix Divi CLS
<script type="text/javascript">
var elm=document.getElementsByTagName("html")[0];
elm.style.display="none";
document.addEventListener("DOMContentLoaded",function(event) {elm.style.display="block"; });
</script>
<?php
add_action( 'shutdown', function() {
// If the event is scheduled, don't run anything.
if ( wp_next_scheduled( 'prefix_remove_license_activation_logs' ) ) {
return;
}
if ( ! function_exists( 'edd_has_upgrade_completed' ) ) {
@brianleejackson
brianleejackson / fastclick-mobile-only.js
Created March 1, 2023 22:32
Only load FastClick on mobile devices (no tablets or desktop)
<script>
if (window.innerwidth < 900) {
document.write('<script type="text/javascript" src="https://domain.com/wp-content/plugins/perfmatters/vendor/fastclick/fastclick.min.js"><\/script>');
}
</script>
<script>
if(window.innerWidth < 900) {
if('addEventListener' in document) {
document.addEventListener('DOMContentLoaded', function() {
@brianleejackson
brianleejackson / lazy-render.css
Last active January 24, 2023 00:01
Add content-visibility to WordPress element (lazy render)
.nameofdiv {
content-visibility: auto;
contain-intrinsic-size: 0 1000px;
}
/* References:
https://web.dev/content-visibility/
https://segmentfault.com/a/1190000041980427/en
https://clubmate.fi/content-visibility-auto
https://dev.to/dailydevtips1/i-made-my-website-28ms-faster-with-content-visibility-466e
@brianleejackson
brianleejackson / obsidian-custom-css.css
Last active July 21, 2023 05:06
Obsidian custom CSS
/* preview-mode paragraphs */
p{
padding-top: 6px;
padding-bottom: 6px;
line-height: 1.6;
}
/* preview-mode lists */
li{
padding-top: 6px;
@brianleejackson
brianleejackson / line-breaks-fluent-forms.php
Created December 28, 2022 17:59
Remove additional line breaks in Fluent Forms WordPress plugin
add_filter('fluentform_response_render_textarea', function ($value, $field, $formId, $isHtml) {
if (false != strpos($value, '<br />')) {
$value = str_replace('<br />', '', $value);
}
return '<span style="white-space: pre-line">' . $value . '</span>';
}, 15, 4);
add_filter('perfmatters_delay_js_exclusions', function($exclusions) {
if(is_page(275)) {
$exclusions[] = 'underscore.min.js';
$exclusions[] = 'backbone.min.js';
$exclusions[] = 'front-end-deps.js';
$exclusions[] = 'front-end.js';
$exclusions[] = 'nf-';
$exclusions[] = 'jquery.min.js';
$exclusions[] = 'nfForms';
}
@brianleejackson
brianleejackson / mobile-cache-buckets.php
Last active July 31, 2022 21:09
Testing mobile cache buckets. This snippet echos out text only on desktop in the footer. If you see it on mobile, it means your mobile cache bucket isn't configure properly.
add_action('wp_footer', function() {
if(!wp_is_mobile()) {
echo 'hello world';
}
});
@brianleejackson
brianleejackson / fastclick-delay-js-workaround.js
Last active April 11, 2022 02:12
FastClick Delay JS workaround for iOS double-click bug. As used here: https://perfmatters.io/docs/delay-javascript/
<script src="https://cdnjs.cloudflare.com/ajax/libs/fastclick/0.6.0/fastclick.min.js" integrity="sha512-oljyd1wg75alHReTpDvNIQ4Yj1wZwGxxZhJhId3vr2dKY+26/r/wmMrImwDgin03+7wxyhX+adOQB/2BTvO5tQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script>
if ('addEventListener' in document) {
document.addEventListener('DOMContentLoaded', function() {
FastClick.attach(document.body);
}, false);
}
</script>