Skip to content

Instantly share code, notes, and snippets.

View 1naveengiri's full-sized avatar
🏠
Working from home

Naveen Giri 1naveengiri

🏠
Working from home
View GitHub Profile
@1naveengiri
1naveengiri / remove-broken-media.php
Created March 5, 2018 15:40
Remove Broken Media from WordPress setup using WP_CLI Command
<?php
/**
* Plugin Name: Remove Broken Media
* Plugin Author: 1naveengiri(Naveen Giri)
* Plugin URI: http://1naveengiri.wordpress.com
* Description: WordPress plugin to remove all Broken Media post
*/
/**
* Class to clear old revision data.
@1naveengiri
1naveengiri / remove-draft-post.php
Last active March 5, 2018 15:55
Remove Draft post in WordPress using WP-CLI - Multisite - Single Site
<?php
/**
* Plugin Name: Remove Draft post
* Plugin URI: http://1naveengiri.wordpress.com
* Description: plugin to remove all draft post
*/
/**
* Class to clear old revision data.
*/
@1naveengiri
1naveengiri / tinymce-char-length.js
Created March 14, 2018 11:40
Set Character limit for tinymce Text Editor
/**
* This was an expamle of tinymce in repeatable field
* I hav't handled case for copy paste text in the editor so max limit will not be checked when you cntl+c&cntl+v
* but on texteditor change I have reset the content to max char limit.
*/
jQuery( document ).on( 'tinymce-editor-init', function( event, editor ) {
jQuery(".games-section .repeatable-item").each(function(){
var this_id = jQuery(this).attr('data-items');
var this_id = 'book_game_item_description_' + this_id;
@1naveengiri
1naveengiri / function.php
Last active March 30, 2018 19:09
How to add page/post as menu Item programmatically in WordPress?
<?php
/**
* To add a page/post in WordPress menu
*/
$menu_id = 4; //menu ID.
$_post_id = 5; // post/page ID.
// note here $menu_item_db_id is already added menu item ID, if it will be 0 new menu will be added otherwise we can edit previous menu with code.
$menu_response_data = wp_update_nav_menu_item( $menu_id , $menu_item_db_id=0, array(
'menu-item-object-id' => $_post_id,
'menu-item-object' => 'page',
@1naveengiri
1naveengiri / function.php
Last active March 30, 2018 19:10
How to add custom link as menu Item programmatically in WordPress Menu?
<?php
/**
* To add a custom link as custom menu item in WordPress menu
*/
$menu_id = 4; // WordPress menu ID.
wp_update_nav_menu_item($menu_id, 0, array(
'menu-item-title' => __('Home'),
'menu-item-classes' => 'home',
'menu-item-url' => 'http://buddydevelopers.com',
'menu-item-status' => 'publish'
@1naveengiri
1naveengiri / class-top-post-widget.php
Last active April 13, 2018 18:05
Top/Popular post by Google analytics in WordPress
<?php
/**
* This widget is depend on https://wordpress.org/plugins/google-analytics-post-pageviews/
*
* Steps:
* 1. Create a Google developer project - http://console.developers.google.com/
*
* 2.enable google analytics service, you can check
* - https://www.youtube.com/watch?v=AX9PtgKPnuM,
* - https://developers.google.com/ad-exchange/rtb/open-bidder/google-app-guide
@1naveengiri
1naveengiri / social-sharing-bar.php
Last active April 16, 2018 17:07
Social sharing feature in few lines of code
<?php
/**
* Social share bar
* @param int $post_id post id
* @param string $title post title
* @param string $twitter_via twitter handle
*/
function custom_social_share( $post_id, $title, $twitter_via ){
if( !empty( $post_id ) && !empty( $title ) && !empty( $twitter_via )):
$post_url = get_permalink( $post_id );
@1naveengiri
1naveengiri / phpcs.ruleset.xml
Last active June 3, 2020 10:34
Pre commit hook for WPCS and PHPCS check
<?xml version="1.0"?>
<ruleset name="WordPress Develop">
<rule ref="WordPress" />
</ruleset>
@1naveengiri
1naveengiri / mu-delete-revision.php
Last active February 28, 2019 14:14
Clear all revision in you single site or multisite with WP-CLI Command. You can also keep few of them with the help of this command.
<?php
/**
* Plugin Name: Clear Old Revisions
* Plugin URI: http://buddydevelopers.com
* Description: plugin to clear old revision data.
*/
/**
* Class to clear old revision data.
*/
if ( defined( 'WP_CLI' ) && WP_CLI ) {
@1naveengiri
1naveengiri / function.php
Last active August 3, 2018 08:27
Add new consent in Awesome Support
<?php
add_filter('wpas_gdpr_consents', 'add_new_gdpr_consent_item', 10, 1 );
/**
* Function to add new consent in AS settings.
*
* @param array $gdpr_consent_options GDPR consent options
*/
function add_new_gdpr_consent_item( $gdpr_consent_options ){
$consent_short_desc = wpas_get_option( 'join_mailing_list_short_note', false );
$gdpr_id = wpas_get_gdpr_data( $consent_short_desc );