पहला पद कार्यकाल प्राप्त करें


10

मैं कस्टम पोस्ट प्रकार का केवल पहला शब्द कैसे प्राप्त कर सकता हूं
मुझे सब मिल सकता है - कोई बात नहीं। यह मैं उन सभी को हथियाने के लिए उपयोग कर रहा हूं

<?php foreach ($terms as $term) {echo '<a href="'.get_term_link($term->slug, 'sitecat').'">'.$term->name.'</a>,';} ?> >> <a href="<?php the_permalink(); ?>"><?php the_title('', ''); ?></a></h2></span>

मेरे कोड का उपयोग करके उत्तर की सराहना करेंगे, लेकिन किसी भी मदद का सबसे अधिक स्वागत किया जाता है

जवाबों:


23

मुझे यकीन नहीं है कि आप 'पहले' वर्गीकरण से क्या मतलब है ... लेकिन,

$terms = get_the_terms( $post->ID, 'mytaxonomy' );

कर वस्तुओं की एक सरणी देता है, इसलिए

$term = array_pop($terms);

आपको सरणी में पहला कार्यकाल देगा। और तब:

echo '<a href="'.get_term_link($term->slug, 'mytaxonomy').'">'.$term->name.'</a>,'

(आप मामले में एक खाली सरणी या त्रुटि दी है बयान करता है, तो कुछ, (देखें शामिल करने के लिए चाहते हो सकता है is_wp_error)


बस इसे आज़माया गया .. त्रुटि प्राप्त करना: कैटलेबल घातक त्रुटि: श्रेणी WP_Error की वस्तु को पंक्ति में /home/content/14/6469114/html/wp-content/themes/sagus/single-website.php में स्ट्रिंग में परिवर्तित नहीं किया जा सकता है 40
सैगिव एसईओ

ऑन लाइन 40: <; php $ शर्तें = get_the_terms ($ पोस्ट-> आईडी, 'सिटेकैट'); array_pop ($ शर्तों); इको '<a href="'.get_term_link($term-> स्लग,' सिटेकैट ')। ""> $ टर्म-> नाम।' </a> '। ?>
Sagive SEO

ठीक है .. त्रुटि मेरी तरफ थी - आपका जवाब नहीं;) बहुत बहुत धन्यवाद
सैगिव एसईओ

5

PHP 5.4 के रूप में, आप सीधे एक व्यूह को रोक सकते हैं , इसलिए पहला शब्द प्राप्त करने के लिए, आप बस कर सकते हैं।

$first_term = get_the_terms( $post->ID, 'TAXONOMY_NAME' )[0];
var_dump( $first_term );

यदि आपको पहले शब्द की एक विशिष्ट संपत्ति ( शब्द का नाम ) की आवश्यकता है, तो आप निम्न कार्य कर सकते हैं

$first_term_name = get_the_terms( $post->ID, 'TAXONOMY_NAME' )[0]->name;
var_dump( $first_term_name );

संपादित करें

बस एक ध्यान दें, इसके ड्रा बैक हैं क्योंकि WP_Errorटैक्सोनॉमी अमान्य होने पर आपको एक वस्तु मिलेगी । इसके अलावा, अगर लौटा हुआ सरणी खाली है, तो आपको एक अपरिभाषित सरणी कुंजी चेतावनी भी मिलेगी, इसलिए इसका उपयोग सावधानी से करें।


0

इसने मेरे लिए काम किया। यह केवल पहली श्रेणी को पाठ के रूप में लाता है, कोई लंगर नहीं।

$terms = get_the_terms( $post->ID , 'your_custom_taxonomy' ); 
foreach( $terms as $term ) { 
    print $term->name;
    break;
    unset($term);
}

1
"आपके लिए क्या काम किया"? सिडेनोट: break;वास्तव में आपके बयान को रोक unsetदेगा, कभी भी ट्रिगर नहीं किया जाएगा और केवल 1 आइटम संसाधित किया जाएगा।
केसर

unset( $term );आपके लूप के बाद होना चाहिए foreach, और इसके अंदर नहीं होना चाहिए :-)
पीटर ग्यूएंस

0

कैसे के बारे में सीधे वस्तु की कुंजी का उपयोग?

$terms = get_the_terms( $post->ID, 'sitecat' );
$first_term = $terms[0];

इसलिए आप ऑब्जेक्ट को एक्सेस कर सकते हैं।

echo $first_term->name;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.