Skip to:
Content
Pages
Categories
Search
Top
Bottom

Re: Displayname check

<?php
/*
Plugin Name: No Duplicate Display Names
Description: Prevents users from using already existing display names.
*/

function check_display_name ( $user_id ) {

global $bbdb, $bb_current_id, $display_name;

$name_query = <<<EOQ
SELECT
user_login
FROM
$bbdb->users
WHERE
display_name = "$display_name"
AND
ID != "$bb_current_id"
EOQ;

if ( $name_clash = $bbdb->get_var( $name_query ) ) {
wp_redirect( add_query_arg( 'nameclash', $name_clash, get_user_profile_link( $user->ID ) ) );
exit;
}

}

add_action ( 'before_profile_edited', 'check_display_name' );

?>

You also need in your theme’s profile.php, before the line <?php elseif ( $user_id == bb_get_current_user_info( ‘id’ ) ) : ?>

<?php elseif ( $_GET['nameclash'] ) : ?>
<div class="notice error">
<p><?php printf(__('Display name already taken by %s'), $_GET['nameclash' ]); ?>. <a href="<?php profile_tab_link( $user_id, 'edit' ); ?>"><?php _e('Edit again ยป'); ?></a></p>
</div>

Also, I just set my display name to a SQL query string, yay :D

Skip to toolbar