• 12-11-2012, 19:32:05
    #1
    S.a arkadaşlar ben wordpress boxoffice teması kullanıyorum . Bu tema filmleri yazılar bölümümden değilde kendi oluşturduğu movies kısmından ekletiyor. Ben movies bölümüne taxonomy kullanarak oyuncular bölümü eklemek istiyorum fakat eklemek istediğimde oyuncular movie kısmı yerine yazılar kısmına ekleniyor.

    Kullandığım Kod :

    add_action( 'init', 'create_my_taxonomies', 0 ); 
    
    function create_my_taxonomies() {register_taxonomy( 'oyuncular', 'post', array( 'manage_movies_columns' => false, 'label' => 'oyuncular', 'query_var' => true, 'rewrite' => true ) ); }
    Oyuncuların Çıktığı Kısım



    Eklemek İstediğim Kısım



    <?php
    
    include 'theme_options.php';
    include 'guide.php';
    include 'lib/post-types.php';
    include 'lib/metabox.php';
    
    
    /* SIDEBARS */
    if ( function_exists('register_sidebar') )
    	register_sidebar(array(
    	'name' => 'Sidebar',
        'before_widget' => '<li class="sidebox %2$s">',
        'after_widget' => '</li>',
    	'before_title' => '<h3 class="sidetitl">',
        'after_title' => '</h3>',
    	
        ));
    
    
    	
    /* CUSTOM MENUS */	
    
    register_nav_menus( array(
    		'primary' => __( 'Primary Navigation', '' ),
    	) );
    	
    function fallbackmenu(){ ?>
    			<div id="submenu">
    				<ul><li> Go to Adminpanel > Appearance > Menus to create your menu. You should have WP 3.0+ version for custom menus to work.</li></ul>
    			</div>
    <?php }	
    
    
    /* CUSTOM EXCERPTS */
    	
    function wpe_excerptlength_index($length) {
        return 70;
    }
    
    function wpe_excerpt($length_callback='', $more_callback='') {
        global $post;
        if(function_exists($length_callback)){
            add_filter('excerpt_length', $length_callback);
        }
        if(function_exists($more_callback)){
            add_filter('excerpt_more', $more_callback);
        }
        $output = get_the_excerpt();
        $output = apply_filters('wptexturize', $output);
        $output = apply_filters('convert_chars', $output);
        $output = '<p>'.$output.'</p>';
        echo $output;
    }
    
    
    
    /* SHORT TITLES */
    
    function short_title($after = '', $length) {
       $mytitle = explode(' ', get_the_title(), $length);
       if (count($mytitle)>=$length) {
           array_pop($mytitle);
           $mytitle = implode(" ",$mytitle). $after;
       } else {
           $mytitle = implode(" ",$mytitle);
       }
           return $mytitle;
    }
    
    
    /* FEATURED THUMBNAILS */
    
    if ( function_exists( 'add_theme_support' ) ) { // Added in 2.9
    	add_theme_support( 'post-thumbnails' );
    		add_image_size( 'boxoffice_poster', 100, 150, true );
    }
    
    /* GET THUMBNAIL URL */
    
    function get_image_url(){
    	$image_id = get_post_thumbnail_id();
    	$image_url = wp_get_attachment_image_src($image_id,'large');
    	$image_url = $image_url[0];
    	echo $image_url;
    	}	
    
    /* PAGE NAVIGATION */
    
    function getpagenavi(){
    ?>
    <div id="navigation">
    <?php if(function_exists('wp_pagenavi')) : ?>
    <?php wp_pagenavi() ?>
    <?php else : ?>
    <div class="alignright"><?php next_posts_link(__('Sonraki Filmler &raquo;','web2feel')) ?></div>
    
            <div class="alignleft"><?php previous_posts_link(__('&laquo; Önceki Filmler','web2feeel')) ?></div>
            
            <div class="clear"></div>
    <?php endif; ?>
    </div>
    
    <?php
    }
    
    
    // Add to admin_init function
    add_filter('manage_edit-movies_columns', 'add_new_movies_columns');
    
    	function add_new_movies_columns($movies_columns) {
    		$new_columns['cb'] = '<input type="checkbox" />';
     		$new_columns['title'] = _x('Movie name', 'column name');
    		$new_columns['poster'] = __('Poster');
    		$new_columns['director'] = __('Director');
    		$new_columns['genre'] = __('Genre');
    		$new_columns['runtime'] = __('Runtime');		
     		$new_columns['date'] = _x('Date', 'column name');
     		return $new_columns;
    	
    }
    
    add_action( 'init', 'create_my_taxonomies', 0 ); 
    
    function create_my_taxonomies() {register_taxonomy( 'oyuncular', 'post', array( 'manage_movies_columns' => false, 'label' => 'oyuncular', 'query_var' => true, 'rewrite' => true ) ); }
    	
    add_action('manage_movies_posts_custom_column', 'manage_movies_columns', 10, 2);
     
    	function manage_movies_columns($column_name, $id) {
    		global $post;
    		switch ($column_name) {
    		case 'id':
    			echo $id;
    		break;
     
    		case 'poster':
    			echo get_the_post_thumbnail( $post->ID, 'boxoffice_poster' ); 
    		break;
    			
    		case 'runtime':
    			$duration = get_post_meta( $post->ID, 'wtf_runtime', true );
    			echo $duration;
    		break;
    		case 'director':
    			$director = get_post_meta( $post->ID, 'wtf_dirctr', true );
    			echo $director;
    		break;
    		case 'genre':
    			//echo get_the_term_list( $post->ID, 'movie-genre', '', ' ', '' );
    			$post_type = get_post_type($post_id);
    			$terms = get_the_terms($post_id, 'movie-genre');
    			if ( !empty($terms) ) {
    				foreach ( $terms as $term )
                $post_terms[] = "<a href='edit.php?post_type=movies&movie-genre={$term->slug}'> " . esc_html(sanitize_term_field('name', $term->name, $term->term_id, $taxonomy, 'edit')) . "</a>";
    				echo join( ', ', $post_terms );
    			}
    			else echo '<i>No terms.</i>';
    		break;
    			
    	default:
    			break;
    		} // end switch
    	}	
    	
    /* Flush your rewrite rules */
    function boxoffice_flush_rewrite_rules() {
    	global $pagenow, $wp_rewrite;
    
    	if ( 'themes.php' == $pagenow && isset( $_GET['activated'] ) )
    		$wp_rewrite->flush_rules();
    }
    
    add_action( 'load-themes.php', 'boxoffice_flush_rewrite_rules' );
    		
    
    /* WP 3.4 custom query pagination fix */
    
    function my_query_for_homepage( $query ) {
    if( $query->is_main_query() && $query->is_home() ) {
    $query->set( 'post_type', array( 'movies' ) );
    }
    }
    add_action( 'pre_get_posts', 'my_query_for_homepage' ); 	
    
    ?>
  • 12-11-2012, 19:36:09
    #2
    İşte böyle sorular sorulsun bu forumda arkadaş ya

    Hocam öncelikle temanın kaynak kodlarından movies kısmının post type ismini öğrenmen gerek, büyük ihtimal movie ya da movies'tir. register_taxonomy() yaparken 2. parametrede bu post type'ını vermen gerekiyor, yani ikinci parametreye 'movie' ya da 'movies' her neyse yazmalısın.
  • 12-11-2012, 19:58:56
    #3
    by_antiseptic adlı üyeden alıntı: mesajı görüntüle
    İşte böyle sorular sorulsun bu forumda arkadaş ya

    Hocam öncelikle temanın kaynak kodlarından movies kısmının post type ismini öğrenmen gerek, büyük ihtimal movie ya da movies'tir. register_taxonomy() yaparken 2. parametrede bu post type'ını vermen gerekiyor, yani ikinci parametreye 'movie' ya da 'movies' her neyse yazmalısın.
    by_antiseptic cevabın için çok teşekkür ederim . Baya biraz kurcaladım ama bu konuda yeni olduğum için beceremedim . Post type ismi genellikle hangi dosyada yazar yada belli bir dosyası varmıdır . Ben functions.php kodlarını veriyorum belki yardımı olur
  • 12-11-2012, 20:01:51
    #4
    askin35 adlı üyeden alıntı: mesajı görüntüle
    by_antiseptic cevabın için çok teşekkür ederim . Baya biraz kurcaladım ama bu konuda yeni olduğum için beceremedim . Post type ismi genellikle hangi dosyada yazar yada belli bir dosyası varmıdır . Ben functions.php kodlarını veriyorum belki yardımı olur
    Alıntı
    $post_terms[] = "<a href='edit.php?post_type=movies
    Buradan uyanıyoruz hocam mevzuya, post_type movies imiş, 2. parametreyi movies yaparsan sorunun çözülmüş olur.
  • 12-11-2012, 22:07:37
    #5
    Kardeşim çok teşekkürler ederim . Sayende çözdüm sorunumu . Php bilmeden olmuyormuş onu anladım . Asp den vazgeçmem lazım