Skip to content

Instantly share code, notes, and snippets.

Avatar
🚀
👨‍🏭

Jeremy Herve jeherve

🚀
👨‍🏭
View GitHub Profile
@jeherve
jeherve / plugin.php
Last active Apr 4, 2021
[Post Views For Jetpack] Display a Stats counter at the top of every post, with a "Views:" heading.
View plugin.php
<?php
/**
* Display a Stats counter at the top of every post, with a "Views:" heading.
* @see https://wordpress.org/support/topic/page-views-off/
*
* @param string $content Post content.
*/
function jeherve_custom_display_post_views( $content ) {
$post_views = sprintf(
'<div class="stats_counter sd-content"><h3 class="sd-title">%1$s</h3><div class="sd-content">%2$s</div></div>',
@jeherve
jeherve / plugin.php
Last active Nov 26, 2020
[Jetpack] A little plugin to strip down Jetpack until all what's left is the Markdown block
View plugin.php
<?php
/**
* Plugin Name: Markdown from Jetpack
* Plugin URI: https://jetpack.com
* Description: Use only the Markdown block in Jetpack, nothing else. This must be installed in addition to the Jetpack plugin.
* Author: Automattic
* Version: 1.0.0
* Author URI: https://jetpack.com
* License: GPL2+
* Requires at least: 5.5
View direct-podcast.php
<?php
/**
* Display a Podcast player anywhere.
* Pulled from extensions/blocks/podcast-player/podcast-player.php
* @see https://github.com/Automattic/jetpack/blob/b88b1edbdce4d8576ce9be02a9093702ae112fed/extensions/blocks/podcast-player/podcast-player.php
* @see https://wordpress.org/support/topic/embedding-the-podcast-player-with-code/
*/
function jeherve_display_podcast() {
// bail early if Jetpack isn't installed.
if ( ! class_exists( 'Jetpack' ) ) {
@jeherve
jeherve / jetpack-feature-list-20200309.md
Last active Apr 16, 2021
[Jetpack] List of features as of March 9, 2020
View jetpack-feature-list-20200309.md

Jetpack Feature list as of May 13, 2020

Feature Name Requires Connection to WordPress.com Description Activated for you when you first connect the plugin to WordPress.com
Ads Yes Run ads via the WordPress.com Ad network No
Asset CDN No Serve static files (from Core, Jetpack, and WooCommerce) from our CDN. No
Backups and Scanning Yes Daily or real-time backups and automated virus scanning and threat detection. All happens on WordPress.com No
Blocks Yes/No Add 27 blocks to the editor. Some rely on the WordPress.com infrastructure, others don't Yes
Beautiful Math No Use the LaTeX markup language to write mathematical equations and formulas No
Carousel No Carousel display on galleries and single images No
View managing-jetpack-blocks.md

You could use the jetpack_set_available_extensions filter (reference) to avoid registering some of Jetpack's blocks in the editor. When you do so, they won't appear in the block editor.

That said, it won't change the size of the CSS file used to style those blocks in the editor; that file concatenates CSS for all blocks, regardless of what's actually available in the editor. It should not be too much of an issue though:

  1. That file is minified and rather small (63.8 KB right now - #).
  2. The file is only loaded in the editor. It is not loaded on the frontend. On your site, we only load CSS for the blocks that are on the page, and need CSS, and in those cases we use separate CSS files like the ones you can find in this directory.

I hope this clarifies things a bit.

@jeherve
jeherve / debug-wordpress.md
Created Sep 11, 2018
A test Gist, with 2 files
View debug-wordpress.md

Enable Debugging in WordPress

To enable debugging in WordPress, you will need to add the following to your site's wp-config.php file:

define( 'WP_DEBUG', true );

if ( WP_DEBUG ) {
	@error_reporting( E_ALL );
	@ini_set( 'log_errors', true );
@jeherve
jeherve / debug-wordpress.md
Last active Apr 12, 2021
How To: Enable Debugging in WordPress
View debug-wordpress.md

Enable Debugging in WordPress

To enable debugging in WordPress, you will need to add the following to your site's wp-config.php file:

define( 'WP_DEBUG', true );

if ( WP_DEBUG ) {
	@error_reporting( E_ALL );
	@ini_set( 'log_errors', true );
@jeherve
jeherve / plugin.php
Last active Sep 30, 2021
Remove state field from woocommerce checkout form.
View plugin.php
<?php
/**
* Remove state field from woocommerce checkout form.
*
* @see https://github.com/woocommerce/woocommerce/blob/3.1.2/includes/class-wc-countries.php#L629
*
* @param array $fields Array of default address fields.
*/
function jeherve_remove_state_field( $fields ) {
unset( $fields['state'] );
View plugin.php
<?php
/**
* Plugin Name: Add a list of Jetpack related posts to the bottom of each post in the Rest API Posts Embeds shortcode.
* Plugin URI: http://jeremy.hu/
* Description: Add a list of Jetpack related posts to the bottom of each post in the Rest API Posts Embeds shortcode.
* Author: Jeremy Herve
* Version: 1.0.0
* Author URI: https://jeremy.hu
* License: GPL2+
*/
@jeherve
jeherve / stats.md
Created Feb 21, 2017
Differences between different Stats plugins
View stats.md

The kStats Reloaded plugin hasn't been updated in the past 7 years, and offers few ways to exclude visits. It will consequently count a lot of bots, crawlers, and search engines.

WP Statistics is updated a lot more often, but since it relies on data included in the plugin itself, you can expect some bots to be included in the stats. You can find out more in the plugin's FAQ (see I'm using another statistics plugin/service and get different numbers for them, why?). It may also count your own visits.

Jetpack Stats, on the other hand, will exclude visits from logged in users by default. It also relies on the WordPress.com cloud to filter and exclude bots and other crawlers, and all calculatations happen on our servers so it won't affect your site's performance.