Skip to content

Instantly share code, notes, and snippets.

View wpchannel's full-sized avatar
:octocat:

Aurélien Denis wpchannel

:octocat:
View GitHub Profile
@wpchannel
wpchannel / mu-sanitize-filename.php
Last active April 21, 2024 14:51
Clean file name when uploading in WordPress
<?php if ( ! defined( 'ABSPATH' ) ) {
die( 'Restricted Area' );
}
/*
* Plugin Name: Sanitize File Name
* Description: Clean file name when uploading files in WordPress.
* Version: 20240103
* Author: Mickaël Gris (Saipafo) & Aurélien Denis (WP channel)
* Author URI: https://wpchannel.com/wordpress/tutoriels-wordpress/renommer-automatiquement-fichiers-accentues-wordpress/
@wpchannel
wpchannel / mu-yoast-seo-disable-notifications.php
Last active April 16, 2023 08:33
Hide annoying notifications after each upgrade of Yoast SEO plugin and others admin notices
<?php if (!defined('ABSPATH')) die('Restricted Area');
/*
* Plugin Name: Disable Yoast SEO Notifications
* Description: Hide annoying notifications after each upgrade of Yoast SEO plugin and others admin notices.
* Version: 1.1
* Author: Aurélien Denis
* Author URI: https://wpchannel.com/
*/
@wpchannel
wpchannel / wp_has_children_pages.php
Last active February 18, 2018 19:08
Test if a page has children or not
<?php
$parent_ID = $post->post_parent ? @ array_pop(get_post_ancestors($post)) : $post->ID;
$children = wp_list_pages(
array(
'child_of' => $parent_ID,
'title_li' => '',
'echo' => false,
)
);
?>
@wpchannel
wpchannel / mu-unregister-taxonomies.php
Last active February 18, 2018 19:07
Unregister any WordPress taxonomy
<?php if (!defined('ABSPATH')) die('Restricted Area');
/*
* Plugin Name: Unregister Taxonomies
* Description: Properly disable any WordPress taxonomy.
* Version: 20160901
* Author: Aurélien Denis (Neticpro)
* Author URI: https://wpchannel.com/desactiver-taxonomie-type-de-contenu-personnalise/
*/
<?php if (wcs_user_has_subscription('', 10, 'active')) : // Replace 10 by WooCommerce Subscription Product ID ?>
<?php _e('Hello World', 'textdomain'); ?>
<?php else : ?>
<p><?php _e('Sorry you have to be an active subscriber to get access.', 'textdomain'); ?></p>
<?php endif; ?>
@wpchannel
wpchannel / filter-wordpress-recent-posts-widget.php
Last active December 12, 2022 08:50
Filter WordPress Recent Posts Widget
function wpc_filter_recent_posts_widget_parameters($params) {
$params['orderby'] = 'date';
$params['tax_query'] = array(
array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => array('post-format-movie', 'post-format-aside'),
'operator' => 'NOT IN'
)
);
function wpc_exclude_protected_posts($query) {
if (! is_admin() && $query->is_main_query()) {
$query->set('has_password', false);
}
}
add_action('pre_get_posts', 'wpc_exclude_protected_posts');
function wpc_dequeue_woocommerce_styles_scripts() {
if (function_exists('is_woocommerce')) {
if (! is_woocommerce() && ! is_cart() && ! is_checkout() && ! is_account_page()) {
wp_dequeue_style('woocommerce-general');
wp_dequeue_style('woocommerce-layout');
wp_dequeue_style('woocommerce-smallscreen');
wp_dequeue_script('wc_price_slider');
wp_dequeue_script('wc-single-product');
wp_dequeue_script('wc-add-to-cart');
@wpchannel
wpchannel / mu-disable-password-notification.php
Last active August 7, 2022 15:23
Disable password change notification
/* Disable User Password Change Notification */
add_filter('send_password_change_email', '__return_false');
/* Disable Admin Password Change Notification */
remove_action('after_password_reset', 'wp_password_change_notification');
@wpchannel
wpchannel / mu-disable-woocommerce-notice.php
Last active February 18, 2018 19:07
Disable WooCommerce.com account notice
/* Disable WooCommerce.com Account Notice */
add_filter('woocommerce_helper_suppress_admin_notices', '__return_true');