Merhabalar,

daha önce ki bir yazımda, Custom Post Type kullanımı hakkında detaylıca bilgi vermeye çalışmıştım.
İlgili Makale : WordPress Custom Type Kullanımı ve Temaya Eklenmesi konusunda detayları anlattım fakat aldığım mailler ve gördüğüm sorunların başında gelen işlemlerden birisi şu ki, Custom Post Type ile eklediğiniz içeriklere özel alan ile birlikte eklediğiniz bilgileri Metabox ile desteklemek, yabancı kaynaklarda da net olarak bilgi verilmemiş olsa da kendi çapımda yazdığım kodlar yeterli bir şekilde benim işimi görmekte sizin de işinizi görebileceğini inanıyorum, Kolay gelsin.

Örnek Görsel

Custom-post-type-metabox

 

İşlemimiz 3.Aşamada tamamlanacak, fakat 2 ve 3. Aşamaları üstte verdiğim linkten takip edebilirsiniz.

 

1.Aşama

<?php
function isim_custom_init() {
$labels = array(
'name' => _x( 'İsim', 'isim' ),
'singular_name' => _x( 'İsim', 'isim' ),
'add_new' => _x( 'İsim Ekle', 'isim' ),
'add_new_item' => _x( 'İsim isim Ekle', 'isim' ),
'edit_item' => _x( 'Düzenle', 'isim' ),
'new_item' => _x( 'Yeni İsim', 'isim' ),
'view_item' => _x( 'Görüntüle', 'isim' ),
'search_items' => _x( 'Ara', 'isim' ),
'not_found' => _x( 'Bulunamadı', 'isim' ),
'not_found_in_trash' => _x( 'Boşalt', 'isim' ),
'parent_item_colon' => _x( 'Parent isim:', 'isim' ),
'menu_name' => _x( 'İsim', 'isim' ),
'menu_name' => 'sim Detay'
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'menu_icon' => get_bloginfo( 'template_directory' ) . '/images/isim.gif',
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'isim' ),
'capability_type' => 'page',
'has_archive' => true,
'hierarchical' => true,
'menu_position' =>4,
'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'page-attributes' ),
);
register_post_type( 'isim', $args );
}
add_action( 'init', 'isim_custom_init' );
//adding the meta box when the admin panel initialises
add_action("admin_init", "admin_init");
// this adds the save teaser function on save post
add_action('save_post', 'save_teaser');
function admin_init(){
add_meta_box('teaser_loop', 'Ayarlar', 'loop_meta', 'isim', 'normal', 'default');
}
// callback function of add meta box that displays the meta box in the post edit screen
function loop_meta($post, $args){
$konu = get_post_meta($post->ID, 'konu', true);
$turler = get_post_meta($post->ID, 'turler', true);
?>
<style>
.baslik {width:800px;font-weight:bold;font-size:15px}
textarea {
border: 1px solid #CCCCCC;
background-color: #FFFFFF;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
width:600px;
margin-top:5px;
color:red;}
.textbox {
border: 1px solid #CCCCCC;
background-color: #FFFFFF;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
width:600px;
margin-top:5px;
color:red;}</style>
<div class="button realcuf baslik"><label>Konu </label></div><div style="clear:both;"></div>
<textarea type="textarea" name="konu" /><?php echo $konu; ?></textarea><br/>
&nbsp;
<div class="button realcuf baslik"><label>Türler </label></div><div style="clear:both;"></div>
<input class="textbox" type="text" name="turler" value="<?php echo $turler; ?>" /><br/>
<?php
}
// saving the teaser
function save_teaser(){
global $post;
update_post_meta($post->ID, 'konu', $_POST['konu']);
update_post_meta($post->ID, 'turler', $_POST['turler']);
}
&nbsp;
?>

 

2 ve 3 Aşamaları WordPress Custom Type Kullanımı ve Temaya Eklenmesi buradan takip edebilirsiniz.

Metin Saraç 5 55 29 Haziran 2014
0 beğeni - 5 Yorum