Olein_jp

フォーラムへの返信

2件の投稿を表示中 - 496 - 497件目 (全497件中)
  • 投稿者
    投稿
  • 返信先: WP customizer frameworkの使い方について #6790
    Olein_jp
    参加者
    570

    ありがとうございます!!

    分岐も問題なく動かすことができました!!
    あとはもう少しWP Costomizer Frameworkの内部を覗いてどんなことできるのか研究して見たいと思います。

    ご指南いただきましてありがとうございました!!

    0
    いいねをした人: 居ません
    返信先: WP customizer frameworkの使い方について #6788
    Olein_jp
    参加者
    570

    「パネルの中のセクションの中のコントロール」という考え方ではなくて、「独立したコントロール、セクション、パネルがそれぞれあり、コントロールをどのセクションに属させるか、セクションをどのパネルに属させるかを定義する」と考えてください

    この考え方、全然できておらず目から鱗でした。ありがとうございます。

    結果的に、前者の「単純な方法」で試してみて、うまい具合にコントロールを新規追加し、プレビューも問題なく、スタイルをページに書き出すことができました。

    
    /**
     * Load WP Customizer Framework
     */
    $customizer = \Inc2734\WP_Customizer_Framework\Customizer_Framework::init();
    
    $customizer->panel( 'design', [
    	'title' => 'sample',
    	'priority' => 1000,
    ] );
    
    $customizer->section(
    	'base-design',
    	[
    		'title'    => __( 'Base design settings', 'snow-monkey' ),
    		'priority' => 100,
    	]
    );
    
    $customizer->control(
    	'color',
    	'accent-color',
    	[
    		'label'    => __( 'Accent color', 'snow-monkey' ),
    		'default'  => '#bd3c4f',
    		'priority' => 100,
    	]
    );
    
    $customizer->control(
    	'color',
    	'description-color',
    	[
    		'label'    => __( 'Descriptioncolor', 'snow-monkey' ),
    		'default'  => '#bd3c4f',
    		'priority' => 110,
    	]
    );
    

    このような感じです。

    この後に

    
    if ( ! is_customize_preview() ) {
    	return;
    }
    
    $panel_design              = $customizer->get_panel( 'design' );
    $section_base_design       = $customizer->get_section( 'base-design' );
    $control_accent_color      = $customizer->get_control( 'accent-color' );
    $control_description_color = $customizer->get_control( 'description-color' );
    
    $control_accent_color->join( $section_base_design )->join( $panel_design );
    $control_description_color->join( $section_base_design )->join( $panel_design );
    

    とありますが、

    
    if ( ! is_customize_preview() ) {
    	return;
    } else {
    
    	$panel_design              = $customizer->get_panel( 'design' );
    	$section_base_design       = $customizer->get_section( 'base-design' );
    	$control_accent_color      = $customizer->get_control( 'accent-color' );
    	$control_description_color = $customizer->get_control( 'description-color' );
    
    	$control_accent_color->join( $section_base_design )->join( $panel_design );
    	$control_description_color->join( $section_base_design )->join( $panel_design );
    
    }
    

    こうする必要は特にありませんか?特段、挙動が変わるわけではないようですが、いただきましたコードに、

    
    if ( is_customize_preview() ) {
    	$panel_layout   = $customizer->get_panel( 'layout' );
    	$section_header = $customizer->get_section( 'header' );
    	
    	$control_header_layout = $customizer->get_control( 'header-layout' );
    	$control_header_layout->join( $section_header )->join( $panel_layout );
    }
    

    という記述箇所があったので、こういう処理にした方が良いのかな?とか、素人的に思いましたので…(間違っていると思います…

    —–

    重ねてお聞きしたいのですが、上記の流れでカスタマイザーを実装していくつもりなのですが、例えばレイアウトの変更などはスタイルの書き出しではなく、条件分岐で読み込むファイルを変える、もしくはCSSクラスを切り替えるなどの処理が必要になってくると思いますが、そちらの方法に関して何かアドバイスいただければ幸いです。

    よろしくお願いいたします。

    0
    いいねをした人: 居ません
2件の投稿を表示中 - 496 - 497件目 (全497件中)

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。