web-dev-qa-db-ja.com

Faviconストレージ - どのフォルダを使うべきですか?

この質問は技術的なものではなく、むしろ「イデオロギー」です - WPのどこにfaviconを(「正しい」方法で)格納するべきですか?ルート(wp-config.php)に格納する必要がありますOR現在のテーマのフォルダに格納する必要がありますか?それとも、2つのコピーを保管する必要がありますか(私はそれをしたくありません)。私は、どちらの方法でも機能し、エラーが発生しないことを知っていますが、もっと良い/正しい/もっと意味的な方法などを知りたいのです。

8
elixoid

テーマを変更したときにfaviconが変更されることが予想される場合にのみ、テーマフォルダに保存します。 私は違います。

ファビコンはサイト全体のアイデンティティの一部であり、CMSの機能ではありません。あなたがサイトのさまざまな部分を実行するためにWP以外のソフトウェアを使用する場合はどうなりますか。たとえば、フォトギャラリー、フォーラム、またはwiki(または上記のすべて)。

FaviconをWebサイトのルートに置くと、すべてのソフトウェアパッケージが自動的にアクセスできるようになります(ただし、ハードコード化されたLINKを個々のテーマから削除する必要がある場合もあります)。


明確にするために:LINKが指定されていない場合、すべての最近のウェブブラウザ(Seamonkeyを除いて、それを有効にするオプションはあるが)は自動的にルートディレクトリ、すなわちexample.com/favicon.icoでfaviconを探す。したがって、LINK要素を追加する理由はなく、そうでない正当な理由もありません。

さらに、LINK要素の形式が間違っている(たとえばタイプミスがある)か、そこにあるファイルが破損しているかブラウザが認識できない形式である場合、ブラウザは/favicon.ico とにかく を探しに行きます。そこにファイルがないと、ログに404エラーが発生します。

LINKが適切であるケースが1つあります。それはあなたがあなたのサイトの異なるページに対して異なるお気に入りが欲しい場合です。

9
Doug

それは常にルートフォルダの中にあるべきです、そしてそれはあなたが明示的にそれにリンクするかどうかにかかわらず働くでしょう。

これをテーマのfunctions.phpの関数として明示的にリンクすることもできます。

function my_favicon() {
    echo '<link rel="shortcut icon" href="' . get_bloginfo('wpurl') . '/favicon.ico" />';    
}
add_action('wp_head', 'my_favicon');
7
stealthyninja

ここに質の高い答えがありますが、私は私が別の観点から2セントを投げると思いました。私は多くのブログやサイトをWordPress MultiSite環境で管理していますが、そこではルートディレクトリはオプションではありません。このような場合は、テーマディレクトリに のようにfaviconを入れるのが最善です - WordPress Codexは を推奨します。

1
Matthew Boynes

Faviconは動的ではなく、他のものと「衝突」することはありません。それを頭に入れて、I ハードコード header.phpに記述して、それで終わりです。

0
Noel Tock