カスタム投稿タイプにも、ページデザイン(Postに設定したカスタム内容)する方法

0
いいねをした人: 居ません
8件の投稿を表示中 - 1 - 8件目 (全8件中)
  • 投稿者
    投稿
  • #5644
    小川 明郎
    閲覧者
    0

    こんにちわ。京都でデザインの仕事をしています小川といいます。
    カスタム投稿タイプでは、ページデザイン(Postに設定したカスタム内容)が反映されませんよね。意図的なのかもしれないのですが、デフォルトは反映される方がいいのかなと思いました。

    具体的には、is-output-page-header.php 内の場合分けに

    } elseif ( is_singular() && in_array( get_theme_mod( ‘page-eyecatch’ ), $valid_choices ) ) {
    $return = true;

    と追記するのがいいと思うのですが、いかがでしょうか。

    0
    いいねをした人: 居ません
    #5648
    小川 明郎
    閲覧者
    0

    自分で書いておいてなんなのですが…

    やはりカスタム投稿タイプはその目的の通り、Postとは別の方がいいのでしょうか。
    もしできるなら、カスタマイザーで調整できたら便利と思いましたが、わざわざカスタム投稿タイプ作るような人には不要という判断が、正しいように思いました。

    そのように思う一方で、Snow Monkey の便利な機能は適宜使いたいなぁ(目次、関連記事、autohrの情報など)という欲張りな気持ちも湧いてきます。

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

    これについては過去にこのフォーラムでも話題にあがったりしたのですが、ご想像の通り、「わざわざカスタム投稿タイプ作るような人には不要」ということが多いのかなという判断でそのようにしています。

    子テーマをお使いであれば、子テーマにカスタム投稿タイプ用のテンプレートを追加することで投稿と同じ見た目で表示することが可能です。

    例えば、カスタム投稿タイプが news だったとして、

    /子テーマ/templates/view/content-news.php を作成
    (※ Snow Monkey では「/templates/view/」の中のテンプレートのことを「ビューファイル」と呼んでいます)

    その中身に、

    <?php
    get_template_part( 'templates/view/content-post' );
    0
    いいねをした人: 居ません
    #5737
    小川 明郎
    閲覧者
    0

    viewとしてPost用のファイルをnews(カスタム投稿タイプ)に読み込み、同一にするということですね。ありがとうございます。

    それとは異なるケースで、カスタム投稿タイプでhtmlは独自にしつつも、Postと同じeye catch 部分を使い、かつ それをパララックス表現(全幅表現)にしたい場合や目次機能を使いたい。

    そういうケースでは、以下の箇所からif文を外して表示させるのが良いでしょうか?

    52行目
    
    if ( 'content-top' === get_theme_mod( 'post-eyecatch' ) ) {
    get_template_part( 'template-parts/eyecatch' );
    }
    
    if ( get_option( 'mwt-display-contents-outline' ) ) {
    get_template_part( 'template-parts/contents-outline' );
    }
    
    0
    いいねをした人: 居ません
    #5742
    アバター画像キタジマ タカシ
    参加者
    2421

    そうですね。この if はカスタマイザーでオンオフしたものを反映させるために書いているものなので、そこは無視して常に表示させるのであれば if は消す形になりますね。

    0
    いいねをした人: 居ません
    #5822
    小川 明郎
    閲覧者
    0

    ありがとうございます。
    トライしてみました。
    CSSを当てられず、単にthe_content()出力前にアイキャッチが表示されちゃうという状態になりましたが
    一歩前進です。トピックを閉じます。

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

    あ、多分勘違いしてたかもです!アイキャッチをヘッダーにバーンとだしたい感じでしょうか?コンテンツの中身を投稿と同じにしたいのだと早とちりしてしまいました。

    ヘッダーにバーンとだしたいのでしたら、前に書かれていたように、snow_monkey_is_output_page_header() のカスタマイズで対処することになります。

    子テーマの functions.php に下記のコードを記述してみてください。

    /**
     * カスタム投稿タイプ「news」の場合はページヘッダーを表示
     */
    add_filter( 'snow_monkey_is_output_page_header', function( $return ) {
      if ( is_singular( 'news' ) ) {
        return true;
      }
      return $return;
    } );

    ちなみに、Snow Monkey はアイキャッチの表示方法が次の3つから選べるようになっているのですが、

    • ページヘッダー
    • ページヘッダーの上にタイトルを表示
    • コンテンツの上

    get_template_part( 'template-parts/eyecatch' ); はこのうち「コンテンツの上」にあたるものになります。

    0
    いいねをした人: 居ません
    #6512
    小川 明郎
    閲覧者
    0

    まさにそこでした。
    なるほど、投稿タイプごとに いろんなフィルターフックを上書き定義し直せばいいですね。
    ありがとうございます。お礼まで。

    0
    いいねをした人: 居ません
8件の投稿を表示中 - 1 - 8件目 (全8件中)
  • トピック「カスタム投稿タイプにも、ページデザイン(Postに設定したカスタム内容)する方法」には新しい返信をつけることはできません。

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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