Skip to content

Instantly share code, notes, and snippets.

View jeffreyvr's full-sized avatar
🎸
Freelancing and building my own stuff.

Jeffrey van Rossum jeffreyvr

🎸
Freelancing and building my own stuff.
View GitHub Profile
@jeffreyvr
jeffreyvr / functions.php
Created October 23, 2018 10:25
Adding oEmbed filter in custom WordPress function
<?php
function prefix_get_custom_sidebar() {
global $post, $wp_embed;
$custom_sidebar = get_post_meta( $post->ID, 'custom_sidebar', true );
$custom_sidebar = $wp_embed->autoembed( $custom_sidebar ); // Apply oEmbed filter
return $custom_sidebar;
@jeffreyvr
jeffreyvr / whitelist.php
Created December 3, 2018 15:50
Generate commands to whitelist Cloudflare IP's (iptables)
<?php
$ips = file_get_contents( 'https://www.cloudflare.com/ips-v4' );
$ips = explode( PHP_EOL, $ips );
$result = '';
foreach ( $ips as $ip ){
@jeffreyvr
jeffreyvr / AuthServiceProvider.php
Last active December 2, 2020 20:22
Lumen Policies
<?php
namespace App\Providers;
use App\Post as Post;
use App\Policies\PostPolicy as PostPolicy;
use Illuminate\Support\Facades\Gate;
use Illuminate\Support\ServiceProvider;
class AuthServiceProvider extends ServiceProvider
@jeffreyvr
jeffreyvr / settings.json
Created November 9, 2019 20:58
VSC settings
{
"workbench.startupEditor": "none",
"markdown.preview.fontSize": 12,
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"editor.fontSize": 16,
"editor.lineHeight": 42,
"workbench.colorCustomizations": {
"[Inspired Github]": {
"editorLineNumber.foreground": "#999",
@jeffreyvr
jeffreyvr / settings.json
Created February 1, 2020 15:35
VSC settings
{
"workbench.startupEditor": "none",
"markdown.preview.fontSize": 12,
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"editor.fontSize": 16,
"editor.lineHeight": 42,
"workbench.colorCustomizations": {
"[Inspired Github]": {
"editorLineNumber.foreground": "#999",
@jeffreyvr
jeffreyvr / .phpcs.xml.dist
Last active May 11, 2020 11:12
WordPress Theme or Plugin setup VSCode
<?xml version="1.0"?>
<ruleset name="WordPress Coding Standards based custom ruleset for your plugin">
<description>Generally-applicable sniffs for WordPress plugins.</description>
<!-- What to scan -->
<file>.</file>
<exclude-pattern>/vendor/</exclude-pattern>
<exclude-pattern>/node_modules/</exclude-pattern>
<!-- How to scan -->
@jeffreyvr
jeffreyvr / coupon-switch-based-on-logged-in.php
Created June 9, 2020 12:30
Simply switching a WooCommerce coupon-code if a user is logged in.
<?php
add_action( 'woocommerce_before_calculate_totals', function () {
if ( is_user_logged_in() ) {
if ( in_array( 'highdiscount', WC()->cart->get_applied_coupons() ) ) {
WC()->cart->remove_coupon( 'highdiscount' );
WC()->cart->add_discount( 'lowdiscount' );
}
}
});
@jeffreyvr
jeffreyvr / Oembed.php
Last active June 22, 2020 18:27
OEmbed body parser for oscarotero/Embed.
<?php
use Exception;
use Embed\Embed;
class Oembed
{
/**
* Accepted Urls
*
@jeffreyvr
jeffreyvr / is-gutenberg-active.php
Created August 18, 2020 11:49
Is Gutenberg active
<?php
function prefix_is_gutenberg_active() {
include_once ABSPATH . 'wp-admin/includes/plugin.php';
$is_gutenberg = has_filter( 'replace_editor', 'gutenberg_init' ) || version_compare( $GLOBALS['wp_version'], '5.0-beta', '>' );
$is_classic_editor = is_plugin_active( 'classic-editor/classic-editor.php' ) && get_option( 'classic-editor-replace' ) === 'no-replace';
if ( $is_gutenberg && ! $is_classic_editor ) {
return true;
@jeffreyvr
jeffreyvr / README.md
Created September 4, 2020 09:33
Using wp.editor in widgets

Within your widget, you can include a editor with a textarea and the class custom-widget-wp-editor.

 <textarea id="<?php echo $this->get_field_id( 'header' ); ?>" name="<?php echo $this->get_field_name( 'header' ); ?>" class="custom-widget-wp-editor"><?php echo $header; ?></textarea>

Make sure you include the JS-file within the widgets and customizer view.

/**