কাস্টম ট্যাক্সনোমি তালিকার ক্রম পরিবর্তন করুন


15

ডিফল্টরূপে ওয়ার্ডপ্রেস কাস্টম ট্যাক্সনোমিকে আদেশ দেয় (এই ক্ষেত্রে ট্যাগ হিসাবে) তারা ট্যাগ বাক্সে প্রবেশের আদেশ অনুসারে বর্ণানুক্রমিক আদেশ অনুসারে।

পোস্ট সম্পাদনা স্ক্রিনে কাস্টম ট্যাক্সনোমিকে তারা যেভাবে প্রবেশ করানো হয়েছে সেভাবে দেখানোর উপায় সম্পর্কে কি কেউ সচেতন?

প্রশ্নে থাকা ইউআরএল হ'ল: http://granadatheater.com/

জিজিডাব্লু (গোস গুড উইথ) শিল্পীরা বর্তমানে বর্ণানুক্রমিক ক্রমে আছেন এবং তারা চান যে এটি পরিবর্তন করা যাতে তারা orderedুকেছিল ঠিক সেভাবেই আদেশ করা হয়।

সুতরাং এটি যদি Artist1, Artist3, Artist2 প্রবেশ করে তবে এটি সাইটের সম্মুখভাগে প্রদর্শিত হওয়া উচিত।


আপনি প্রতি পোস্ট বেসে অর্ডার প্রবেশ করতে চান?
হ্যাক্রে

আইডি দিয়ে অর্ডার দিতে পারে?
বেনটারনেট

সেরা আমি বলতে পারি তারা বর্ণানুক্রমিক ক্রমে প্রদর্শিত হয়, তাই আমি সম্ভবত প্রশ্নটি বুঝতে পারছি না। আপনি এই কোথায় চান? আপনি কি একটি স্ক্রিনশট এবং একটি উদাহরণ URL দিতে পারেন যেখানে আপনি যা চান তা পরিবর্তন করতে পারবেন?
মাইকচিন্কেল

উত্তর:


0

এটি "বাক্সের বাইরে" সম্ভব নয় ...

ডিফল্ট 'অর্ডারবাই' বিকল্পগুলি (আরোহণ বা উতরাই) হয়

  • আইডি নাম
  • ডিফল্ট
  • স্লাগ্
  • গণনা
  • term_group

এগুলি সব কোডেক্সে বিশদ।

-

এটি বলেছিল যে এখানে কিছু চতুর মহিলা এবং জেন্টস রয়েছে। কেউ যদি এটির সমাধান করতে পারে তবে এই ছেলের মধ্যে একজনের কাছে আমি নিশ্চিত হতে পারি!


8

বেশ খানিকটা অনুসন্ধান এবং বিস্তৃত পরীক্ষার পরে, আমি উত্তরটি পেয়েছি।

আপনার থিমের ফাংশন.এফপি এই কোডটি যুক্ত করুন:

function set_the_terms_in_order ( $terms, $id, $taxonomy ) {
    $terms = wp_cache_get( $id, "{$taxonomy}_relationships_sorted" );
    if ( false === $terms ) {
        $terms = wp_get_object_terms( $id, $taxonomy, array( 'orderby' => 'term_order' ) );
        wp_cache_add($id, $terms, $taxonomy . '_relationships_sorted');
    }
    return $terms;
}
add_filter( 'get_the_terms', 'set_the_terms_in_order' , 10, 4 );

function do_the_terms_in_order () {
    global $wp_taxonomies;  //fixed missing semicolon
    // the following relates to tags, but you can add more lines like this for any taxonomy
    $wp_taxonomies['post_tag']->sort = true;
    $wp_taxonomies['post_tag']->args = array( 'orderby' => 'term_order' );    
}
add_action( 'init', 'do_the_terms_in_order');

(ক্রেডিট: এই উপর ভিত্তি করে তৈরি - কিন্তু উন্নত - http://wordpress.kdari.net/2011/07/listing-tags-in-custom-order.html )


প্রশাসক তাদের ক্যাশে সাফ করলেও কি এই কাজ করে? টার্ম অর্ডারের জন্য ক্যাশে নির্ভর করতে অনিশ্চিত বলে মনে হচ্ছে।
PBwebD

1
যদি প্রশাসক তাদের ক্যাশে সাফ করে দেয় তবে নতুন পদগুলি যে কোনওভাবেই চলে যাবে কারণ সেগুলি এখনও সংরক্ষিত হয়নি। আমি পোস্ট করার পরে আমরা অনেক ওয়ার্ডপ্রেস সাইটগুলিতে উপরের কোডটি ব্যবহার করে আসছি এবং আমি কখনই কোনও সমস্যায় পড়ি না।
বিরানিত গোরেন

1
এই বিষয়টিকে পুনরায় শুরু করার জন্য @ বিরাণিতগোরেণ আমাকে ক্ষমা করে দিচ্ছেন, তবে সমস্ত উত্তরের কেন্দ্রিক উদ্বেগটি term_orderমূলত সমর্থনযোগ্য নয় supported সুতরাং আমি ভাবছি, আপনার কোড উদাহরণে, কোথায় term_orderসংজ্ঞায়িত করা হয়েছে যাতে আপনি এটি বাছাই করতে পারেন?
গিগিজান

2
@ জিগিজান এটি প্রকৃতপক্ষে সমর্থিত তবে কেবল অব্যবহৃত। ওয়ার্ডপ্রেসটির মূলটিতে পরিভাষা রয়েছে - তবে এটি ডিফল্টরূপে ব্যবহার করে না। অতএব, আপনি এটি সংজ্ঞায়িত করার দরকার নেই, এটি ইতিমধ্যে সংজ্ঞায়িত করা হয়েছে। ( ট্র্যাকটিতে এটি দেখুন: core.trac.wordpress.org/ticket/9547 )
বিরানিত গোরেন

2

আমি কাস্টম বিভাগের বর্ণানুক্রমিক শিশুর শর্তাবলীর উত্তর খুঁজতে লড়াই করে যাচ্ছি ... আমি কোর ডাব্লুপি ফাইলগুলিকে পরিবর্তনের প্রস্তাব দেব না, তাই লিঙ্কগুলি সহ কাস্টম ট্যাক্সনোমি বর্ণনাগুলি তালিকাভুক্ত করার জন্য আমার ট্যাক্সনোমি.এফপি ফাইলটিতে আমি যা যুক্ত করেছি তা এখানে's বর্ণানুক্রমিক ক্রমে শিশুদের শর্তাবলী। আপনার প্রয়োজন অনুসারে পরিবর্তন করুন, আমি আশা করি এটি সেখানে কাউকে সহায়তা করবে।

// Get Main Taxonomy for use in template file
$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
$termTaxonomy = $term->taxonomy;

<h1><?php echo apply_filters( 'the_title', $term->name ); ?></h1>

<?php // test for description before unleashing a div 
if ( !empty( $term->description ) ): 
  echo '<div class="description">';
  echo $term->description;
  echo '</div>;
endif; ?>

// Now get children terms, using get_term & 'child_of' get's us alphabetical order
$termchildren = get_terms( $termTaxonomy, array(
  'child_of'     => $term->term_id,
  'hierarchical' => 0,
  'fields'       => 'ids',
  'hide_empty'   => 0
) );

// Make an alphabetical linked list
echo '<ul>';
foreach ($termchildren as $child) {
  $term = get_term_by( 'id', $child, $termTaxonomy );

  // Modify this echo to customize the output for each child term
  echo '<li><a href="' . get_term_link( $term->name, $termTaxonomy ) . '" alt="' .$term->description. '">' . $term->name . '</a></li>';
}
echo '</ul>';

2

আমি জানি এটি এক ধরণের প্রতারণা, তবে আপনি সর্বদা সাধারণ কাস্টম পোস্ট অর্ডার প্লাগইনটি ব্যবহার করতে পারেন । এটি নিখরচায়, এবং এটি আপনাকে পোস্ট প্রকারগুলি ছাড়াও কর বিভাগগুলি বাছাই করতে সহায়তা করে।


0

এবং ওয়েব পৃষ্ঠায় প্রদর্শন করার পরে ভাল ক্রম এটি হতে পারে:

আপনার wp_get_post_terms এ "অর্ডারবাই" => "শব্দ_গ্রুপ" রাখতে

উদাহরণ:

"পোষ্ট" আমার কাস্টম বিভাগের নাম, আপনার রাখুন

$poste =  wp_get_post_terms($post->ID, 'poste', array("fields" => "names", "orderby" => "term_group"));
        if(!empty($poste[0])){ echo $poste[0];}
        if(!empty($poste[1])){
          echo " - ", $poste[1]; }
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.