How to add attributes to a shortcode

You just have to add another element to the array (and then output it): function btn_shortcode( $atts, $content = null ) { $a = shortcode_atts( array( ‘class’ => ‘button’, ‘href’ => ‘#’ ), $atts ); return ‘<a class=”‘ . esc_attr($a[‘class’]) . ‘” href=”‘ . esc_attr($a[‘href’]) . ‘”>’ . $content . ‘</a>’; } add_shortcode( ‘button’, ‘btn_shortcode’ … Read more

Add action hook conditionally – only when home.php in use

Use is_home instead, as is_page_template will not work for home.php as its technically not a page template in the traditional sense. add_action(‘template_redirect’, ‘are_we_home_yet’, 10); function are_we_home_yet(){ if ( is_home() ) { //your logic here } } Revised: add_action(‘template_redirect’, ‘are_we_home_yet’, 10); function are_we_home_yet(){ global $template; $template_file = basename((__FILE__).$template); if ( is_home() && $template_file=”home.php” ) { //do … Read more

Extending auth_cookie_expiration based on user role

Untested, but the following should only change the expiration time for admins who select ‘remember me’. function wpse108399_change_cookie_logout( $expiration, $user_id, $remember ){ if( $remember && user_can( $user_id, ‘manage_options’ ) ){ $expiration = 60;// yes, I know this is 1 minute } return $expiration; } add_filter( ‘auth_cookie_expiration’,’wpse108399_change_cookie_logout’, 10, 3 );

Refresh page after form action

Searching around and not being able to implement the action through init hook I’ve found this workaround which for sure isn’t the best but does the job nicely. echo “<script type=”text/javascript”> window.location=document.location.href; </script>”; at the end of $_POST instructions. If somebody has a better solution, welcome to share.