First page of the add_filter archive.

Remove Comment Form Website Section

Posted by The Doctor on Jan 17, 2012 with 1 Comment | Short Link
in Functions, Tips
as , , ,

From time to time an interesting Five-Minute-FixTM comes along that sparks a great reason to add another WordPress Tips post. The idea for this tip started with this comment at BuyNowShop.com:

… how to remove the website section when leaving a reply/comment …

The solution may be obvious to some and can be readily derived from the information found on the WordPress codex page for the `comment_form` function, but if you are new to WordPress and/or not familiar with writing a function to use with `add_filter`, here is a very simple and working snippet to use in your theme:

To see the tip click here.To hide the tip click here.
function wpfa_remove_comment_website_section(){
    $commenter = wp_get_current_commenter();
    $req = get_option( 'require_name_email' );
    $aria_req = ( $req ? " aria-required='true'" : '' );
    $fields =  array(
        'author' => '<p class="comment-form-author">' . '<label for="author">' . __( 'Name' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
                    '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>',
        'email'  => '<p class="comment-form-email"><label for="email">' . __( 'Email' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
                    '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></p>',
        'url'    => '' /** removes website section */,
    );
    return $fields;
}
add_filter( 'comment_form_default_fields', 'wpfa_remove_comment_website_section' );

Ideally, this will be placed in the ‘functions.php’ file of your theme, but better yet this should be included in the Child-Theme you created of the theme you want to modify.

Filtering WP Title

Posted by The Doctor on Nov 30, 2011 with No Comments | Short Link
Last modified by The Doctor on April 26, 2012
in Tips
as , , , , , ,

A recent recommendation, starting with WordPress 3.3, from the WordPress Theme Review Team reads:

Themes are REQUIRED to use wp_title filter to filter wp_title() (RECOMMENDED), or pass argument to wp_title() (OPTIONALLY), in order to modify document title content

This has been discussed, worked through, and for the most part sorted out … but there doesn’t appear to be any sort of example code to work from. This presented an opportunity to have a look around the WordPress codex and the source code for some ideas how to filter the `wp_title` function.

Essentially, the idea behind the code (below) is to take a basic function call of `wp_title` add some relevant text (a la default themes: Twenty Ten / Twenty Eleven) then filter it back into the function; and finally to echo this to the HTML <title> tag.

To see the WPFA WP Title code click here.To hide the WPFA WP Title code click here.
<?php
if ( ! function_exists( 'wpfa_wp_title' ) ) {
    /**
* WPFA WP Title
*
* Utilizes the `wp_title` filter to add text to the default output
*
* @package WPFA_WP_Title
* @version 0.2 - last revised April 26, 2012
*
* @link http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title
* @link https://gist.github.com/1410493
*
* @param string $old_title - default title text
* @param string $sep - separator character
* @param string $sep_location - left|right - separator placement in relationship to title
*
* @return string - new title text
*/
    function wpfa_wp_title( $old_title, $sep, $sep_location ) {
        global $page, $paged;
        /** Set initial title text */
        $wpfa_title_text = $old_title . get_bloginfo( 'name' );
        /** Add wrapping spaces to separator character */
        $sep = ' ' . $sep . ' ';

        /** Add the blog description (tagline) for the home/front page */
        $site_tagline = get_bloginfo( 'description', 'display' );
        if ( $site_tagline && ( is_home() || is_front_page() ) )
            $wpfa_title_text .= "$sep$site_tagline";

        /** Add a page number if necessary */
        if ( $paged >= 2 || $page >= 2 )
            $wpfa_title_text .= $sep . sprintf( __( 'Page %s', 'wpfa-wp-title-textdomain' ), max( $paged, $page ) );

        return $wpfa_title_text;
    }
}
add_filter( 'wp_title', 'wpfa_wp_title', 10, 3 ); ?>

Hopefully this will be useful, or maybe it will not … but it will be found in the next release of Desk Mess Mirrored as that is the theme where I first wrote and tested it with.

Enjoy!

To see the note click here.To hide the note click here.
PS: Note the github:gist link in the code sample … feel free to download it from there, as well as copying it from here. The Doctor.
To see the note click here.To hide the note click here.
Code example revised April 26, 2012 to more correctly use the `wp_title` filter. Also to note, this method now expects the theme to simply call wp_title() in the ‘header.php’ template. The Doctor.

Extend the WordPress Menu

Posted by The Doctor on Oct 7, 2010 with 22 Comments | Short Link
Last modified by The Doctor on October 12, 2010
in Tips
as , , , , , , ,

Expand the wp_nav_menu() function by adding menu items to the output with the add_filter() function.