Skip to content

Instantly share code, notes, and snippets.

@lusareal
lusareal / en.json
Created September 29, 2023 11:02
Generate language files json from/to CSV in PHP (create more *.json if needed)
{
"general": {
"generalConditions": "General conditions",
"basicSettings": "Basic settings",
"contactUs": "Contact us",
"systemInfo": "System info",
"debugMode": "Debug mode",
"help": "Help",
"downloadSystemInfoFile": "Download system info file",
"curlIsNotInstalled": "cURL is not installed or enabled in your PHP installation. This is required for background task to work. Please install it and then refresh this page.",
@lusareal
lusareal / purge.sh
Created August 31, 2023 11:09
Purge cache siteground from commandd line
curl --request PURGE --output /dev/null --insecure --location --write-out '%{http_code}' --url https://website.de/* --silent
curl -X PURGE -o /dev/null -i -L -w "%{response_code}" --url https://website.es/*
@lusareal
lusareal / php-online-pasword-generator.php
Created July 21, 2023 11:12
php online pasword generator
<?php
function generate_password($length = 16, $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'){
$str = '';
$max = mb_strlen($characters, '8bit') - 1;
for ($i = 0; $i < $length; ++$i) {
$str .= $characters[random_int(0, $max)];
}
return $str;
}
echo generate_password(16, '*&^%$#@!0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
@lusareal
lusareal / toptal_js_minify.php
Created March 23, 2023 09:30
JavaScript minifier using toptal api
<?php
if (isset($_POST['input'])) {
$input = $_POST['input'];
$url = 'https://www.toptal.com/developers/javascript-minifier/api/raw';
// init the request, set various options, and send it
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
@lusareal
lusareal / popup-maker-test-rest-api-call.php
Created June 29, 2022 11:12 — forked from marklchaves/popup-maker-test-rest-api-call.php
Check if adblockers like Ghostery block Popup Maker REST API calls
<?php // Ignore this first line when copying to your child theme's functions.php file.
add_action( 'wp_footer', function () { ?>
<script>
(function () {
function testRestApi(url, cb) {
jQuery.ajax({
url: url,
dataType: "text",
type: "GET",
@lusareal
lusareal / geocode-parallel.php
Created January 31, 2020 10:38 — forked from mtmail/geocode-parallel.php
parallel geocoding using PHP
#!/usr/bin/php
<?php
// 1. install https://github.com/stil/curl-easy
//
// composer require stil/curl-easy
//
// 2. fill a text file 'queries.txt' with queries, e.g.
// Berlin
// Madrid
@lusareal
lusareal / loader.js
Created March 4, 2019 17:05 — forked from wpscholar/loader.js
Vanilla JS loader indicator
function Loader(el) {
el.loader = this;
this.el = el;
this.style = document.getElementById('js-loader-styles');
this.init();
if (!document.body.animate) {
if (!this.style) {
this.style = document.createElement('style');
@lusareal
lusareal / .htaccess
Created March 4, 2019 17:05 — forked from wpscholar/.htaccess
Set up WordPress Multi Network
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
# Google Analytics & Campaign Monitor
# Removes all query params where the key begins with "utm_"
# Skip the rewrites if no "utm_*" key exist.
RewriteCond %{QUERY_STRING} !(^|&)utm_ [NC]
RewriteRule .* - [S=3]
# Check and handle first query param.
RewriteCond %{QUERY_STRING} ^utm_[A-Za-z0-9]+=[^&]+(.*) [NC]
RewriteRule (.*) /$1?%1 [R=301,L]
@lusareal
lusareal / wpml-detach-duplicates.sql
Created February 25, 2019 14:50 — forked from hampusn/wpml-detach-duplicates.sql
SQL queries to detach WPML duplicates and translate them separately.
# Select all posts which are duplicates of a language.
# The language parameter is to only select by the new language (not the original duplication language).
SET @lang_code = 'da';
SELECT pm.*, p.post_title, p.post_type, icl.language_code
FROM wp_postmeta pm
INNER JOIN wp_icl_translations icl ON icl.element_id = pm.post_id
INNER JOIN wp_posts p ON p.`ID` = pm.post_id
WHERE meta_key='_icl_lang_duplicate_of' AND icl.language_code = @lang_code;