Skip to content

Instantly share code, notes, and snippets.

View audrasjb's full-sized avatar

Jb Audras audrasjb

View GitHub Profile
@audrasjb
audrasjb / contextual_body_classes.php
Last active December 23, 2024 05:11
Contextual body classes to help identify browsers and devices types within WordPress front-end
<?php
/**
* Adds <body> custom classes relative to browsers and device types.
*
* Note: These classes are obtained via WordPress Core Globals and via the wp_is_mobile
* function which both rely on the user agent. wp_is_mobile() is obviously NOT a substitute
* to CSS media queries, but may be used for device specific features or debugging.
*
* @see https://developer.wordpress.org/apis/global-variables/#browser-detection-booleans
* @see https://developer.wordpress.org/reference/functions/wp_is_mobile/
@audrasjb
audrasjb / gf-available-entries
Last active December 20, 2024 10:19
Gravity Forms: Retrieves how much available entries are available for a given form
<?php
/**
* Retrieves how much available entries are available for a given form.
*
* @param int|false $form_id The ID of the form.
*/
function jba_display_available_seats( $form_id = false ) {
if ( ! $form_id ) { return; }
$form = GFAPI::get_form( $form_id );
@audrasjb
audrasjb / jba-force-language-attribute.php
Last active November 23, 2022 18:04
Force fr-CH language attribute on the HTML tag. Made for Jeff Legras (question asked in WordPress Academy Facebook group)
<?php
/**
* Plugin Name: Filter language attribute to force fr-CH.
* Author: Jb Audras
* Author URI: https://jeanbaptisteaudras.com
* License: GPLv2 or later
* Version: 1.0.0
*/
function jba_language_attributes() {
@audrasjb
audrasjb / functions.php
Last active October 17, 2022 07:32
Hide admin bar in certain condition – for Christophe Glaudel (WP Academy Facebook group)
<?php
/*
* Removes admin bar on front-end for everyone except admins.
* @audrasjb
*/
function jba_remove_admin_bar( $show_admin_bar ) {
if ( ! current_user_can( 'administrator' ) && ! is_admin() ) {
$show_admin_bar = false;
}
return $show_admin_bar;
@audrasjb
audrasjb / redirect-authors
Last active September 28, 2022 21:07
Plugin created for Philippe from the WordPress France Entraide Facebook group.
<?php
/**
* Plugin Name: Redirect Authors
* Description: Redirect authors to a specific front-end page with their posts.
* Author: audrasjb
* Author URI: https://jeanbaptisteaudras.com
* License: GPLv2 or later
* Version: 1.0.0
*/
<?php
function declare_geo_shortcodes() {
add_shortcode( 'geoLink', 'geo_shortcode_link' );
add_shortcode( 'geoMap', 'geo_shortcode_map' );
}
add_action( 'init', 'declare_geo_shortcodes' );
function geo_shortcode_link() {
$html = "<link rel='stylesheet' href='https://unpkg.com/[email protected]/dist/leaflet.css'
integrity='sha512-hoalWLoI8r4UszCkZ5kL8vayOGVae1oxXe/2A4AO6J9+580uKHDO3JdHb7NzwwzK5xr/Fs0W40kiNHxM9vyTtQ=='
@audrasjb
audrasjb / functions.php
Last active June 9, 2022 13:42
Hide post date for specific categories in Twenty Seventeen (asked by Marie-Christine Rcd on WordPress Academy Facebook group – June 9, 2022)
<?php
function jba_hide_posted_on() {
if ( in_category( array( 'ma-categorie', 'une-autre-categorie' ) ) ) :
?>
<style>.posted-on { display: none; }</style>
<?php
endif;
}
add_action( 'wp_head', 'jba_hide_posted_on' );
@audrasjb
audrasjb / functions.php
Last active February 2, 2022 12:44
ADEME – Génération d'un flux RSS personnalisé sur WordPress
<?php
function ademe_test_feed_init() {
/*
* Génère un flux personnalisé et détermine une fonction d'affichage.
*
* Le premier paramètre indique l'url du flux généré.
* Le second paramètre détermine la fonction d'affichage associée.
*/
add_feed( 'ademe_press_feed_taxo_theme', 'ademe_press_feed_taxo_theme_response' );
}
@audrasjb
audrasjb / functions.php
Created October 19, 2021 22:36
[polylang] create a shortcode to get the 3 last post, of all available languages
function jba_register_shortcode() {
add_shortcode( 'jba_posts', 'jba_shortcode_cb' );
}
add_action( 'init', 'jba_register_shortcode' );
function jba_shortcode_cb( $args ) {
$args = array(
'post_type' => 'post',
'posts_per_page' => 3,
'tax_query' => '',
@audrasjb
audrasjb / functions.php
Last active October 1, 2021 11:40
Display a script depending on the language of the page (WPML)
// Put this hook in your functions.php file
function jba_analytics_depending_on_language() {
if ( 'en' === ICL_LANGUAGE_CODE ) {
?>
<!-- INSERT YOUR SCRIPT FOR ENGLISH -->
<?php
} elseif ( 'fr' === ICL_LANGUAGE_CODE ) {
?>
<!-- INSERT YOUR SCRIPT FOR FRENCH -->
<?php