質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.76%

  • PHP

    19224questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • WordPress

    6677questions

    WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

タグ一覧ページだけウィジットで作ったサイドバーが表示されない

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 137

KaoriAbe

score 4

タグ一覧ページが必要で、固定ページにタグを導入しました。
しかしタグ一覧ページのみウィジットで作ったサイドバーが表示されません。
archive.phpが割り当てられているぺーじです。
同じget_sidebar();で他のページもサイドバーが問題なく挿入されているのですが
どこで何が違って、どのようにしたらサイドバーが表示できますでしょうか?
ご教授いただけると幸いです。

問題のリンク
http://〇〇〇〇〇.jp/test/tag/heart/

<section id="nav_menu-2" class="widget widget_nav_menu">「この中に入るはずのメニューが入らない」</section>

<div class="menu-service-container"><ul id="menu-service" class="menu"><li id="menu-item....と続くはずなんですが

archive.php

<?php
get_header(); ?>
    <section id="primary" class="content-area col-sm-12 col-lg-8">
        <main id="main" class="site-main" role="main">
        <?php
        if ( have_posts() ) : ?>
            <header class="page-header">
                <?php
                    the_archive_title( '<h1 class="page-title">', '</h1>' );
                    the_archive_description( '<div class="archive-description">', '</div>' );
                ?>
            </header><!-- .page-header -->
            <?php
            /* Start the Loop */
            while ( have_posts() ) : the_post();
                get_template_part( 'template-parts/content', get_post_format() );
            endwhile;
            the_posts_navigation();
        else :
            get_template_part( 'template-parts/content', 'none' );
        endif; ?>
        </main><!-- #main -->
    </section><!-- #primary -->
<?php
get_sidebar();
get_footer();
template-parts/content.php
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
    <div class="post-thumbnail">
        <?php the_post_thumbnail(); ?>
    </div>
    <header class="entry-header">
        <?php
        if ( is_single() ) :
            the_title( '<h1 class="entry-title">', '</h1>' );
        else :
            the_title( '<h2 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h2>' );
        endif;

        if ( 'post' === get_post_type() ) : ?>
        <div class="entry-meta">
             <time datetime="<?php the_time('Y-m-d'); ?>"><?php the_time('Y.m.d'); ?></time>
                  <p><?php the_category(', '); ?></p>
        </div><!-- .entry-meta -->
        <?php
        endif; ?>
    </header><!-- .entry-header -->
    <div class="entry-content">
        <?php
        if ( is_single() ) :
            the_excerpt();
        else :
            the_excerpt( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'wp-bootstrap-starter' ) );
        endif;

            wp_link_pages( array(
                'before' => '<div class="page-links">' . esc_html__( 'Pages:', 'wp-bootstrap-starter' ),
                'after'  => '</div>',
            ) );
        ?>
    </div><!-- .entry-content -->

</article><!-- #post-## -->
functions.php
function wp_bootstrap_starter_widgets_init() {
    register_sidebar( array(
        'name'          => esc_html__( 'Sidebar', 'wp-bootstrap-starter' ),
        'id'            => 'sidebar-1',
        'description'   => esc_html__( 'Add widgets here.', 'wp-bootstrap-starter' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

追記
テーマはこちらのテーマをカスタマイズしています。
https://afterimagedesigns.com/wp-bootstrap-starter/

追記
ナビゲーションが全て表示されない事がわかりました。
もう一つグローバルナビがあるのですが、このページに限り表示されません。
get_sidebar()問題ないはずなんですが・・・

後から気がついたのですが、カスタムメニューで作ったメニューがarchive.phpだけで表示されない
get_sidebar();はついております。
htmlで確認するとメニューのタグの部分がそっくりそのまま抜けていでおそらくPHP側で問題があるようです。
メニューを表示するにはどうしたらいいでしょうか?

固定ページに以下のようにタグ機能をつけました。

functions.php
// 固定ページにカテゴリーを設定
function add_categorie_to_pages(){
register_taxonomy_for_object_type('category', 'page');
}
add_action('init','add_categorie_to_pages');
// カテゴリーアーカイブに固定ページを含める
function add_page_to_category_archive( $query ) {
if ( $query->is_category== true && $query->is_main_query() ) {
$query->set('post_type', array( 'post', 'page' ));
}
}
add_action( 'pre_get_posts', 'add_page_to_category_archive' );
// 固定ページにタグを設定
function add_tag_to_page() {
register_taxonomy_for_object_type('post_tag', 'page');
}
add_action('init', 'add_tag_to_page');
// タグアーカイブに固定ページを含める
function add_page_to_tag_archive( $obj ) {
if ( is_tag() ) {
$obj->query_vars['post_type'] = array( 'post', 'page' );
}
}
add_action( 'pre_get_posts', 'add_page_to_tag_archive' );
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • kei344

    2018/04/16 02:04

    使用されているテーマは自作テーマでしょうか?それとも公開されているテーマでしょうか?後者の場合は入手先をリンクつきで質問文に追記してください。また、サイドバーの話であればcontent-page.phpではなくsidebar.phpを提示されてはいかがでしょうか。

    キャンセル

  • KaoriAbe

    2018/04/16 03:35

    ご質問ありがとうございます。sidebar.phpを使っているのですが、元々のテーマがさらにcontent-page.phpから取得しているようでした。

    キャンセル

  • kei344

    2018/04/16 03:45

    「元々のテーマがさらにcontent-page.phpから取得しているようでした」ということですが、リンク先のテーマはそのようになっていませんでした。URLを確認してみてください。

    キャンセル

  • KaoriAbe

    2018/04/16 04:12

    取得しているのはtemplate-parts/content.phpこちらでした。

    キャンセル

回答 2

check解決した方法

0

解決方法が見つかりました。
http://attimmys.com/technology/wordpress/tag_archiv/
この方とまったく一緒です。

//固定ページにタグを設定
 function add_tag_to_page() {
 register_taxonomy_for_object_type('post_tag', 'page');}
add_action('init', 'add_tag_to_page');

//タグアーカイブに固定ページを含める
function add_page_to_tag_archive( $obj ) {
    if ( is_tag() ) {
        $obj->query_vars['post_type'] = array( 'post', 'page' );
    }
}
add_action( 'pre_get_posts', 'add_page_to_tag_archive' );


//固定ページにタグを設定
 function add_tag_to_page() {
 register_taxonomy_for_object_type('post_tag', 'page');}
add_action('init', 'add_tag_to_page');

// タグアーカイブに固定ページを含める
function tags_archives($wp_query) {
    if ( $wp_query->get('tag') )
        $wp_query->set('post_type', 'any');}
add_action('pre_get_posts', 'tags_archives');

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

この情報だけでは、アドバイスし難いです。

まず、以下のいずれかが原因と予想しますので、原因箇所の切り分け作業をオススメします。

  1. PHP側に問題があるためにhtmlが出力されておらず、サイドバーが表示されない。
  2. ひとまず、PHPは動作しているがhtmlがBootstrapの記法に合っておらず、表示されない。

この1,2の切り分けのため、htmlソースを表示してみてください。
サイドバー部分のhtmlが全くなければ、ほぼ間違いなくPHP側の問題。htmlが出力されているのであれば、html記述の問題になると考えます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/04/16 18:29 編集

    回答ありがとうございます。
    はい、htmlソースを表示してみると
    <section id="nav_menu-2" class="widget widget_nav_menu">「この中に入るはずのメニューが入らない」</section>
    になります。なのでPHPの問題なのは確かだとおもうのですが。
    どのような情報をお出ししたらよいですか?

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.76%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • PHP

    19224questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • WordPress

    6677questions

    WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。