プラグインを使ったヘッダ部分のカスタマイズ

0
いいねをした人: 居ません
4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #58809
    MG
    参加者
    1

    【お使いの Snow Monkey のバージョン】 Snow Monkey 11.5.8
    【お使いのブラウザ】 Chrome

    ===

    以前質問させていただいていた下記の件、子テーマを使って解決していたのですが、子テーマは非推奨とのことでプラグインを使って解決したいのですが、どのようにやるのがベストでしょうか?

    サイトヘッダ部にロゴとサイト名を横並びで同時に表示して、サイトの説明テキストをその上部に持ってこうようと試みているのですが、なぜかうまくいきません。

    ご教示いただけると助かります。

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

    0
    いいねをした人: 居ません
    #58820
    アバター画像キタジマ タカシ
    参加者
    2421

    「子テーマが非推奨」というのは、テンプレートの上書きをしてしまうとアップデート時に不具合が発生する可能性が上がるからという理由なのですが、このカスタマイズだと結構書き換えが必要で、プラグインから一部を置換するという方法は難しいので子テーマから上書きでも良いのではないかと思います。

    一応プラグインからフックでやるとするとこんな感じになると思います。

    add_filter(
    	'snow_monkey_pre_template_part_render_template-parts/header/site-branding',
    	function( $html ) {
    		ob_start();
    
    		$classes = [ 'c-site-branding' ];
    		if ( has_custom_logo() ) {
    			$classes[] = 'c-site-branding--has-logo';
    		}
    		?>
    		<div class="<?php echo esc_attr( implode( ' ', $classes ) ); ?>">
    			<?php if ( get_theme_mod( 'display-site-branding-description' ) && get_bloginfo( 'description' ) ) : ?>
    				<div class="c-site-branding__description">
    					<?php bloginfo( 'description' ); ?>
    				</div>
    			<?php endif; ?>
    
    			<?php if ( is_front_page() ) : ?>
    
    				<h1 class="c-site-branding__title">
    					<?php \Framework\Helper::the_site_branding(); ?>
    					<?php if ( has_custom_logo() ) : ?>
    						<span><?php bloginfo( 'name' ); ?></span>
    					<?php endif; ?>
    				</h1>
    
    			<?php else : ?>
    
    				<div class="c-site-branding__title">
    					<?php \Framework\Helper::the_site_branding(); ?>
    					<?php if ( has_custom_logo() ) : ?>
    						<span><?php bloginfo( 'name' ); ?></span>
    					<?php endif; ?>
    				</div>
    
    			<?php endif; ?>
    		</div>
    		<?php
    		return ob_get_clean();
    	}
    );

    snow_monkey_pre_template_part_render_xxxxx フックは、テンプレートの上書きをファイルベースではなくてフックでおこなうものになります。

    2
    いいねをした人: 居ません
    #58863
    MG
    参加者
    1

    なるほど!うまくいきました。

    今回、SnowMonkey を更新したタイミングでサイトが真っ白になってしまい、何が原因なのかわからずかなり苦戦しました。

    結果的に子テーマの functions.php に記述していた内容が原因だったため、やはり子テーマは使わないようにしたほうがいいのかなと…

    もう少しよく考えてみます。ありがとうございましたm(_ _)m

    0
    いいねをした人: 居ません
    #58866
    アバター画像キタジマ タカシ
    参加者
    2421

    良かったです!

    今回、SnowMonkey を更新したタイミングでサイトが真っ白になってしまい、何が原因なのかわからずかなり苦戦しました。

    結果的に子テーマの functions.php に記述していた内容が原因だったため、やはり子テーマは使わないようにしたほうがいいのかなと…

    ほとんどの場合、子テーマの functions.php で問題を起こすコードは My Snow Monkey に書いても問題を起こします。Snow Monkey はメジャーアップデートのときに後方互換性に影響のある変更を入れる場合があります(入れたくないのですが、、、どうしてもということがあり、、、すみません)。事前に公式サイトでアップデートについてお知らせしているので、メジャーアップデートの際は事前に確認してからアップデートされることをおすすめします。

    また、アップデートで白くなったときはフォーラムぜひ活用してください!

    解決済みということで、トピック閉じますね。

    0
    いいねをした人: 居ません
4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • トピック「プラグインを使ったヘッダ部分のカスタマイズ」には新しい返信をつけることはできません。

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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