जवाबों:
आप इसे कई तरीके से कर सकते हैं। निम्नलिखित दो तरीके हैं।
$post_id = 5// example post id
$post_content = get_post($post_id);
$content = $post_content->post_content;
echo do_shortcode( $content );//executing shortcodes
एक और तरीका
$content = get_post_field('post_content', $post_id);
echo do_shortcode( $content );//executing shortcodes
पीटर गोसेन के सुझाव के बाद apply_filters
।
apply_filters
यदि आप सामग्री को अन्य प्लगइन्स द्वारा फ़िल्टर किया जाना चाहते हैं, तो आप उपयोग कर सकते हैं । तो यह उपयोग करने की आवश्यकता को समाप्त करता हैdo_shortcode
उदाहरण
$post_id = 5// example post id
$post_content = get_post($post_id);
$content = $post_content->post_content;
echo apply_filters('the_content',$content);
//no need to use do_shortcode, but content might be filtered by other plugins.
यदि आप अन्य प्लगइन्स को इस सामग्री को फ़िल्टर करने की अनुमति नहीं देना चाहते हैं और शोर्ट फ़ंक्शन की आवश्यकता है, तो साथ जाएं do_shortcode
।
यदि आप शोर्ट भी नहीं चाहते हैं, तो बस के साथ खेलते हैं post_content
।
do_shortcode
raw content
पोस्ट का मिल रहा है । पोस्ट में एम्बेड किए गए किसी भी शोर्ट को संसाधित नहीं किया जाएगा। इसलिए हम स्वयं के साथdo_shortcode
apply_filters( 'the_content', $content );
, इस तरह, सभी फ़िल्टर the_content()
जैसे कि wpautop
और शोर्ट हैंडलर को लागू किया जाए, पर लागू किया जाता है $content
। ;-)। बहुवचन पर ध्यान देंfilters
apply_filters
बजाय का उपयोग do_shortcode
करना। लेकिन उपयोग apply_filter
विशुद्ध रूप से उनके पर्यावरण निर्णय पर आधारित है। मुझे अपना उत्तर भी अपडेट करने दीजिए। समुदाय @PieterGoosen
मैं बस यहाँ एक और हैकी बदसूरत तरीका छोड़ दूँगा जिसे आप कभी-कभी उपयोगी पा सकते हैं। बेशक तरीके जो एपीआई कॉल का उपयोग करते हैं, उन्हें हमेशा पसंद किया जाता है (get_post (), get_the_content (), ...)।
global $wpdb;
$post_id = 123; // fill in your desired post ID
$post_content_raw = $wpdb->get_var(
$wpdb->prepare(
"select post_content from $wpdb->posts where ID = %d",
$post_id
)
);
$id = 23; // add the ID of the page where the zero is
$p = get_page($id);
$t = $p->post_title;
echo '<h3>'.apply_filters('post_title', $t).'</h3>'; // the title is here wrapped with h3
echo apply_filters('the_content', $p->post_content);
get_page()
। इसे बहुत पहले से चित्रित किया गया है। इसके अलावा, इस मुद्दे के बारे में साइट पर असीमित मात्रा में संसाधन हैं, यहां तक कि Google के पास इस पर जानकारी भी है