Skip to content

Instantly share code, notes, and snippets.

Avatar

Hiranthi Herlaar hiranthi

View GitHub Profile
@hiranthi
hiranthi / .htaccess
Created Jun 22, 2020
.htaccess regels om afbeeldingen die niet meer bestaan een 410 Gone status te geven (in plaats van 404 Not Found)
View .htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase //
RewriteCond %{REQUEST_URI} ^/wp-content/uploads
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /index.php [L,R=410]
</IfModule>
@hiranthi
hiranthi / cleanup-adsformarket.bash
Last active Feb 4, 2020
Veel WordPress websites zijn geïnfecteerd waarbij er verschillende injecties zijn toegevoegd die gerelateerd zijn aan 'adsformarket'. Alle bestanden handmatig nalopen & opschonen, is veel werk. Met deze bash-scripts kan het een stuk makkelijker doorlopen worden.
View cleanup-adsformarket.bash
#!/bin/bash
# WP_PATH definiëren
export WP_PATH=$(pwd)
search_adsformarket="snippet.adsformarket.com"
file_adsformarket="../adsformarket.txt"
touch $file_adsformarket
adsformarketmalfiles=$(find -type f | grep -liR "${search_adsformarket}" $WP_PATH)
@hiranthi
hiranthi / mu-plugin-file.php
Created Mar 22, 2019
Pretend another theme is active in the WP dashboard to maintain access to everything when something in your theme messes everything up (or whatevs).
View mu-plugin-file.php
<?php
add_filter( 'template', 'onx_change_theme' );
add_filter( 'option_template', 'onx_change_theme' );
add_filter( 'option_stylesheet', 'onx_change_theme' );
add_filter( 'pre_option_stylesheet', 'onx_change_theme' );
function onx_change_theme( $theme )
{
if ( is_admin() && ( function_exists( 'wp_get_current_user' ) ) )
{
@hiranthi
hiranthi / elementor-redirect.php
Created Mar 13, 2019
Redirect Editors & Authors from the 'edit page' page to the Elementor editor. Helps keeping the Elementor-stuff intact :)
View elementor-redirect.php
<?php
function onx_redirect_edit_page_to_elementor()
{
global $post, $pagenow;
if ( ! isset( $post->ID ) || current_user_can( 'manage_options' ) ) return;
if ( ( ( $pagenow == 'post.php' ) && ( get_post_type() == 'page' ) ) && ( current_user_can( 'editor' ) || current_user_can( 'author' ) ) )
{
@hiranthi
hiranthi / base.txt
Last active Mar 10, 2019
WP-CLI stuff :)
View base.txt
# Paths: DirectAdmin
# USER: change to correct username
# DOMAIN: change to the correct domainname
# Core stuff
$ wp core version --path=/home/USER/domains/DOMAIN/public_html/
$ wp core download --skip-content --force --version=latest --path=/home/USER/domains/DOMAIN/public_html/
$ wp core update-db --path=/home/USER/domains/DOMAIN/public_html/ --dry-run
$ wp core verify-checksums --path=/home/USER/domains/DOMAIN/public_html/
@hiranthi
hiranthi / zipcode-2.php
Last active Jan 17, 2020
Zipcode validation for Gravity Forms (5 digits, 2 approaches).
View zipcode-2.php
<?php
# just add the needed form IDs to the array
$forms = array( '6', '7' );
# looping through the array to add an 'add_filter' for each
foreach ( $forms as $i => $form )
add_filter( "gform_field_validation_{$form}", 'custom_zip_validation', 10, 4 );
# the function
@hiranthi
hiranthi / zipcode-2.php
Created Jan 23, 2019
Zipcode validation for Gravity Forms (5 digits, 2 approaches).
View zipcode-2.php
<?php
# just add the needed form IDs to the array
$forms = array( '6', '7' );
# looping through the array to add an 'add_filter' for each
foreach ( $forms as $i => $form )
add_filter( "gform_field_validation_{$form}", 'custom_zip_validation', 10, 4 );
# the function
@hiranthi
hiranthi / functions.php
Last active Nov 21, 2019
New encryption with Gravity Forms
View functions.php
<?php
function my_custom_gravityforms_encrypt( $to_encrypt )
{
if ( '' === $to_encrypt ) return null;
if ( function_exists('openssl_encrypt') && function_exists('openssl_random_pseudo_bytes') )
{
$iv = openssl_random_pseudo_bytes( openssl_cipher_iv_length( 'aes-256-cbc' ) );
$encrypted = openssl_encrypt( $to_encrypt, 'aes-256-cbc', MY_CUSTOM_GF_ENCRYPTION_KEY, 0, $iv );
View flush-redis-cache.php
<?php
# Check: https://onexa.nl/wordpress/toolbar-link-redis-object-cache/
/**
* Add a link to the Admin Toolbar to easily flush the Redis cache (Redis Object Cache plugin)
*
* @author Hiranthi Herlaar, onexa.nl
* @version 2.0
*
@hiranthi
hiranthi / woo-checkout.php
Last active Apr 3, 2019
WooCommerce checkout steps
View woo-checkout.php
<?php
/**
* Display the checkout steps so the customer knows where they are.
*
* The output uses classes of Bootstrap 4 and the icons of FontAwesome (Free)
**/
function onx_woocommerce_checkout_steps()
{
echo '<nav id="woo-checkout-steps" class="nav nav-pills nav-justified mb-4" role="navigation">';
You can’t perform that action at this time.