উত্তর:
get_page()
ফেরত দিতে ব্যবহার করতে পারেন $post
:$page_id = 302;
$page_object = get_page( $page_id );
echo $page_object->post_content;
একইভাবে, আপনি কোনও পোস্টের অবজেক্টটি get_post()
ফেরত দিতে ব্যবহার করতে পারেন $post
:
$post_id = 302;
$post_object = get_post( $post_id );
echo $post_object->post_content;
setup_postdata( $post );
প্রথমে ব্যবহার করুন , তার পরে, আপনি ব্যবহার করতে পারেনthe_content();
apply_filters( 'the_content', $post_object->post_content );
লুপের বাইরে পোস্টের সামগ্রী পেতে আপনি এই জাতীয় কিছু লিখতে পারেন
global $post;
$content = $post->post_content;
if ( !empty( $content ) ) :
echo $content;
endif;
যদি আপনার সামগ্রীতে শর্টকোড অন্তর্ভুক্ত থাকে তবে আপনার ব্যবহার করা উচিত:
$post_id = 22;
$post_object = get_post( $post_id );
echo do_shortcode( $post_object->post_content );
do_shortcode
"এটি ধীর হতে পারে" এবং "সংক্ষিপ্ত কোড কল করে এমন ফাংশনটি আপনি কেবল ব্যবহার করতে পারেন" এই কথাটি বাদ দিয়ে অন্য পৃষ্ঠা এড়ানোর কোনও বাধ্যতামূলক কারণ সরবরাহ করে না । এই কারণগুলি সর্বাধিক সাধারণ দৃশ্যের জন্য সবচেয়ে তুচ্ছ জন্য বৈধ। শর্টকোড অন্য কোথাও তৈরি করা হলে, বা যদি একাধিক শর্টকোড বা শর্টকোডগুলি অন্য সামগ্রী এবং মার্কআপের সাথে মিশে যায় তবে এটি ব্যর্থ হয়। বাধ্যতামূলক কারণ ছাড়াই, এড়াতে আমি বিবৃতিটির সাথে একমত নই do_shortcode
। এটি অকাল অপটিমাইজেশনের মতো গন্ধযুক্ত ।
সম্পূর্ণতার জন্য, উপরের টিমের মন্তব্যের উপর ভিত্তি করে এবং স্টিফেন হ্যারিসের নিবন্ধ থেকে অনুপ্রাণিত , যে সমাধানটি এর ব্যবহারকে সক্ষম করে the_content()
তা হল:
$post_id = 302;
global $post;
$post = get_post($post_id);
setup_postdata( $post );
the_content();
wp_reset_postdata( $post );
এবং তাই ফিল্টারগুলি প্রয়োগ হয় (অনুচ্ছেদগুলি sertedোকানো হবে ইত্যাদি) এবং শর্টকোডগুলি কাজ করে।
যেহেতু আপনি আপনার টার্গেট পোস্ট আইডিটি জানেন (302), আপনি লুপটির বাইরে ব্যবহার করতে পারেন এই শর্টহ্যান্ড সিনট্যাক্সটি দরকারী খুঁজে পেতে পারেন (যদিও এর কার্য সম্পাদন অন্য কোনও বিকল্প পদ্ধতির মতো প্রায় একই রকম :)
echo(get_post_field('post_content',302));
আপনি get_post_data()
লুপের বাইরে পোস্ট পেতে ফাংশনটি ব্যবহার করতে পারেন । এই কোডগুলি ফাংশন.এফপি-তে রাখুন
function get_post_data($postId) {
global $wpdb;
return $wpdb->get_row("SELECT * FROM $wpdb->posts WHERE ID=$postId");
}
এবং তারপরে প্রক্রিয়াটিতে আরও নিয়ন্ত্রণের জন্য এই স্নিপেট যুক্ত করুন
<?php $data = get_post_data(302);
echo $data->post_date; // post date
echo $data->post_title; // post title
echo $data->post_content; // post content
echo $data->comment_count; // comments number
?>
আপনি যেমনটি বলেছিলেন তেমন সমাধানটি get_post
এবং এর সাথে $post_object->post_content
ব্যবহার করতে পারেন তবে আপনি পোস্ট পোস্টটি ব্যবহার করার আগে একটি চেক যোগ করতে ভুলবেন না:
function get_post_content( $post_id = null ) {
$post_object = get_post( $post_id );
if ( ! $post_object ) { return ''; }
//else
return apply_filters('the_content', $post_object->post_content);
}
echo get_post_content( $other_post_id );
আপনি কেবল get_the_content (পোস্ট আইডি) কল করতে পারেন
<?php echo get_the_content($postId); ?>
wp_reset_postdata();
এটি কাজ করবে ব্যবহার করুন .. (সম্পাদিত)
<?php
$args = array(
'post_type' => 'posttype',
'p' => 'post_id'
);
$the_query = new WP_Query( $args );
if( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<?php the_content(); ?>
<?php endwhile; endif;
wp_reset_postdata();
?>
পোস্ট টাইপ "পোস্ট", "পৃষ্ঠা" বা আপনার কাস্টম পোস্টের ধরণ হতে পারে। এখানে পি = 302 আপনার পোস্ট আইডি .. আশা করি এটি কার্যকর হবে।
query_posts
পৃষ্ঠার কার্যকারিতা ভঙ্গ করার প্রয়োজন না হলে কখনও ব্যবহার করবেন না। সর্বদা ব্যবহার করুন WP_Query
বা get_posts
কাস্টম প্রশ্নের জন্য :-)
pre_get_posts
ফিল্টার এছাড়াও আছে , এবং the_post
। এত বিস্তারিত।
আপনি এক্স বিভাগে বিষয়বস্তু রাখতে পারেন এবং কোয়েরি_পোস্টটি এর আগে যেমন ব্যবহার করতে পারেন:
<?php query_posts('cat=X&showposts=1'); ?>
<?php while (have_posts()) : the_post(); ?>
<?= get_the_content(); ?>
<?php endwhile; ?>
get_queried_object_id()
! বিকাশকারী.ওয়ার্ডপ্রেস.অর্গ