Skip to content

Instantly share code, notes, and snippets.

View pinalj's full-sized avatar

Pinal pinalj

  • Tyche Softwares
  • Mumbai
View GitHub Profile
@pinalj
pinalj / my-posts-filter.php
Last active March 31, 2023 07:20
Filtering Posts based on Author ID - REST API
<?php
add_action( 'rest_api_init', 'my_register_route');
function my_register_route() {
register_rest_route( 'my-route', 'my-posts/(?P<id>\d+)', array(
'methods' => 'GET',
'callback' => 'my_posts',
'args' => array(
'id' => array(
'validate_callback' => function( $param, $request, $key ) {
@pinalj
pinalj / custom-email-manager.php
Last active October 29, 2021 13:52
This file contains the code to include email classes and trigger custom emails.
<?php
/**
* Handles email sending
*/
class Custom_Email_Manager {
/**
* Constructor sets up actions
*/
public function __construct() {
@pinalj
pinalj / my-posts.php
Created December 1, 2017 06:33
Display all posts using REST API
<?php
add_action( 'rest_api_init', 'my_register_route');
function my_register_route() {
register_rest_route( 'my-route', 'my-posts', array(
'methods' => 'GET',
'callback' => 'my_posts',
'permission_callback' => function() {
return current_user_can( 'edit_others_posts' );
@pinalj
pinalj / permission_check.php
Last active December 1, 2017 06:49
Check for permissions for API
<?php
add_action( 'rest_api_init', 'my_register_route' );
function my_register_route() {
register_rest_route( 'my-route', 'my-phrase', array(
'methods' => 'GET',
'callback' => 'custom_phrase',
'permission_callback' => function() {
return current_user_can( 'edit_posts' );
},
@pinalj
pinalj / hello_world.php
Last active November 30, 2017 12:37
Create custom REST route
<?php
add_action( 'rest_api_init', 'my_register_route' );
function my_register_route() {
register_rest_route( 'my-route', 'my-phrase', array(
'methods' => 'GET',
'callback' => 'custom_phrase',
)
);
}
@pinalj
pinalj / add-notice.php
Last active November 3, 2017 10:39
Adding an error notice
<?php
add_action( 'admin_notices', 'my_error_notice' );
function my_error_notice() {
?>
<div class="notice notice-error">
<p><?php _e( 'There has been an error.', 'my-text-domain' );?></p>
</div>
<?php
}
@pinalj
pinalj / conditional-notice.php
Last active November 3, 2017 10:38
Conditional Notice
<?php
if( ! empty( get_option( 'my_update_status' ) ) ) {
add_action( 'admin_notices', 'my_update_notice' );
}
function my_update_notice() {
?>
<div class="notice notice-success">
<p><?php _e( 'The update was completed successfully!', 'my-text-domain' ); ?></p>
</div>
@pinalj
pinalj / dismissible.php
Last active November 3, 2017 10:38
Adding a dismissible notice
<?php
if( get_option( 'my_dismiss_notice' ) != true ) {
add_action( 'admin_notices', 'add_dismissible' );
}
function add_dismissible() {
?>
<div class='notice notice-error my-dismiss-notice is-dismissible'>
<p>This is a dismissble notice.</p>
</div>
@pinalj
pinalj / include-js.php
Last active November 3, 2017 10:37
Include JS file
<?php
add_action( 'admin_enqueue_scripts', 'add_script' );
function add_script() {
wp_register_script( 'notice-update', plugins_url() . '/add-notices/js/update-notice.js','','1.0', false );
wp_localize_script( 'notice-update', 'notice_params', array(
ajaxurl => get_admin_url() . 'admin-ajax.php',
));
@pinalj
pinalj / update-option.php
Last active November 3, 2017 10:37
Update the option record
<?php
add_action( 'wp_ajax_my_dismiss_notice', 'my_dismiss_notice' );
function my_dismiss_notice() {
update_option( 'my_dismiss_notice', true );
}
?>