Skip to content

Instantly share code, notes, and snippets.

@sudar
sudar / kses.php
Created Aug 4, 2020
Sample code to demonstrate the issue with wp_kses and allowed_html for sanitizing svg's that contain attributes with numbers at the end
View kses.php
<?php
/**
* Sample code to demonstrate the issue with wp_kses and allowed_html for sanitizing svg's that contain attributes with numbers at the end.
*/
$svg = <<<SVG
<svg>
<path x1="10" y1="10"/>
</svg>
SVG;
@sudar
sudar / backup.sh
Created Apr 14, 2020
Bash script to backup WordPress sites. Add this to a cron job and run it every day
View backup.sh
#!/bin/bash
NOW=$(date +%Y-%m-%d-%H-%M-%S)
SQL_FILE=${NOW}_db.sql
# Backup database
/usr/local/bin/wp db export ../backups/$SQL_FILE --add-drop-table
# Compress the database file
gzip ../backups/$SQL_FILE
@sudar
sudar / exclude-attachments.php
Created Nov 17, 2018
Exclude attachments from getting deleted using the Bulk Delete Attachments add-on for Bulk Delete plugin
View exclude-attachments.php
<?php
add_filter( 'bd_delete_attachment_excluded_attachment_ids', 'prefix_exclude_attachment_ids_from_deletion' );
function prefix_exclude_attachment_ids_from_deletion( $attachment_ids ) {
return array(
100,
111,
112,
);
}
@sudar
sudar / capability.php
Last active Aug 7, 2017
Change the capability that is required for viewing email logs
View capability.php
<?php
function wpel_change_email_log_user_role( $capability ) {
return 'manage_options' // change this to the capability that you want.
}
add_filter( 'el_view_email_log_capability', 'wpel_change_email_log_user_role' );
@sudar
sudar / dump-taxonomies.php
Last active Jan 30, 2017
Dump All Taxonomies for debugging
View dump-taxonomies.php
<?php
/**
* Plugin Name: Dump Taxonomy
* Plugin URI: http://bulkwp.com
* Description: Dump all Taxonomy for debugging
* Version: 0.1
* License: GPL
* Author: Sudar
* Author URI: http://sudarmuthu.com/
*/
@sudar
sudar / last-page.php
Last active Jun 18, 2016
How to find if you are on the last page of a multi-page post in WordPress. Explanation at http://sudarmuthu.com/blog/how-to-find-if-you-are-on-the-last-page-of-a-multi-page-post-in-wordpress/
View last-page.php
<?php
/**
* Is the current page the last page of the multi-page post.
*
* @return bool True if last page, False otherwise.
*/
function is_last_page() {
global $page, $numpages, $multipage;
if ( $multipage ) {
View error_msg.php
<?php
/**
* Display an error message at the top of the post edit screen explaining that ratings is required.
*
* Doing this prevents users from getting confused when their new posts aren't published, as we
* require a valid rating custom taxonomy.
*
* @param WP_Post The current post object.
*/
function show_required_field_error_msg( $post ) {
View Customfile-memory.rb
config.vm.provider "virtualbox" do |v|
v.memory = 2048
end
@sudar
sudar / gist:d362472ef9b1f6b6ffef
Created Feb 2, 2015
vip-quickstart error output
View gist:d362472ef9b1f6b6ffef
$ v up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Fixed port collision for 22 => 2222. Now on port 2201.
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 22 => 2201 (adapter 1)
@sudar
sudar / apache-error-mailer.py
Last active Mar 8, 2020
Automatically send unique errors (with count) from Apache error log as email. Details at http://sudarmuthu.com/blog/automatically-send-unique-errors-with-count-from-apache-error-log-as-email/
View apache-error-mailer.py
#!/usr/bin/env python
import sys
import mandrill
MANDRILL_API_KEY = "api-key"
EMAIL_FROM = "your@email.com"
EMAIL_TO = "your@email.com"
EMAIL_SUBJECT = "Error Log"
You can’t perform that action at this time.