php 带有自定义小部件和acf的侧边栏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 带有自定义小部件和acf的侧边栏相关的知识,希望对你有一定的参考价值。

// Register Sidebar
function alle_sprachen_widgets_init() {
	
	register_sidebar( array(
        'name'          => esc_html__( 'Header-Hero', 'alle_sprachen' ),
        'id'            => 'header_hero',
        'description'   => esc_html__( 'Add widgets here.', 'alle_sprachen' ),
        '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', 'alle_sprachen_widgets_init' );

// Register Widget
if(!class_exists('GeneralTextWidget')) {

class GeneralTextWidget extends WP_Widget {

public function __construct() {
$widget_ops = array(
'classname' => 'generaltext_widget',
'description' => 'Text widget Widget built with ACF Pro',
);
parent::__construct( 'generaltext_widget', 'Text Widget', $widget_ops );
}

public function widget( $args, $instance ) {
    // get widget ID
    $acf_widget_id = 'widget_' . $args['widget_id'];
    
    // Add ACF Group Fields
    $contentleft = get_field('general_textbox', $acf_widget_id);

    echo '<p class="c-hero-block--content-left__titel">';
    echo $contentleft['inhalt_links_titel'];
    echo '</p><div class="c-hero-block--content-left__textblock">';
    echo $contentleft['inhalt_links_text'];
    echo '</div>';
}

public function form( $instance ) {
// outputs the options form on admin
}

public function update( $new_instance, $old_instance ) {
    //return $new_instance; // that is not nececesarrily
}

}

}

/**
* Register Widgets
*/
function register_widgets()
{
register_widget( 'GeneralTextWidget' );
}
add_action( 'widgets_init', 'register_widgets' );


// Add widget to sidebar and call sidebar in DOM
<?php dynamic_sidebar( 'header_hero' ); ?>

以上是关于php 带有自定义小部件和acf的侧边栏的主要内容,如果未能解决你的问题,请参考以下文章