サイトを見るときアドミンバーが表示されない不具合
-
サイトを見るときアドミンバーが表示されない不具合について教えてください。
使っているテーマはraindropsです。1、WordPressにログインした状態で、「ユーザー」→「あなたのプロフィール」→「アドミンバー表示」にはチェック入ってます。
2、footer.phpにも
<?php wp_footer(); ?>
が記載されてあります。ほかにも表示されない原因などはありますか?
-
こんにちは、
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
をご覧頂き、フック等の記述を行ってみてください。
(フックに置き換えた場合、アドミンバーは、表示できると思いますが、その他の部分で影響が出る可能性もありますので、慎重にお願いします)お世話になります 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 );
はどうやら記載されていないようです。どこら辺に書けばいいかのアドバイスをお願いいたします。
<?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が帰ってくるようでしたら、書き込んでください。
カンですが、クッキーが怪しいのではないかと思います
教えていただいた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');
ブログを表示して、何か表示されていれば書き込んでみてください
それと、アドミンバーが表示されるようになったかも書いてください
- トピック「サイトを見るときアドミンバーが表示されない不具合」には新たに返信することはできません。