Skip to content

Instantly share code, notes, and snippets.

View andxbes's full-sized avatar

Bezcinnij Andrij andxbes

View GitHub Profile
@andxbes
andxbes / functions.php
Created July 5, 2024 13:40
Remove author from posts (Yoast)
<?php
//disable author info
add_filter( 'wpseo_meta_author', '__return_false' );
add_filter( 'wpseo_schema_graph', function ($data) {
foreach ( $data as $key => $value ) {
if ( ! empty( $value['@type'] ) && $value['@type'] === 'Article' && ! empty( $value['author'] ) ) {
unset( $data[ $key ]['author'] );
}
@andxbes
andxbes / js.js
Last active July 5, 2024 08:54
--scrollbar-width
document.addEventListener('DOMContentLoaded', () => {
function getScrollBarWidth() {
let el = document.createElement("div");
el.style.cssText = "overflow:scroll; visibility:hidden; position:absolute;";
document.body.appendChild(el);
let width = el.offsetWidth - el.clientWidth;
el.remove();
return width;
}
document.body.style.setProperty('--scrollbar-width', `${getScrollBarWidth()}px`);
@andxbes
andxbes / functions.php
Created June 28, 2024 05:03
Ninja form and International Telephone Input validator
<?php
//.....
add_action( 'wp_enqueue_scripts', function(){
wp_enqueue_style( 'intTelInput', 'https://cdn.jsdelivr.net/npm/intl-tel-input@19.5.7/build/css/intlTelInput.min.css' );
wp_register_script( 'iti-config', get_theme_file_uri( '/js/iti-config.js' ), array( 'jquery' ), '1', false );
wp_enqueue_script( 'intTelInput', 'https://cdn.jsdelivr.net/npm/intl-tel-input@19.5.7/build/js/intlTelInput.min.js', array( 'jquery', 'iti-config' ), '1', true );
wp_localize_script(
'intTelInput',
@andxbes
andxbes / helper.php
Created May 7, 2024 09:09 — forked from andrey-helldar/helper.php
Сортировка ассоциативного массива в порядке указанном массивом ключей.
<?php
if (!function_exists('array_sort_by_keys_array')) {
/**
* Сортировка ассоциативного массива в порядке указанном массивом ключей.
*
* @param array $array Входной массив.
* @param array $sorter Массив ключей в нужном порядке.
*
* @return bool
@andxbes
andxbes / main.js
Created February 22, 2024 09:33
Ninja forms validate email
// On Document Ready...
jQuery(document).ready(function ($) {
if (typeof Marionette !== 'undefined') {
var myCustomFieldController = Marionette.Object.extend({
initialize: function () {
var submitChannel = Backbone.Radio.channel('submit');
this.listenTo(submitChannel, 'validate:field', this.validateRequired);
var fieldsChannel = Backbone.Radio.channel('fields');
@andxbes
andxbes / block-submit.js
Created November 23, 2023 09:52
CF-7 block submit button on sending
export default function cf_7() {
console.info('cf-7');
let cf_7 = document.querySelectorAll('.wpcf7-form');
if (cf_7 && cf_7.length > 0) {
cf_7.forEach(function (cf_7_form) {
const submit_button = cf_7_form.querySelector('.wpcf7-submit');
if (submit_button) {
cf_7_form.addEventListener('submit', function (event) {
submit_button.setAttribute('disabled', '');
@andxbes
andxbes / input_file.js
Created October 31, 2023 13:14
input_file.js
//Change label for file
jQuery(document).ready(function ($) {
let $file_container = $('.file-upload');
if ($file_container.length > 0) {
$file_container.each(function () {
let $container = $(this);
let $file_input = $container.find('.wpcf7-file');
let $label = $container.find('.file-label__text');
$file_input.change(function () {
@andxbes
andxbes / rewrite_blog.php
Last active August 27, 2023 08:08
rewrite_blog.php
<?php
add_action('init', function () {
add_rewrite_rule('insights/([^/]+)/([^/]+)/?$', 'index.php?category_name=$matches[1]&name=$matches[2]&post_type=post', 'top');
add_rewrite_rule('lp/([^/]+)/?$', 'index.php?name=$matches[1]&post_type=e-landing-page', 'top');
});
add_filter('pre_post_link', function ($permalink, $post, $leavename) {
if ($post->post_type === 'post') {
$permalink = '/insights' . $permalink;
<?php
add_action('woocommerce_add_to_cart_fragments', function($fragments){
$count = WC()->cart->get_cart_contents_count();
ob_start(); ?>
<span class="cart-value" <?php echo ($count == 0) ? 'style="display:none;"' : ''; ?>><?php echo $count ?></span>
<?php $fragments['span.cart-value'] = ob_get_clean();
return $fragments;
@andxbes
andxbes / google_map_links.php
Created July 6, 2023 16:24
Google map links