http://rokesh.ir/get-the-first-image-from-post-for-post-thumbnail/

آموزش دریافت اولین تصویر مطلب به عنوان تصویر شاخص وردپرس

اکثر کاربران و طراحان قالب وردپرس برای نمایش تصویر در کنار مطالب از تصاویر شاخص یا زمینه دلخواه استفاده می کنند. اما در این مطلب آموزشی از روکش می خواهیم کدی را به شما معرفی کنیم که می تواند اولین تصویر مطلب را دریافت کند و به عنوان تصویر شاخص یا همان thumbnail مطالب قرار دهد.

۱- کپی کردن کد های لازم در فایل functions.php

خوب در ابتدا فایل functions.php قالب خود را باز کنید سپس کد زیر را در آخر آن قبل از ؟> قرار دهید.

function catch_that_image() {
  global $post, $posts;
  $first_img = '';
  ob_start();
  ob_end_clean();
  $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
  $first_img = $matches [1] [0];

  if(empty($first_img)){ //Defines a default image
    $first_img = "/images/default.jpg";
  }
  return $first_img;
}

در صورت وجود تصویر در مطلب شما این کد اولین تصویر را به عنوان تصویر شاخص نشان می دهد و اگر پست شما فاقد تصویر باشد تصویر default.jpg که در شاخه images قرار دارد را نشان می دهد.

۲- فراخوانی تصویر شاخص

حال کد زیرا هرجایی که می خواهید تصویر شاخص به نمایش در آید قرار دهید.

<?php echo catch_that_image() ?>

توجه داشته باشید که حتما این کد را باید در یک حلقه (quary) قرار دهید.

دیدگاه کاربران

  1. maryam

    سلام اگرممکنه در مورد فراخوانی تصویر شاخص که نوشتید بیشتر توضیح بدید.لطفا

    • سعید شعبانی

      وقتی شما در مرحله اول کدهای لازم را در داخل فایل فانکشن قالب قرار دادید لازم هست تا از یک کد برای فراخوانی تصاویر استفاده کنید. کدی که باید برای فراخوانی اولین تصاویر پست ها استفاده کنید کد زیر هست.

      <?php echo catch_that_image() ?>
      

      شما باید این کد را هر جایی که می خواهید اولین تصویر پست ها نشون داده بشه قرار بدید. البته باید به این نکته هم توجه داشته باشید که کد ها را باید داخل حلقه های وردپرس قرار دهید.

  2. سلام
    خسته نباشید
    بنده میخواستم برای پس زمینه سایت از تصویر شاخصی که خودم دستی انتخاب میکنم استفاده کنم
    یعنی از داخل مطلب عکس رو آپلود کنم ولی داخل مطلب نذارم فقط به عنوان تصویر شاخص انتخاب کنم
    و سپس تصویر شاخصی که انتخاب میکنم در پس زمینه هر مطلب نشون داده بشه
    میتونید من رو راهنمایی کنید ؟
    ممنون

    • سعید شعبانی

      خوب شما می تونید تصویر شاخص را مثل قبل لا تابع get the post thumbnail دریافت کنید ولی به جای اینکه اون را داخل اگ img قرار بدید از اون در کدهای css استفاده کنید و تصویر پس زمینه پست را تغییر بدید.

  3. pouya

    سلام میشه بیشتر در مورد کد دوم توضیح بدید که کجا قرارش بدیم!!

کاربر گرامی برای ارسال دیدگاه اگر عضو روکش هستید باید سایت شوید در غیر اینصورت باید عضو شوید.