Skip to content

Instantly share code, notes, and snippets.

View brandonbarringer's full-sized avatar

Brandon Barringer brandonbarringer

View GitHub Profile
@brandonbarringer
brandonbarringer / rem.js
Created May 31, 2024 15:07
JS rem function
export const rem = (...px) => px.map((p) => `${p / 16}rem`).join(' ');
@brandonbarringer
brandonbarringer / unfiltered_html_filter.php
Created May 23, 2024 12:31
Fix WP stripping tags in multisite
<?php
// In WP multisite, WP strips out things like script tags and embeds from the
// editor for non-super-admins. This filter allows editors to use these tags.
add_filter('map_meta_cap', function ($caps, $cap, $user_id, $args) {
if (
$cap === 'unfiltered_html'
&& (user_can($user_id, 'editor') || user_can($user_id, 'administrator'))
) {
$caps = ['unfiltered_html'];
}
@brandonbarringer
brandonbarringer / staggerCol.php
Last active May 31, 2023 16:07
Stagger column number by row
<?php
$items = array_fill(0, 16, 'item');
$col = 0;
$row = 0;
foreach($items as $item) {
$col++;
if ($col > 4) {
$col = 1;
$row++;
}
@brandonbarringer
brandonbarringer / pagination.hbs
Created February 24, 2023 19:17
Components/pagination
<ul class="pagination {{class}}" role="navigation" aria-label="Pagination Navigation, Current Page 2">
<li class="pagination__arrow pagination__arrow--prev">
<a href="#" aria-label="Go to previous page">
<svg width="9" height="14" aria-hidden="true" role="presentation">
<use xlink:href="/assets/images/icons.svg#chevron"></use>
</svg>
<span class="pagination__arrow-text">Previous</span>
</a>
</li>
<li>
@brandonbarringer
brandonbarringer / components.text-media.hbs
Created February 14, 2023 16:01
Components/text-media
{{!--
text-media--var-1
text-media--var-2
text-media--var-3
text-media--right
text-media--left
--}}
<div class="text-media text-media--var-1 text-media--left">
@brandonbarringer
brandonbarringer / components.text-media.scss
Last active February 14, 2023 16:05
Components/text-media
.text-media {
padding: rem(70px 0);
&__layout {
@include container;
display: flex;
flex-direction: column;
gap: 5%;
align-items: center;
justify-content: center;
@brandonbarringer
brandonbarringer / reviews.php
Last active December 20, 2022 16:19
PHP Creation of 0 to 5 star reviews
<?php
$rating = 3.68;
$parts = explode('.', $rating);
?>
<style>
.rating {
display: flex;
align-items: center;
gap: 5px;
@brandonbarringer
brandonbarringer / getObjectValueFromString.js
Last active November 14, 2022 18:21
Get the value of an object using dot notation in a string
/*
const person = {
name: 'John',
age: 30,
address: {
street: 'Main Street',
city: 'New York',
state: 'NY',
zip: '10001'
},
@brandonbarringer
brandonbarringer / Text.php
Last active October 27, 2022 15:51
Generate Random Lorem Ipsum in PHP
<?php
abstract class Text {
public static function characters($nCharacters = 1) {
$words = self::$words;
$characters = '';
while (strlen($characters) < $nCharacters) {
$characters .= self::words() . ' ';
}
$characters = substr($characters, 0, $nCharacters);
@brandonbarringer
brandonbarringer / featuredImageFilter.php
Last active October 26, 2022 16:39
Set Helper Text on WP Featured Images
<?php
add_filter( 'admin_post_thumbnail_html', function($content, $post_id, $thumbnail_id) {
if ( 'post_type' !== get_post_type( $post_id ) ) {
return $content;
}
// remove the default recommended size
$string = '<p class="hide-if-no-js howto">We recommend a 16:9 aspect ratio for featured images.</p>';
$content = str_replace($string, '', $content);
// add a custom caption
$caption = '<p class="howto">' . esc_html__( 'Minimum image size: 783x645', 'iv' ) . '</p>';