ホームページ >バックエンド開発 >PHPチュートリアル >wordpress header.php データに関する質問
wordpressのheader.phpファイルについての質問です。
私は PHP を初めて使用するのですが、WordPress コードを見ると、ヘッダー ファイル (場所: wp-content/temes/twentyeleven/header.php) についていつも混乱します。
お聞きしたいのですが:
このファイルのコードにはインクルード操作が含まれていません。bloginfo()、wp_head() などの外部関数はどのように呼び出すことができますか?
この開発モデルを実装するにはどうすればよいですか?ご説明、または情報を提供していただければ幸いです。
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> <?php /*** テーマのヘッダー。 * * <head> をすべて表示します。セクションと <div id="main"> までのすべて * * @packageWordPress * @サブパッケージ Twenty_イレブン * @Twenty 11 1.0 以降*/ ?> <!--[IE 6 の場合]> <html id="ie6" <?php language_attributes(); ?>> <![endif]--> <!--[IE 7 の場合]> <html id="ie7" <?php language_attributes(); ?>> <![endif]--> <!--[IE 8 の場合]> <html id="ie8" <?php language_attributes(); ?>> <![endif]--> <!--[if !(IE 6) | !(IE 7) | !(IE 8) ]><!--> <html <?php language_attributes(); ?>> <!--<![endif]--> <meta charset="<?php bloginfo( 'charset' ); ?>" /> <meta name="ビューポート" content="width=デバイス幅" /> <タイトル><?php /* * <タイトル> を印刷します。表示されている内容に基づいてタグを付けます。 */ グローバル $page、$paged; wp_title( '|', true, 'right' ); // ブログ名を追加します。 bloginfo( '名前' ); // ホーム/フロント ページにブログの説明を追加します。 $site_description = get_bloginfo( '説明', '表示' ); if ( $site_description && ( is_home() || is_front_page() ) ) エコー " | $site_description"; // 必要に応じてページ番号を追加します。 if ( $paged >= 2 || $page >= 2 ) エコー ' | ' 。 sprintf( __( 'ページ %s', 'twentyeleven' ), max( $paged, $page ) ); ?> <リンク rel="プロフィール" href="http://gmpg.org/xfn/11" /> <link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( 'stylesheet_url' ); ?>" /> <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" /> <!--[IE 9 の場合]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script> <![endif]--> <?php /* コメントフォームのあるページに JavaScript を追加します * スレッドコメントのあるサイトをサポートします (使用時)。 */ if ( is_singular() && get_option( 'thread_comments' ) ) wp_enqueue_script( 'コメント返信' ); /* 終了 </head> の直前に wp_head() を必ず入れてください。 テーマの * タグを追加しないと、多くのプラグインが壊れてしまいます。 * 通常、このフックを使用して に要素を追加します。そのような * スタイル、スクリプト、メタタグとして。 */ wp_head(); ?> </head> <body <?php body_class(); ?>> <div id="page" class="hfeed"> <header id="ブランディング" role="バナー"> <h> <h1 id="サイトタイトル"><span><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="ホーム"><?php bloginfo( 'name' ); ?></a></span></h1> <h2 id="サイトの説明"><?php bloginfo( '説明' ); ?></h2> </hgroup> <?php // ヘッダー画像が削除されているかどうかを確認します $header_image = get_header_image(); if ( $header_image ) : // WordPress 3.4 より前のバージョンとの互換性。 if ( function_exists( 'get_custom_header' ) ) { // アイキャッチ画像の最小幅をどれくらいにするかを把握する必要があります。 // テーマが柔軟な幅を実装する場合、この結果は推奨される幅になります。 $header_image_width = get_theme_support( 'custom-header', 'width' ); } それ以外 { $header_image_width = HEADER_IMAGE_WIDTH; }?> <a href="<?php echo esc_url( home_url( '/' ) ); ?>"> <?php // ヘッダー画像 // これが投稿かページか、サムネイルがあるか、大きいかどうかを確認します if ( is_singular() && has_post_thumbnail( $post->ID ) && ( /* $src, $width, $height */ $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), array( $header_image_width, $header_image_width ) ) ) && $image[1] >= $header_image_width ) : // ヒューストン、新しいヘッダー画像があります! echo get_the_post_thumbnail( $post->ID, 'post-thumbnail' ); それ以外 : // WordPress 3.4 より前のバージョンとの互換性。 if ( function_exists( 'get_custom_header' ) ) { $header_image_width = get_custom_header()->width; $header_image_height = get_custom_header()->height; } それ以外 { $header_image_width = HEADER_IMAGE_WIDTH; $header_image_height = HEADER_IMAGE_HEIGHT; } ?> <img src="<?php header_image(); ?>" width="<?php echo $header_image_width; ?>" height="<?php echo $header_image_height; ?>" alt="" /> <?php endif; // アイキャッチ画像または標準ヘッダーのチェックを終了します ?> </a> <?php endif; // 削除されたヘッダー画像のチェックを終了します ?> <?php // テキストが非表示になっていますか? if ( 'blank' == get_header_textcolor() ) : ?> <div class="only-search<?php if ( $header_image ) : ?> with-image<?php endif; ?>"> <?php get_search_form(); ?> </div> <?php それ以外 : ?> <?php get_search_form(); ?> <?php endif; ?> <nav id="アクセス" role="ナビゲーション"> <h3 class="支援テキスト"><?php _e( 'メインメニュー', 'twentyeleven' ); ?></h3> <?php /* スクリーン リーダー/テキスト ブラウザがナビゲーション メニューをスキップして、適切な部分に直接アクセスできるようにします。 */ ?> <div class="skip-link"><a class="assistive-text" href="#content" title="<?php esc_attr_e( 'プライマリ コンテンツにスキップ', 'twentyeleven' ); ? >"><?php _e( 'プライマリ コンテンツにスキップ', 'twentyeleven' ); ?></a></div> <div class="skip-link"><a class="assistive-text" href="#secondary" title="<?php esc_attr_e( '二次コンテンツにスキップ', 'twentyeleven' ); ? >"><?php _e( '二次コンテンツにスキップ', 'twentyeleven' ); ?></a></div> <?php /* ナビゲーション メニュー。いずれかが入力されていない場合、wp_nav_menu は wp_page_menu に戻ります。プライマリ ロケーションに割り当てられたメニューが使用されます。割り当てられていない場合は、最小の ID を持つメニューが使用されます。 */ ?> <?php wp_nav_menu( array( 'テーマの場所' => 'プライマリ' ) ); ?> </nav><!-- #access --> </header><!-- #branding --> <div id="メイン"> <div class="clear"></div></h>