Skip to content

Instantly share code, notes, and snippets.

View apermo's full-sized avatar

Christoph Daum apermo

View GitHub Profile
<?php
add_filter( 'heartbeat_settings', 'filter_heartbeat', 10, 1 );
/**
* Filter the heartbeat interval based on the current request.
*
* Called on the 'heartbeat_settings' filter.
*
* @param array $settings The Heartbeat settings. By Default an empty array.
*
<?php
/**
* A class to create custom tables within WordPress.
*
* @version 1.0.0
*/
namespace apermo\WPTools;
use Exception;
@apermo
apermo / category_mover.php
Created November 11, 2021 11:14
Bulk move and delete Categories in WordPress
<?php
if ( ! defined( 'PHP_SAPI' ) || PHP_SAPI !== 'cli' ) {
exit( 'You shall not pass' );
// echo '<pre>';
// set_time_limit( 0 );
}
$dir = $argv[1] ?? __DIR__;
// Load wp-config to make sure we can use WordPress.
@apermo
apermo / session-debugger.php
Created November 4, 2021 07:03
Simple WordPress User Session debugger
<html>
<head>
<style type="text/css">
textarea {
width: 100%;
height: 300px;
}
td {
border: 2px dashed grey;
padding: 1em;
@apermo
apermo / mu-redirect.php
Created October 27, 2021 09:37
Timed redirect MU Plugin for WordPress
<?php
/**
* Plugin Name: Timed redirect
* Description: Redirects all traffic to [hardcoded domain] starting [hardcoded time]
* Version: 1.0.0
* Author: Christoph Daum
*/
// Mind possible UTC time differences here.
@apermo
apermo / create_admin.php
Created September 8, 2021 10:11
Self Destructing Create Admin User for WordPress
<?php
require_once 'wp-config.php';
// Add your desired credentials here. Using these is a super bad idea.
//$user = 'YOUR USERNAME';
//$pass = 'YOUR_SUPER_SECURE_PASSWORD';
//$email = 'YOUR@ADMIN_EMAIL.ADDRESS';
if ( ! username_exists( $user ) && ! email_exists( $email ) ) {
@apermo
apermo / selfdesctruct_info.php
Created March 8, 2021 12:04
A small snippet around the phpinfo(); to have a self destructing phpinfo that deletes itself after 3600s
<?php
// file is older than 3600s, better delete this.
if ( filemtime( __FILE__ ) + 3600 < time() ) {
unlink( __FILE__ );
header( "HTTP/1.0 404 Not Found" );
exit();
}
phpinfo();
<?php
/**
* Contains Class Settings_Abstract
*/
if ( ! defined( 'ABSPATH' ) ) {
header( 'HTTP/1.0 404 Not Found' );
exit( 'You shall not pass' );
}
@apermo
apermo / ios_fixed_background.css
Created January 10, 2020 13:54
A fix for the ios fixed&cover background issue
body::after {
content: "";
display: block;
position: fixed;
top: 0;
left: 0;
height: 100%;
height: 100vh;
width: 100%;
width: 100vw;
@apermo
apermo / wp-gutenberg-reusable-block-interface.php
Last active November 4, 2024 07:29 — forked from mrpritchett/wp-gutenberg-reusable-block-interface.php
Gutenberg Reusable Block Editor Interface
function custom_add_interface_to_wp_block( $args, $post_type ) {
global $pagenow;
if ( 'wp_block' !== $post_type ) {
return $args;
}
$changed_args = array(
'show_ui' => true,
'show_in_menu' => true,