サポート » 使い方全般 » サイトを見るときアドミンバーが表示されない不具合

  • サイトを見るときアドミンバーが表示されない不具合について教えてください。
    使っているテーマはraindropsです。

    1、WordPressにログインした状態で、「ユーザー」→「あなたのプロフィール」→「アドミンバー表示」にはチェック入ってます。
    2、footer.phpにも
    <?php wp_footer(); ?>
    が記載されてあります。ほかにも表示されない原因などはありますか?

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • こんにちは、

    Raindropsの作者です

    ご利用いただきありがとうございます

    おそらく、
    header.phpのカスタマイズで、

    wp_head( );

    index.phpでの

    global $rsidebar_show, $raindrops_document_type;
    
    		get_header( $raindrops_document_type );

    が省略されている場合や、同様にindex.phpでの

    <?php get_footer( $raindrops_document_type ); ?>

    の省略、または、

    footer.phpでの

    <?php wp_footer( ); ?>

    の省略、などにより、アドミンバーが表示されなくなる事があります。

    index.phpで、ヘッダーやフッターをインクルードしないカスタマイズを行う場合は(もし、そのようなカスタマイズを行ってられるとすればの仮定の話ですが、)

    http://tenman.info/labo/snip/archives/4164

    をご覧頂き、フック等の記述を行ってみてください。
    (フックに置き換えた場合、アドミンバーは、表示できると思いますが、その他の部分で影響が出る可能性もありますので、慎重にお願いします)

    トピック投稿者 shilinqing

    (@shilinqing)

    お世話になります m(_ _)m

    1,header.phpでの

    <?php
    		global $raindrops_link_unique_text;
    		wp_head( );
    ?>
    	</head>

    は確認できました。

    2.footer.php

    raindrops_append_doc( );
    ?>
    	</div>
    <?php wp_footer( ); ?>
    </body>
    </html>

    3,index.php(raindropsのディレクトリに入ってるphpファイルでよろしいでしょうか?)

    </div>
    </div>
    
    <?php get_footer( $raindrops_document_type ); ?>

    は確認できましたが、

    global $rsidebar_show, $raindrops_document_type;
    
    		get_header( $raindrops_document_type );

    はどうやら記載されていないようです。どこら辺に書けばいいかのアドバイスをお願いいたします。

    index.php テンプレートのコードを貼り付けてください

    忘れずに、コード全体を選択してcodeボタンを押してから、投稿してください

    トピック投稿者 shilinqing

    (@shilinqing)

    <?php
    /**
     * Template file index
     *
     * @package Raindrops
     * @since Raindrops 0.940
     *
     * @uses get_header( $raindrops_document_type )	include template part file
     * @uses is_home( )	Check Conditional is home page or not
     * @uses is_active_sidebar( 'sidebar-3' )	include template part file
     * @uses dynamic_sidebar( 'sidebar-3' )	include template part file
     * @uses raindrops_yui_class_modify( )	add class attribute value
     * @uses is_2col_raindrops( 'style="width:99%;"' )	add inline style attribute
     * @uses get_template_part( 'loop', 'default' )	include template part file
     * @uses get_sidebar( 'extra' )	include template part file
     * @uses get_sidebar( 'default' )	include template part file
     * @uses get_footer( $raindrops_document_type )
     */
    
    		get_header( $raindrops_document_type );
    
    		raindrops_debug_navitation( __FILE__ );
    
    ?>
    	<div id="yui-main">
    		<div class="yui-b">
    <?php
    /**
     *  Widget only home
     *
     */
    		if ( is_home( ) and  is_active_sidebar( 'sidebar-3' ) ) {
    
    			echo '<div class="topsidebar">'."\n".'<ul>';
    
    			dynamic_sidebar( 'sidebar-3' );
    
    			echo '</ul>'."\n".'</div>'."\n".'<br class="clear" />';
    		}
    ?>
        	<div class="<?php echo raindrops_yui_class_modify( );?>" id="container">
    			<div class="yui-u first<?php raindrops_add_class( 'yui-u first', true );?>">
    <?php
    			get_template_part( 'loop', $raindrops_document_type );
    ?>
    				<br style="clear:both" />
    			</div>
    			<div class="yui-u">
    <?php
    		raindrops_prepend_extra_sidebar( );
    
    		if ( $rsidebar_show ) {
    
    			get_sidebar( 'extra' );
    
    		}
    
    		raindrops_append_extra_sidebar( );
    ?>
    	  </div>
    <?php
    		//add nest grid here
    ?>
        </div>
      </div>
    </div>
    	<div class="yui-b">
    <?php
    		raindrops_prepend_default_sidebar( );
    
    		get_sidebar( 'default' );
    
    		raindrops_append_default_sidebar( );
    ?>
    	</div>
    </div>
    
    <?php get_footer( $raindrops_document_type ); ?>

    ご指導をよろしくお願いいたします。

    ご提示いただいたコードをチェックしましたが、アドミンバーは問題なく表示されました。

    global $rsidebar_show, $raindrops_document_type;

    については、最新バージョンで追加された、テンプレートフックに関連する設定ですので、フックの利用などをしていなければ、問題なく動作します。

    無改造でご利用していただいているのですね。

    たぶんテーマに起因する問題ではないと思います。

    以下の事を、チェックしてみてください。

    1.ブラウザの、キャッシュ、クッキーの削除で表示されないかどうか

    2. アドミンバーを表示する設定が適切に動作しているかどうか

    functions.phpの先頭に追加

    <?php
    add_filter( 'show_admin_bar', 'my_adminbar_setting_check' );
    
    function my_adminbar_setting_check( $adminbar ) {
    var_dump( $adminbar );
    
    return $adminbar;
    }
    ?>

    ページを表示して、bool(true) bool(true) trueが返ってくるかどうか

    3、関数を使ってチェック

    var_dump( is_admin_bar_showing() );

    bool(true) が帰ってくればOK 

    で、falseが帰ってくるようでしたら、書き込んでください。

    カンですが、クッキーが怪しいのではないかと思います

    トピック投稿者 shilinqing

    (@shilinqing)

    教えていただいた1~3を一通り行いました。
    クッキーをリセットし、

    2番を試してみたところ、
    bool(false) bool(false)が帰ってきました。

    functions.php の先頭に

    add_filter( 'show_admin_bar', 'my_adminbar_setting_check' );
    
    function my_adminbar_setting_check( $adminbar ) {
    	$adminbar = true;
    
    return $adminbar;
    }

    追加した状態で、

    functions.php の最終行に、以下を追加してください

    function list_hooked_functions($tag=false){
    	global $wp_filter;
    	if ($tag) {
    
    		$hook[$tag]=$wp_filter[$tag];
    
    		if (!is_array($hook[$tag]) ) {
    			echo "<p>Nothing found for '$tag' hook</p>";
    			trigger_error("Nothing found for '$tag' hook", E_USER_WARNING);
    			return;
    		}
    	} else {
    
    		$hook=$wp_filter;
    		ksort($hook);
    	}
    	 echo '<div style="text-align:left;margin:5%;">';
    
    	 foreach($hook as $tag=> $priority){
    		 echo "<p><strong>$tag</strong></p>";
    		 ksort($priority);
    
    		 foreach($priority as $priority=> $function){
    
    			 echo '<p>'.$priority.'  ';
    			 foreach($function as $name=> $properties) echo "\t$name</p>";
    		 }
    	 }
    
    	 echo '</div>';
    	return;
    }
    list_hooked_functions('show_admin_bar');

    ブログを表示して、何か表示されていれば書き込んでみてください

    それと、アドミンバーが表示されるようになったかも書いてください

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「サイトを見るときアドミンバーが表示されない不具合」には新たに返信することはできません。