ฉันสามารถตั้งค่ารูปภาพแนะนำเริ่มต้นสำหรับหมวดหมู่ได้หรือไม่


10

ฉันกำลังตั้งค่าไซต์ด้วยธีมที่ใช้ประโยชน์จากคุณสมบัติ "ภาพเด่น" ของ WordPress เนื่องจากผู้ใช้ของฉันไม่ได้เป็นคนเก่งที่สุดในโลกฉันต้องการตั้งค่าเพื่อให้หมวดหมู่นั้นมี "รูปภาพเด่น" เริ่มต้นที่กำหนดให้กับโพสต์ ในกรณีที่มีหลายหมวดหมู่ที่กำหนดให้กับโพสต์จากนั้นจะใช้หมวดหมู่แรก

มีปลั๊กอินที่มีอยู่หรือวิธีการรหัสนี้หรือไม่?



2 ปีต่อมามีปลั๊กอิน WordPress ที่ทำสิ่งนี้ ชำระเงิน "รูปภาพเด่นสำหรับหมวดหมู่" wordpress.org/plugins/featured-images-for-categories

ใช้ปลั๊กอินนี้: wordpress.org/extend/plugins/categories-imagesมันทำงานกับหมวดหมู่และอนุกรมวิธานที่กำหนดเองใด ๆ คุณสามารถค้นหาเพิ่มเติมเกี่ยวกับปลั๊กอินวิธีใช้และตัวอย่างมากมายในเอกสาร
Muhammad

คำตอบ:


13

ในเทมเพลตของคุณที่คุณมีภาพเด่นแสดงอยู่: <?php the_post_thumbnail( 'thumbnail' ); ?>คุณสามารถกำหนดเงื่อนไขว่าจะมีการตั้งรูปภาพที่แนะนำหรือไม่จากนั้นให้กำหนดค่าเริ่มต้นเป็นสิ่งที่คุณต้องการหากไม่ได้ตั้งค่าไว้

วิธีหนึ่งในการทำเช่นนี้คือการวางรูปภาพเริ่มต้นทั้งหมดไว้ในไดเรกทอรีและตั้งชื่อให้กับหมวดหมู่เช่น news.jpg และ reviews.jpg จากนั้นแทนที่จะใช้<?php the_post_thumbnail( 'thumbnail' ); ?>เพื่อแสดงรูปภาพเด่นของคุณคุณจะใช้สิ่งนี้:

<?php 
   if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())  ) { 
      the_post_thumbnail('thumbnail');
   } else { ?>
      <img src="whatever/directory/<?php $category = get_the_category(); echo $category[0]->cat_name; ?>.jpg" /> <?php }
   endif;
} ?>

http://www.yoursite/whatever/directory/news.jpgดังนั้นในตัวอย่างข้างต้นนี้ถ้าโพสต์อยู่ในหมวดข่าวและนักเขียนของคุณไม่ได้ตั้งภาพที่แนะนำก็จะเริ่มต้นไปยังภาพที่เก็บไว้ที่


นี่คือวิธีที่ฉันทำเช่นกัน +1
epaps

เกิดอะไรขึ้นถ้าโพสต์เป็นของบางหมวดหมู่
Eray

คำถามที่ดี. get_the_category()จะส่งคืนหมวดหมู่เดียวและฉันลืมว่าจะตัดสินใจเลือกหมวดหมู่ใด
แมตต์

1
get_the category () ได้รับหมวดหมู่ทั้งหมดเป็นอาร์เรย์ แต่คุณต้องมีเล่ห์เหลี่ยม studiograsshopper.ch/code-snippets/…
Eray

2
<?php if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())) : ?>

<?php the_post_thumbnail('thumbnail'); ?>

<?php else :?>

<img src="<?php bloginfo('template_directory'); ?>/your image directory name in theme folder/<?php $category = get_the_category(); echo $category[0]->cat_name; ?>.jpg" /> 

<?php endif;?>

2

ฉันพบปัญหาบางอย่างกับชื่อหมวดหมู่ที่มีช่องว่างฉันเปลี่ยนรหัสข้างบนเล็กน้อยเพื่อให้เหมาะกับความต้องการของฉัน

<?php if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())) : ?>

<?php the_post_thumbnail('thumbnail'); ?>

<?php else :?>

<img src="whatever/directory/<?php $category = get_the_category(); echo $category[0]->cat_ID; ?>.jpg" /> 

<?php endif;?>

เพียงแค่เปลี่ยน

echo $category[0]->cat_name;

ถึง

echo $category[0]->cat_ID;

ซึ่งจะทำให้ภาพของคุณ 16.jpg หรือ 3.jpg สิ่งที่สอดคล้องกับหมายเลขหมวดหมู่ของคุณ


ฉันคิดว่าหลายคนชอบใช้ cat id เพราะปลอดภัยกว่าและอนุญาตให้คุณเปลี่ยนป้ายกำกับหมวดหมู่หรือกระสุน
ดาเมียน

2

วิธีทำความสะอาดด้านบน;)

if ( ( function_exists( 'has_post_thumbnail' ) ) && ( has_post_thumbnail() ) ) : 
    the_post_thumbnail( 'thumbnail' );
else :
    ?><img src="whatever/directory/<?php 
        $category = get_the_category(); echo $category[0]->cat_name; 
        ?>.jpg" /><?php
endif;

1

ฉันใช้Taxonomy Imagesโดย Michael Fields สำเร็จแล้ว - มันเพิ่มฟังก์ชั่นการจัดการลงในหน้าแก้ไขหมวดหมู่ / taxonomy เพื่อให้รูปภาพเด่น ๆ นั้นใช้งานได้สำหรับ taxonomies เหมือนกับที่ทำกับโพสต์ / หน้า มีฟังก์ชั่นทั้งหมดที่คุณต้องการสำหรับชุดรูปแบบของคุณ

snap ของหน้าจอผู้ดูแลระบบ taxonomy ที่กำหนดเอง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.