วิธีแสดงแถบด้านข้างต่างๆ สำหรับบทความและหน้าใน WordPress

เผยแพร่แล้ว: 2018-08-20

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

ในบทความนี้ ฉันจะแสดงวิธีสร้างแถบด้านข้างที่ไม่ซ้ำกันสำหรับบทความหรือหน้าต่างๆ ทั้งด้วยตนเองและด้วยปลั๊กอิน WordPress แต่ก่อนอื่น มาคุยกันเพิ่มเติมว่าทำไมคุณถึงต้องการทำเช่นนี้

ทำไมคุณอาจต้องการแถบด้านข้างที่แตกต่างกัน

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

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

มาครอบคลุมวิธีการแบบแมนนวลกันก่อน

ภาพของเครื่องมือ ไม้บรรทัด แป้นพิมพ์และต้นไม้ จัดวางให้แสดงแถบด้านข้างของ wordpress บนโต๊ะพร้อมกับหนังสือและเทคโนโลยีอื่นๆ

วิธีสร้างแถบด้านข้าง WordPress ใหม่ด้วยตนเอง

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

ขั้นแรก ให้ค้นหาไฟล์ที่ลงทะเบียนแถบด้านข้างในธีมของคุณ โดยปกติแล้วจะเป็นไฟล์ functions.php แต่อาจแตกต่างกันไปตามธีมของคุณ

เปิดไฟล์และค้นหาฟังก์ชันสำหรับโค้ดด้านข้าง โดยทั่วไปจะประกอบด้วย register_sidebar และฟังก์ชันเต็มรูปแบบอาจมีลักษณะดังนี้:

function twentyseventeen_widgets_init() {

register_sidebar(

array(

'name'       => __( 'Blog Sidebar', 'twentyseventeen' ),

'id'         => 'sidebar-1',

'description'   => __( 'Add widgets here to appear in your sidebar on blog posts and archive pages.', 'twentyseventeen' ),

'before_widget' => '<section id="%1$s" class="widget %2$s">',

'after_widget'  => '</section>',

'before_title'  => '<h2 class="widget-title">',

'after_title'   => '</h2>',

)

);


register_sidebar(

array(

'name'       => __( 'Footer 1', 'twentyseventeen' ),

'id'         => 'sidebar-2',

'description'   => __( 'Add widgets here to appear in your footer.', 'twentyseventeen' ),

'before_widget' => '<section id="%1$s" class="widget %2$s">',

'after_widget'  => '</section>',

'before_title'  => '<h2 class="widget-title">',

'after_title'   => '</h2>',

)

);


register_sidebar(

array(

'name'      => __( 'Footer 2', 'twentyseventeen' ),

'id'         => 'sidebar-3',

'description'   => __( 'Add widgets here to appear in your footer.', 'twentyseventeen' ),

'before_widget' => '<section id="%1$s" class="widget %2$s">',

'after_widget'  => '</section>',

'before_title'  => '<h2 class="widget-title">',

'after_title'   => '</h2>',

)

);

}

add_action( 'widgets_init', 'twentyseventeen_widgets_init' );

ตอนนี้คัดลอกฟังก์ชันทั้งหมดและสร้างไฟล์ functions.php ในธีมย่อยของคุณ (หากคุณยังไม่มี) และวางโค้ด อย่าลืมเปลี่ยนชื่อฟังก์ชัน

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

function twentyseventeen_new_widgets_init() {

register_sidebar(

array(

'name'       => __( 'Wordpress Sidebar', 'twentyseventeen' ),

'id'         => 'sidebar-4',

'description'   => __( 'Add widgets here to appear in your sidebar on wordpress related blog posts.', 'twentyseventeen' ),

'before_widget' => '<section id="%1$s" class="widget %2$s">',

'after_widget'  => '</section>',

'before_title'  => '<h2 class="widget-title">',

'after_title'   => '</h2>',

)

);



register_sidebar(

array(

'name'       => __( 'Web Design Sidebar', 'twentyseventeen' ),

'id'         => 'sidebar-5',

'description'   => __( 'Add widgets here to appear in your sidebar on web design related blog posts.', 'twentyseventeen' ),

'before_widget' => '<section id="%1$s" class="widget %2$s">',

'after_widget'  => '</section>',

'before_title'  => '<h2 class="widget-title">',

'after_title'   => '</h2>',

)

);

}

add_action( 'widgets_init', 'twentyseventeen_new_widgets_init' );

แถบด้านข้างใหม่พร้อมแล้ว หากคุณตรวจสอบส่วนวิดเจ็ต จะแสดงพื้นที่วิดเจ็ตใหม่สองส่วน ฉันได้เพิ่มวิดเจ็ตข้อความอย่างง่ายในแต่ละแถบด้านข้างเพื่อให้เป็นที่รู้จัก

แดชบอร์ดเวิร์ดเพรส วิดเจ็ตเวิร์ดเพรสและตัวเลือกเนื้อหาและแถบด้านข้างต่างๆ ที่มีส่วนท้ายหลายส่วน

เมื่อคุณสร้างแถบด้านข้างแล้ว ก็ถึงเวลากำหนดตำแหน่ง เราต้องการแทนที่แถบด้านข้างทางขวาที่มีอยู่ ดังนั้นคุณจำเป็นต้องค้นหาไฟล์ที่อยู่

สำหรับตัวอย่างนี้จะอยู่ใน sidebar.php คัดลอกไฟล์จากธีมหลักแล้ววางลงในธีมย่อยของคุณ

หากคุณตรวจสอบไฟล์ ไฟล์จะเรียก sidebar-1 ซึ่งเป็น id ของแถบด้านข้างขวาหลัก

<aside id="secondary" class="widget-area" role="complementary" aria-label="<?php esc_attr_e( 'Blog Sidebar', 'twentyseventeen' ); ?>">

<?php dynamic_sidebar( 'sidebar-1' ); ?>

</aside>

ตอนนี้ ฉันจะสร้างแถบด้านข้างสำหรับหมวดหมู่การออกแบบเว็บของฉัน และอีกแถบหนึ่งสำหรับหมวดหมู่ WordPress ของฉัน ซึ่งสามารถทำได้ในสองวิธีที่แตกต่างกัน: วิธีหนึ่งคือแนวทางที่ขับเคลื่อนด้วยเทมเพลตและอีกวิธีหนึ่งคือแนวทางที่ขับเคลื่อนด้วยหมวดหมู่

ก่อนที่เราจะเริ่มต้นที่นี่ เรียนรู้วิธีสร้างเทมเพลตโพสต์เดียวแบบกำหนดเอง!

แนวทางที่ขับเคลื่อนด้วยเทมเพลต

ในแนวทางนี้ คุณต้องสร้างเทมเพลตที่แตกต่างกันไปตามความต้องการของคุณ สำหรับตัวอย่างนี้ single.php รับผิดชอบการโพสต์เดี่ยว ดังนั้นคุณจึงสามารถคัดลอกและวางไฟล์ในธีมย่อยของคุณได้ เปลี่ยนชื่อไฟล์ตามนั้น เช่น wordpress-post.php และเพิ่มชื่อเทมเพลตด้วย

/* Template Name: WordPress Sidebar

* Template Post Type: post*/

ในทำนองเดียวกัน ฉันได้สร้างเทมเพลตอื่นชื่อ webdesign-post.php

ธีม wordpress ยี่สิบเจ็ดพร้อม wordpress-post และ webdesign-post ในไฟล์ในเครื่อง

ตอนนี้ กลับไปที่ไฟล์ sidebar.php ของธีมลูกและเพิ่มเงื่อนไขง่ายๆ เพื่อตรวจสอบว่าเทมเพลตใดใช้งานอยู่ สำหรับสิ่งนี้ เราจะใช้ is_page_template()

รหัสเป็นตัวอธิบาย จะตรวจสอบว่ามีการใช้เทมเพลตใดและตั้งค่าแถบด้านข้างให้สอดคล้องกัน หากไม่เป็นไปตามเงื่อนไข ระบบจะใช้แถบด้านข้างเริ่มต้น

<?php

if ( is_page_template('wordpress-post.php') ) {

dynamic_sidebar( 'sidebar-4' );

}elseif ( is_page_template('webdesign-post.php') ){

dynamic_sidebar( 'sidebar-5' );

}else{

dynamic_sidebar( 'sidebar-1' );

}

?>

ตอนนี้ มาสร้างโพสต์ใหม่และกำหนดเทมเพลตที่เราเพิ่งสร้างขึ้น

แก้ไขเทมเพลตแอตทริบิวต์โพสต์ wordpress ด้วยแถบด้านข้างที่แตกต่างกัน

คุณจะเห็นว่าฉันได้เลือกแถบด้านข้างของ WordPress สำหรับโพสต์นี้โดยเฉพาะ

แสดงตัวอย่าง wordpress ของโพสต์สดพร้อมแถบด้านข้างที่แตกต่างกัน

แนวทางการขับเคลื่อนตามหมวดหมู่

สำหรับตัวอย่างนี้ (การเปลี่ยนแถบด้านข้างตามหมวดหมู่โพสต์) แนวทางที่อิงตามหมวดหมู่จะได้ผลดีกว่าแนวทางที่อิงตามเทมเพลต ในการดำเนินการนี้ คุณจะต้องปรับเงื่อนไขใน sidebar.php ตามหมวดหมู่แทนเทมเพลตโดยใช้ in_category()

<?php

if ( in_category('wordpress') ) {

dynamic_sidebar( 'sidebar-4' );

}elseif ( in_category('web-design') ){

dynamic_sidebar( 'sidebar-5' );

}else{

dynamic_sidebar( 'sidebar-1' );

}

?>

ตอนนี้ หากคุณแก้ไขหรือสร้างโพสต์ใหม่ เพียงเพิ่มหมวดหมู่ที่คุณต้องการ โดยจะแสดงแถบด้านข้างตามลำดับ ไม่จำเป็นต้องเลือกเทมเพลตใดๆ ที่นี่ฉันได้เลือกการออกแบบเว็บเป็นหมวดหมู่โพสต์ของฉัน ดังนั้นแถบด้านข้างการออกแบบเว็บจึงจะปรากฏขึ้น

ปรับปรุงแถบด้านข้าง wordpress ตามประเภทการออกแบบเว็บที่เลือก

โดยพื้นฐานแล้ว คุณเพียงแค่ต้องปรับเงื่อนไข sidebar.php ตามความต้องการเฉพาะของคุณ

วิธีสร้างแถบด้านข้างแบบกำหนดเองด้วยปลั๊กอิน WordPress

หากคุณประสบปัญหาในการสร้างแถบด้านข้างด้วยตนเอง คุณสามารถลองใช้ปลั๊กอิน WordPress ที่มีประโยชน์ซึ่งช่วยให้คุณสร้างแถบด้านข้างได้อย่างง่ายดาย!

หนึ่งในปลั๊กอินดังกล่าวคือ Content Aware Sidebars เป็นปลั๊กอินง่ายๆ ที่ช่วยให้คุณสร้างแถบด้านข้างในแต่ละหน้า โพสต์ หมวดหมู่ ฯลฯ แบบไดนามิกได้

กำลังมองหาปลั๊กอินที่ยอดเยี่ยมกว่าที่นักออกแบบชื่นชอบใช่หรือไม่? ดูคู่มือฟรีนี้!

เมื่อติดตั้งแล้ว คุณจะเห็นเมนู แถบ ด้านข้างในแผงการดูแลระบบ

แถบด้านข้าง > เพิ่มใหม่

ตัวเลือกปลั๊กอิน wordpress sidebars เพิ่มแถบด้านข้างใหม่

ขั้นแรก เพิ่มชื่อในแถบด้านข้างของคุณ จากนั้นคุณสามารถตั้งค่าเงื่อนไขการแสดงผลจากดรอปดาวน์ เงื่อนไขของแถบด้านข้าง แถบด้านข้างสามารถมีได้หลายเงื่อนไข เช่น หน้า โพสต์ หมวดหมู่ ผู้เขียน ฯลฯ

ตั้งค่าคำแนะนำแถบด้านข้างของฉัน แถบด้านข้างที่แตกต่างกันสำหรับโพสต์และเพจเวิร์ดเพรส

คุณสามารถกำหนดเวลาแถบด้านข้างของคุณได้จากแท็บกำหนดการ และแก้ไขแท็ก HTML ในแท็บการออกแบบ

คุณจะเห็นกล่อง ตัวเลือก ทางด้านขวา จากตรงนั้น คุณสามารถกำหนดตำแหน่งและกฎของแถบด้านข้างใหม่ได้ คุณยังสามารถดำเนินการต่างๆ ได้ เช่น การสร้างรหัสย่อของแถบด้านข้าง

เมื่อเผยแพร่แถบด้านข้างแล้ว คุณสามารถเข้าถึงได้จากส่วนลักษณะที่ ปรากฏ > วิดเจ็ต

ในวิดเจ็ตลักษณะที่ปรากฏ แก้ไขตัวเลือกแถบด้านข้างของฉันเพื่อรับแถบด้านข้าง wordpress อื่นสำหรับโพสต์และเพจ

แถบด้านข้างใหม่นี้จะปรากฏบนหน้าและโพสต์โดยอัตโนมัติตามการตั้งค่าของคุณ

ปลั๊กอินยังช่วยให้คุณเลือกแถบด้านข้างเมื่อแก้ไขแต่ละโพสต์หรือหน้า โดยไม่คำนึงถึงการตั้งค่าเริ่มต้นของคุณ

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

ตัวอย่างเช่น ฉันเคยสร้าง แถบด้านข้าง ของฉันแล้ว และตำแหน่งเป้าหมายของฉันคือ แถบด้านข้างของบล็อก ดังนั้นในแผงการ เลือกอย่างรวดเร็ว แถบด้านข้างของฉัน จะใช้งานได้สำหรับ แถบด้านข้างของบล็อก เท่านั้น

เลือกแถบด้านข้างของบล็อกอย่างรวดเร็วสำหรับโพสต์และหน้าเพื่อรับแถบด้านข้าง wordpress ที่แตกต่างกัน

คุณยังสามารถสร้างแถบด้านข้างใหม่ได้จากส่วนหน้าแก้ไข เพียงพิมพ์ชื่อแถบด้านข้างใหม่และเผยแพร่หรืออัปเดตหน้า

แถบด้านข้าง wordpress ใหม่ที่เลือกตามโพสต์และหน้า

หากคุณสร้างแถบด้านข้างใหม่ คุณจะต้องเปิดใช้งานในส่วนลักษณะที่ ปรากฏ > วิดเจ็ต

รายละเอียดบนแถบด้านข้างต่างๆ สำหรับโพสต์และหน้าในแดชบอร์ด wordpress

หมายเหตุ: คุณยังสามารถกำหนดแถบด้านข้างให้กับเพจของคุณได้ แต่ตรวจสอบให้แน่ใจว่าแม่แบบเพจของคุณมีแถบด้านข้าง หากไม่เป็นเช่นนั้น แถบด้านข้างจะไม่ปรากฏ แม้ว่าคุณจะตั้งค่าไว้ในส่วนหน้าแก้ไข

บทสรุป

Flywheelers ร่วมมือกันแสดงแถบด้านข้างสำหรับโพสต์และหน้าต่างๆ ใน ​​wordpress ผู้ฝึกงานด้านการออกแบบของ Flywheel, Rese และ Art Director, Andrea

ตอนนี้คุณเห็นสองตัวเลือกสำหรับการสร้างแถบด้านข้าง: การพัฒนาด้วยตนเองและกับปลั๊กอิน หากคุณไม่สะดวกใจกับโค้ด การใช้ปลั๊กอินอาจเป็นตัวเลือกที่ดีที่สุดสำหรับคุณ แต่หากคุณมีข้อกำหนดเฉพาะและไม่ต้องการเพิ่มปลั๊กอินเพิ่มเติมในไซต์ของคุณ คุณควรดำเนินการด้วยตนเอง . สิ่งสำคัญคือการเข้าใจความต้องการของคุณแล้วเลือกตัวเลือกที่ดีที่สุดของคุณ!

พร้อมสำหรับการกวดวิชาอื่นหรือไม่ ลองอย่างใดอย่างหนึ่งต่อไปนี้:

  • วิธีเพิ่มปุ่ม back-to-top แบบเหนียวบนเว็บไซต์ของคุณ
  • วิธีสร้างเทมเพลตโพสต์เดียวแบบกำหนดเอง
  • วิธีทำให้ไซต์ WordPress ของคุณเป็นมิตรกับอุปกรณ์เคลื่อนที่
  • วิธีโคลนไซต์ WordPress ของคุณ