Home > scripting > web bersama – jilid 2

web bersama – jilid 2

August 18, 2011

Tulisan ini dibuat untuk mempermudah membuat web bersama

Perubahan

  1. dbcn-user name dimanage dari user profile
  2. iklan rotasi diambil dari user_meta
  3. iklan di masing-masing article diambil dari profile user_meta

1. dbcn-user name dari user profile

Yang akan di rubah adalah

- Penambahan field dbcn-user name di user profile

- Penambahan field dbcn-user name di registrasi menu

1.1 Penambahan field dbc-user name di user profile

kuncinya ada di function.php, file ini adalah berisi customize dari built-in wordpress menu. Yang akan dilakukan adalah

menghilangkan field YM, AIM dan menambahkan dbcn-username di bagian contact info

function new_contactmethods( $contactmethods ) {
$contactmethods['dbcn_id'] = ‘<b> dBCn User Name </b>’; // Add dbcn user name field
unset($contactmethods['yim']); // Remove Yahoo IM
unset($contactmethods['aim']); // Remove AIM
unset($contactmethods['jabber']); // Remove Jabber

return $contactmethods;
}

add_filter(‘user_contactmethods’,'new_contactmethods’,10,1);

coding add_filter(‘user_contactmethods’, akan diexecute oleh wordpress sehingga memanggil function new_contactmethods.

Menghilangkan biographical info dengan,

function remove_plain_bio($buffer) {
$titles = array(‘#<h3>About Yourself</h3>#’,'#<h3>About the user</h3>#’);
$buffer=preg_replace($titles,’<h3>Password</h3>’,$buffer,1);
$biotable=’#<h3>Password</h3>.+?<table.+?/tr>#s’;
$buffer=preg_replace($biotable,’<h3>Password</h3> <table>’,$buffer,1);
return $buffer;
}

function profile_admin_buffer_start() { ob_start(“remove_plain_bio”); }
function profile_admin_buffer_end() { ob_end_flush(); }

add_action(‘admin_head’, ‘profile_admin_buffer_start’);
add_action(‘admin_footer’, ‘profile_admin_buffer_end’);

1.2 dbcn-user name sebagai mandatory field waktu registrasi

add_action(‘register_form’,'show_first_name_field’);
add_action(‘register_post’,'check_fields’,10,3);
add_action(‘user_register’, ‘register_extra_fields’);

function show_first_name_field(){
?>
<p>
<label>dBCn User Name<br/>
<input id=”user_email” type=”text” class=”input” tabindex=”20″ size=”25″ value=”<?php echo $_POST['dbcn']; ?>” name=”dbcn”/>
</label>
</p>
<?php
}
function check_fields($login, $email, $errors) {
global $firstname, $lastname;
if ($_POST['dbcn'] == ”) {
$errors->add(‘empty_realname’, “<strong>ERROR</strong>: Please Enter dBCn User Name”);
} else {
$firstname = $_POST['dbcn'];
}
}
function register_extra_fields($user_id, $password=”", $meta=array())  {

$userdata = array();
$userdata['ID'] = $user_id;
wp_update_user($userdata);
update_usermeta( $user_id, ‘dbcn_id’, $_POST['dbcn'] );
}

2. Iklan rotasi user

$dbcn_id_cnt=$wpdb->get_var($wpdb->prepare(“SELECT COUNT(*) AS cnt FROM $wpdb->usermeta WHERE meta_key = ‘dbcn_id’”));
$dbcs = rand(0, $dbcn_id_cnt – 1);
$dbc_id=$wpdb->get_var($wpdb->prepare(“SELECT meta_value FROM $wpdb->usermeta WHERE meta_key = ‘dbcn_id’ LIMIT 1 OFFSET $dbcs”));

?>
<br><div align=center><a href=”http://www.dbc-network.biz/?id=<?php echo $dbc_id; ?>&s1=dunia-anak-bannernad”><img src=”http://www.beritaterkinionline.com/images/umum-468a-605.jpg” border=0></a>
</div>

3. Iklan di masing-masing author

<div>
<div align=center><a href=”http://www.dbc-network.biz/?id=<?php the_author_meta(‘dbcn_id’); ?>&s1=resep-home-bannernad”><img src=”http://www.beritaterkinionline.com/images/umum-468a-605.jpg” border=0></a></div><br>

Advertisement
Categories: scripting
Follow

Get every new post delivered to your Inbox.