Custom templates not showing up in template dropdown in WordPress 4.9

In wordpress there is a bug. When you create new custom template and search in backend dropdown you are not able to view custom template name in WordPress. Needs to wait until clears the bug.

Simple solution below

update below code in functions.php

function wp_42573_fix_template_caching( WP_Screen $current_screen ) {
	// Only flush the file cache with each request to post list table, edit post screen, or theme editor.
	if ( ! in_array( $current_screen->base, array( 'post', 'edit', 'theme-editor' ), true ) ) {
		return;
	}
	$theme = wp_get_theme();
	if ( ! $theme ) {
		return;
	}
	$cache_hash = md5( $theme->get_theme_root() . '/' . $theme->get_stylesheet() );
	$label = sanitize_key( 'files_' . $cache_hash . '-' . $theme->get( 'Version' ) );
	$transient_key = substr( $label, 0, 29 ) . md5( $label );
	delete_transient( $transient_key );
}
add_action( 'current_screen', 'wp_42573_fix_template_caching' );

More Info – https://core.trac.wordpress.org/ticket/42573

How to change port in GIT

When you clone repository from git using SSH you may get following error message

ssh: connect to host github.com port 22: Bad file number 
ssh: connect to host (some host or IP address) port 22: Bad file number

Solution :

Step 1: open gitbash
Step 2: > touch ~/.ssh/config
Step 3: > Paste following code in config file

Host github.com
   User git
   Hostname ssh.github.com
   PreferredAuthentications publickey
   IdentityFile ~/.ssh/id_rsa
   Port 443

Get started with React js – Tutorial for React JS Beginners

Create new reactapp using NPM

npm install -g create-react-app
create-react-app my-app
--------
cd my-app
npm start

Advantages using reactJS over AngularJS

  • Component Structured
  • SEO friendly because of virtual DOM
  • JSX and reactNative
  • Used in Facebook and Instagram
  • Virtual Dom in main advanatage of using reactjs

JSX indepth

  • Javascript XML

More on – JXS In Depth

Basic Syntax

createClass in React < 15.0.0

import React from 'react';

const Contacts = React.createClass({
render() {
return (
<div></div>
);
}
});

export default Contacts;

Note : react.createclass is deprecated since react 15.5.0

Components

class Comment extends React.Component {
  constructor(props) {
        super(props);
        this.state = {
            counter: 0
        };
  }
  render(){
    return <h1>{this.props.name}</h1>;
  }
}

React.render(<Comment name={'Comment'}/>, document.getElementById('container'));

Stateless Components

  const Headline = () => {
  return <h1>React Cheat Sheet</h1>
}

Props
Props – Read only & not be modified

State
state changes async
can be modidfied using this.setState