thismoment

نشان دادن کانتنت یک برگه در خارج از لووپ

3 پست در این موضوع قرار دارد

چطور میشه محتوای یه برگه رو در یه جایی از قالب اونم خارج از لووپ نشان داد

0

به اشتراک گذاری این پست


لینک به پست

درود.کوئری


<?php $recent = new WP_Query("page_id=515"); while($recent->have_posts()) : $recent->the_post();?>
<?php the_title(); ?>
<?php the_content(); ?>
<?php endwhile; ?>

یا


http://codex.wordpress.org/Function_Reference/get_post


<?php
$my_id = 10;
$post_id_10 = get_post($my_id);
$content = $post_id_10->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]>', $content);
echo $content;
?>

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط مسعود
      با سلام 
      من توی یک دوره انگلیسی در رابطه با قالب وردپرس که دیدم. در مراحل اول کار با کد زیر 
      <?php while(have_posts()) { the_post(); ?> <h2> <?php the_title() ?> </h2> <?php the_content(); ?> <hr> <?php } ?> نتیجه ای که به طرف میده این هستش

      ولی وقتی من از همین کد استفاده میکنم به جای خروجی مثل بالا که نوشته ها رو برگردونه، با اینکه من تعداد زیادی هم نوشته دارم خروجی مثل عکس زیر به من میده، دوستان میتونید بگبد علت چیه؟ من از وردپرس نگارش 4.9.6 و xampp v3.3.2 استفاده میکنم.

    • توسط amerllica
      با سلام
      به دلایل نامعلومی بعد از لاگین موفق در وردپرسم دوباره به صفحه خود redirect‌ میشه.
      مقالات زیادی خوندم و کارهای زیادی انجام دادم. حتی همه افزونه‌ها رو غیر فعال کردم. البته از طریق mysql
      ولی باز هم redirect میشه. تم رو هم تغییر دادم توسط تغییر نام directory ولی باز هم نشد.
      فایل .htaccess رو کلا پاک کردم نشد. 
      موضوع به کش مرورگر هم ربط نداره چون با چندین مرورگر و دستگاه امتحان کردم.
      همه کارهایی که توی نت میشه رو امتحان کردم ولی نمی‌گذاره برم توی پیشخوان مدیریت.
      سایت من:
      https://insurance2176.com
      اگر کسی خواست دسترسی سایت یا حتی سی‌پنل رو هم بهش می‌دم.
    • توسط جاوید
      من برای یک پروژه وردپرسی از wp_statistics استفاده میکنم که آمار بازدیدهای سایت رو برای من ثبت میکنه.
      نیاز داشتم که نوشته ها رو بر اساس تعداد بازدید نشون بدم اما متاسفانه این افزونه از WP_Query ساپورت نمیکنه .
      اما همیشه راه حلی هست، در ادامه روشی که من برای گرفتن ۱۰ پست پربازدید استفاده کردم رو توضیح میدم، اگه پیشنهادی دارید لطفا بگید تا این روش رو بهتر کنیم.
      ما در WP_Query با استفاده از post__in میتونیم شناسه پست ها رو بدیم و لوپ رو بر اساس اون شناسه ها بسازیم.
      پس اگه شناسه مطالب بر اساس بازدید رو به دست بیاریم میتونیم لوپ مورد نظر رو بسازیم.
      افزونه آمار، اطلاعات بازدید رو در جدول statistics_pages ذخیره میکنه، لازم بود که این جدول رو با جدول مطالب جوین کنیم تا اطلاعات رو به دست بیارم


      SELECT *
      FROM `wp_statistics_pages`
      JOIN `wp_posts`
      ON wp_posts.ID = wp_statistics_pages.id

      حالا مشکل اینجاست که این روش مجموع بازدید ها رو برای ما نمیاره و بازدیدهای هر روز رو در یک ردیف میاره و ردیفهای بسیار زیادی ایجاد میشه و سورت کردن ممکن نیست.
      پس لازمه که این خروجی رو بر اساس شناسه گروه‌بندی کنیم:


      SELECT *
      FROM `wp_statistics_pages`
      JOIN `wp_posts`
      ON wp_posts.ID = wp_statistics_pages.id
      GROUP BY id

      حالا میتونیم سورت رو انجام بدیم و ۱۰ نتیجه آخر رو دریافت کنیم:


      SELECT *
      FROM `wp_statistics_pages`
      JOIN `wp_posts`
      ON wp_posts.ID = wp_statistics_pages.id
      GROUP BY id
      ORDER BY count
      DESC
      LIMIT 10

      من به یک نوع مطلب خاص (publication) نیاز داشتم و فقط شناسه ها رو میخوام، پس کوئری نهایی من میشه این :‌


      SELECT wp_statistics_pages.id
      FROM `wp_statistics_pages`
      JOIN `wp_posts`
      ON wp_posts.ID = wp_statistics_pages.id
      WHERE wp_posts.post_type = 'publication'
      GROUP BY id
      ORDER BY count
      DESC
      LIMIT 6

      حالا این کوئری رو توی وردپرس اجرا میکنم و نتایج رو به دست میارم :‌


      global $wpdb;
      $results = $wpdb -> get_results('SELECT wp_statistics_pages.id
      FROM `wp_statistics_pages`
      JOIN `wp_posts`
      ON wp_posts.ID = wp_statistics_pages.id
      WHERE wp_posts.post_type = 'publication'
      GROUP BY id
      ORDER BY count
      DESC
      LIMIT 10', ARRAY_A );

      و در نهایت با استفاده از این موارد به دست آمده لوپ نهایی خودم رو میسازم، اینجا لازمه که مجددا نوع مطلب رو هم مشخص کنیم و برای اینکه ترتیب به هم نخوره هم از 'orderby' => 'post__in' استفاده میکنم:


      $args = array(
      'post_type' => 'publication',
      'post__in' => $results,
      'orderby' => 'post__in'
      );
      $query = new WP_Query( $args );

      نتیجه رو میتونید توی صفحه اول تیتر ببینید.
      لطفا نظراتتون در مورد این روش رو برای من بنویسید و خوشحال میشم اگه پیشنهادی برای برای بهتر شدن دارید بهم بگید.
    • توسط ata1368
      من زیاد از php سر در نمیارم.
      یک روز تمام دنبال راه حل گشتم ولی پیدا نشد.
      توی documentation مربوط به wp_query اومده که میشه یه سری پست خاص را با ID به صورت آرایه کوئری کرد. اما توضیح نداده چطور همه پست های فرد رو کوئری کنیم. تازه همزمان شرط حضور در یک دسته خاص هم لازم است!
      ممنون میشم راهنمایی کنید.