ฉันมีส่วนในเทมเพลตหน้าในชุดรูปแบบที่ฉันทำซึ่งแสดงเนื้อหาตามหน้าที่ผู้ใช้เลือกในเครื่องมือปรับแต่งโดยใช้ตัวควบคุมหน้าแบบเลื่อนลง ตอนนี้เป็นเพียงการใช้การรีเฟรชเริ่มต้นมาตรฐาน แต่เนื่องจากมันเป็นการโหลด iframe ทั้งหมดอีกครั้งฉันจึงสงสัยว่ามันเป็นไปได้ที่จะใช้คุณสมบัติรีเฟรชแบบเลือกใหม่ แต่ฉันไม่แน่ใจว่าจะใช้งานอย่างไร ใครรู้ว่าสิ่งนี้เป็นไปได้และถ้าเป็นเช่นนั้นจะทำอย่างไร?
นี่คือรหัสในเทมเพลตหน้าของฉันที่แสดงเนื้อหา:
<?php if ((get_theme_mod( 'intro_page' )) != '') {
$intro_id = get_theme_mod( 'intro_page' );
$intro_header = get_the_title( $intro_id );
$intro_excerpt = get_the_excerpt( $intro_id );
$intro_link = get_the_permalink( $intro_id );
$intro_linktext = get_post_meta( $intro_id, 'emm_cta_text', true );
echo '<h1>' . esc_html($intro_header) . '</h1>' . '<p>' . esc_html($intro_excerpt) . '</p>';
if( ! get_post_meta( $intro_id, 'emm_cta_text', true ) ) {
echo '<p><a class="cta" href="' . esc_url($intro_link) . '">Learn More</a></p>';
}else{
echo '<p><a class="cta" href="' . esc_url($intro_link) . '">' . esc_html($intro_linktext) . '</a></p>';
}
} ?>
นี่คือรหัสสำหรับการตั้งค่าในเครื่องมือกำหนดเอง:
$wp_customize->add_setting( 'intro_page' , array(
'sanitize_callback' => 'absint',
) );
$wp_customize->add_control( 'intro_page', array(
'label' => __( 'Page to use for intro section', 'veritas' ),
'section' => 'intro',
'settings' => 'intro_page',
'type' => 'dropdown-pages',
'priority' => 1
) );