Skip to content

Instantly share code, notes, and snippets.

View voronkovich's full-sized avatar

Oleg Voronkovich voronkovich

View GitHub Profile
@voronkovich
voronkovich / woocommerce-edi-1c-hacks.php
Last active April 7, 2023 23:47
WooCommerce EDI 1C: Настройки и исправления ошибок плагина
<?php
/**
* Plugin Name: WooCommerce EDI 1c: hacks
* Description: Настройки и исправления ошибок плагина
* Version: 0.0.1
* License: GPLv2 or later
* License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* Author: PopArtDesign <info@popartdesign.ru>
* Author URI: https://popartdesign.ru/
diff --git a/src/Parsers/ProductImagesParser.php b/src/Parsers/ProductImagesParser.php
index 8b13cb9..67505a0 100644
--- a/src/Parsers/ProductImagesParser.php
+++ b/src/Parsers/ProductImagesParser.php
@@ -69,7 +69,7 @@ class ProductImagesParser {
$guid
);
- if ( is_null( $image_id ) ) {
+ if ( is_null( $image_id ) || ! Utils::post_exists( $image_id ) ) {
@voronkovich
voronkovich / woocommerce-edi-1c-product-code.php
Last active March 28, 2023 23:39
WooCommerce EDI 1C: Сохранение кода товара в метаданных
<?php
/**
* Plugin Name: WooCommerce EDI 1C: product code
* Description: Сохраняет код товара из 1С в метаданных товара
* Version: 0.0.1
* License: GPLv2 or later
* License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* Author: PopArtDesign <info@popartdesign.ru>
* Author URI: https://popartdesign.ru/
@voronkovich
voronkovich / woocommerce-remove-repeated-featured-image.php
Last active March 12, 2023 18:33
WooCommerce: remove repeated featured image from product gallery
@voronkovich
voronkovich / MacOS-MAMP-MailHog.md
Last active March 3, 2023 13:22
Установка MailHog для MAMP (MacOS)

Установка MailHog для MAMP (MacOS)

  1. Установить и запустить MailHog

     brew install mailhog
     brew services start mailhog
  2. Добавить настройки в файл /Applications/MAMP/bin/php/{PHP_VERSION}/conf/php.ini

@voronkovich
voronkovich / webpack.config.js
Last active February 9, 2020 16:15
Configuration for Symfony Encore VueJS single page app
var Encore = require('@symfony/webpack-encore');
if (!Encore.isRuntimeEnvironmentConfigured()) {
Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
}
Encore
.setOutputPath('public/build/')
.setPublicPath('/build')
.addEntry('app', './assets/js/app.js')
#include <stddef.h>
#include "xor.h"
void *memxor(void *s, size_t ssize, void *k, size_t ksize)
{
unsigned char *sp = s;
unsigned char *kp = k;
for (size_t i = 0; i < ssize; ++i) {
@voronkovich
voronkovich / fuzzy.c
Created March 21, 2019 16:49
Fuzzy match function in C
#include <ctype.h>
int fuzzy_match(const char *needle, const char *haystack)
{
while (*needle && *haystack) {
if (*haystack == tolower(*needle) || *haystack == toupper(*needle)) {
needle++;
}
haystack++;
#!/bin/sh
binary="${1:-./a.out}";
test() {
input="$1";
expected="$2";
actual="$(echo $input | $binary)";
if [ "$expected" = "$actual" ]; then
@voronkovich
voronkovich / index.php
Created December 15, 2018 16:08
PHP routing example
<?php
$routes = [
'GET /' => function (string $method, array $params) {
echo 'Welcome!';
},
'(GET|POST) /hello(/(?<name>[^/]++))?' => function (string $method, array $params) {
\printf('Hello, %s!', $params['name'] ?? 'World');
},
];