WordPress のカスタムフィールドがなぜか正常に表示されず、数時間ハマりました。
Dreamwaver(CS3)上で編集していたphpファイルを保存するとき、文字コードがShift_jisに変換されてしまうことがあり、そのせいでif文が日本語を誤認識して、falseになっていたようです。
TerapadでUTF-8に書き換えて保存しなおすと、問題無く動作しました。
WordPress のカスタムフィールドがなぜか正常に表示されず、数時間ハマりました。
Dreamwaver(CS3)上で編集していたphpファイルを保存するとき、文字コードがShift_jisに変換されてしまうことがあり、そのせいでif文が日本語を誤認識して、falseになっていたようです。
TerapadでUTF-8に書き換えて保存しなおすと、問題無く動作しました。
imgタグで埋め込んだ画像の下に余白が出来ることがある。
imgタグはインライン要素であり、テキストと同じように「行」の中に表示されているので、何も指定しないと行の下端ではなく、ベースラインに揃えられるため。
これを回避するにはCSSで以下のように指定すると良い。
vertical-align:bottom;
img {
min-width:399px;
width:399px;
height:auto;
}
動画のアドレスの末尾に以下のクエリを追加します。
関連動画を非表示
?rel=0
操作パネルを隠す
&autohide=1
自動再生
&autoplay=1
ループ
&loop=1
PCとスマートフォンとでHTML等を切り替えます。
<?php
//PCかスマートフォンかで条件分岐
//header関数を使ってリダイレクトしたい場合は、HTML出力の前(DOCTYPE宣言より前)に記述する。
function is_mobile () {
$useragents = array(
'iPhone', // Apple iPhone
'iPod', // Apple iPod touch
'Android', // 1.5+ Android
'dream', // Pre 1.5 Android
'CUPCAKE', // 1.5+ Android
'blackberry9500', // Storm
'blackberry9530', // Storm
'blackberry9520', // Storm v2
'blackberry9550', // Storm v2
'blackberry9800', // Torch
'webOS', // Palm Pre Experimental
'incognito', // Other iPhone browser
'webmate' // Other iPhone browser
);
$pattern = '/'.implode('|', $useragents).'/i';
return preg_match($pattern, $_SERVER['HTTP_USER_AGENT']);
}
?>
<?php if (is_mobile()) { ?>
例えば、ここに追加したいHTML等を記述する
<!?php } ?>
iPhone用のCSSを別個に作り、デバイスの幅によって使用するCSSを切り替えます。
<link rel="stylesheet" type="text/css" media="only screen and (max-device-width:480px)" href="<?php bloginfo('template_url'); ?>/iphone.css"/>
<link rel="stylesheet" type="text/css" media="screen and (min-device-width:481px)" href="<?php bloginfo('template_url'); ?>/style.css" />
・16:9 の動画を元のアスペクト比でアップロードします(推奨サイズ: 1280×720)
・4:3 の動画を元のアスペクト比でアップロードします(推奨サイズ: 640×480)
WordPress Popular Postsプラグインが便利です。
サイドバーに簡単に、アクセス数の多い順で人気記事を表示することができます。
<?php query_posts(); ?> のパラメータは配列形式array() で指定することもできます。
<?php $myquery = array( パラメータ => 値, パラメータ => 値, パラメータ => 値 ); ?> <?php query_posts($myquery); ?>
パラメータや値が文字列の場合はそれぞれをシングルクォートで囲みます。
例えば、
<?php query_posts('posts_per_page = 1'); ?>
を配列形式のarray() を利用して記述すると、
<?php $myquery = array( 'posts_per_page' => 1 ); ?> <?php query_posts($myquery); ?>
最初の数件と残りの数件とで表示方法を変えるには、2つの種類の記事ループを続けて記述するとよいです。
例えば、最初の3件と、残りの7件とでループの表示方法を変える場合は以下のように記述します。
//まず最初のループ勝利を記述
<?php query_posts('posts_per_page=3'); ?>
<?php if(have_posts()): while(have_posts()):the_post(); ?>
//最初の3件の記事に対するループ処理を記述 アイキャッチ画像や概要表示など
<?php endwhile; endif; ?>
//続けて二つ目のループ処理を記述
<ul>
<?php query_posts('posts_per_page=7&offset=3'); ?>
<?php if(have_posts()): while(have_posts()):the_post(); ?>
//ここに残りの7件の記事に対するループ処理を記述 タイトルと投稿年月日のみなど
<?php endwhile; endif; ?>
</ul>