আইডি দ্বারা পোস্ট সামগ্রী পান


10

পোস্ট আইডিতে আমি কীভাবে কোনও পোস্টের সামগ্রী পেতে পারি? আমি get_page('ID');বিষয়বস্তু দেখানোর চেষ্টা করেছি কিন্তু এটি কার্যকর হয় না।


1
ডাউনভোটস যেমন আপনি দস্তাবেজগুলি পড়ার চেষ্টা করেননি get_page()। এটি খুব দীর্ঘ সময় আগে অবচয় করা হয়েছে। এছাড়াও, এই সমস্যাটি সম্পর্কে সাইটে সীমাহীন সংস্থান রয়েছে, এমনকি গুগলেরও এ সম্পর্কে প্রচুর পরিমাণে তথ্য রয়েছে
পিটার গুসেন

উত্তর:


17

আপনি এটি একাধিক উপায়ে করতে পারেন। নিম্নলিখিত সেরা দুটি উপায় নিম্নলিখিত।

$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
WPTC-Troop

2
আরও ভাল উপায় হ'ল apply_filters( 'the_content', $content );এইভাবে, সমস্ত ফিল্টার যা the_content()পছন্দ মতো প্রয়োগ করা হয় wpautopএবং শর্টকোড হ্যান্ডলার প্রয়োগ করা হয় $content। ;-)। বহুবচনটি নোট করুনfilters
পিটার গুজন

1
হ্যাঁ, apply_filtersপরিবর্তে do_shortcodeবুদ্ধিমান ব্যবহার করে । তবে ব্যবহার apply_filterকরা নিখুঁতভাবে তাদের পরিবেশগত সিদ্ধান্তের ভিত্তিতে। আমার উত্তরটিও আপডেট করুন। @PieterGoosen
WPTC-Troop

0

আমি এখানে অন্য একটি কৌতুকপূর্ণ উপায় ছেড়ে যাব যে আপনি কখনও কখনও দরকারী হতে পারে। অবশ্যই যে পদ্ধতিগুলি API কলগুলি ব্যবহার করে সেগুলি সর্বদা পছন্দনীয় (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
    )
);

0
$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);

1
দয়া করে আপনার উত্তর সম্পাদনা করুন , এবং একটি ব্যাখ্যা যুক্ত করুন: কেন এটি সমস্যার সমাধান করতে পারে?
ফুসিয়া

-1

ব্যবহার করে get_page('ID')

$page_id = 123;  //Page ID
$page_data = get_page($page_id); 
$title = $page_data->post_title; 
$content = $page_data->post_content;

1
আপনি সত্যিই এমনকি ডকুমেন্টেশন পড়ার চেষ্টা করেননি বলে হ্রাস পেয়েছে। get_page()অবমূল্যায়ন করা হয়েছে
পিটার গুজন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.