例えば、相互リンクページなどにリンクソースを貼る場合ですが、
<a href=”http://enjoy-life-style.com/” title=”異業種交流会の情報サイト”>異業種交流会情報@東京近郊</a>
と貼る場合ですが、注意すべき点は
<
>
”
です。このうち最初の2つは、wordpressが自動で変換してくれますが、クォーテーションはなぜか全角に変換されますので自分で、HTMLモードにして記述しましょう。
例えば、相互リンクページなどにリンクソースを貼る場合ですが、
<a href=”http://enjoy-life-style.com/” title=”異業種交流会の情報サイト”>異業種交流会情報@東京近郊</a>
と貼る場合ですが、注意すべき点は
<
>
”
です。このうち最初の2つは、wordpressが自動で変換してくれますが、クォーテーションはなぜか全角に変換されますので自分で、HTMLモードにして記述しましょう。
ユーザエージェントから携帯キャリアを判別します。
$agent = $_SERVER['HTTP_USER_AGENT'];
if(ereg(”^DoCoMo”, $agent)){
}else if(ereg(”^J-PHONE|^Vodafone|^SoftBank”, $agent)){
}else if(ereg(”^UP.Browser|^KDDI”, $agent)){
}
以上
以前の記事でWordpress MU 2.6 にExec-PHPを使用して失敗したと書きました。
さて、今回はMUではない、通常のWordpress 2.6にExec-PHPのプラグインを試してみました。
方法は以下のとおり。
1. このページ よりプラグインをダウンロード
2. フォルダごと、pluginsフォルダ内にアップロード
3. 管理画面の「プラグイン」からExec-PHPを有効にする
4. ビジュアルエディタではエラーが起こるので、「ユーザ」→該当ユーザをクリック→「ビジュアルエディタを・・・」のチェックをはずしておく。
上記の設定で、無事投稿内でPHPが使えるようになりました。
ページなどに新着の見出しのみを例えば10件を表示したいときがある。
そんなときは、例えばpage.phpに以下のソースを追加する。
※以下は特定条件ifでくくった場合
<?php if(条件){ ?>
<ul>
<?php
$posts = get_posts(’numberposts=10&offset=0&orderby=post_date’);
foreach ($posts as $post) :
?>
<li><a href=”<?php the_permalink(); ?>”><?php the_title() ?></a></li>
<?php
endforeach;
?>
</ul>
<?php } ?>
あとはul,liにクラスを追加しCSSで好みのスタイルに整えてください。
get_posts()を勉強しておくといいです。
Wordpressのお問い合わせプラグインはいくつかあるがcformsⅡがおすすめ。
日本語化のページがWordpress Go Go 様にあります。
さて、このページに書いてあるセッティングをして日本語化しますが、高機能なだけに少し複雑。
そこで、今日は最低限しておくべきセッティングをメモ。
(日本語化までは成功しているとします。)
1.管理画面よりcformsⅡ→cformsⅡでまずはフォーム作成
2.「リダイレクト・メッセージ・・・」が英語になっているので日本語に直す。リダイレクトオプションは「送信が成功した後でフォームを隠す」がおすすめ
3.「フォーム管理、Eメール」オプションは、デフォルトだと「管理Emailの件名」がおかしくなるので、サイト名などを入れておくとわかりやすい
4.以上で設定更新をすると、1つのフォームができるので、必要なフォーム分繰り返す。
5.最後に「スタイリング」でフォームのcssを選択する。
そのほかの設定はお好みで。
Wordpressのカスタマイズで投稿ごとに違う動きをさせたい、更新時間を取得したいときなどがあります。
そんなときに、記事ごとのデータを取得する例。
$post->ID 記事のID
$post->post_name 記事スラッグ
$post->post_modified 記事の最終更新時間
Wordpress MU 2.6でページのパーマリンク設定ができない。
パーマリンクを上書きして、保存を押すとダッシュボードに戻ってしまう。
上記エラーはIE(Sleipnir)で発生したが、Firefoxで試したところ、問題なかった。
そういえば、WordpressはIEを正式にサポートしていない(というかブラウザと認めていない)と聞いたことがあります。
ほかにもIEでだめでもFirefoxで動く事象がある模様です。
Wordpressのトップページには、一般のページを設定することができます。
でも他のページに、デフォルトのトップページのように新着の投稿を表示したい場合がありますよね。
例えば、企業サイト等で「トップ」というページをトップページにして、新着投稿を「社長ブログ」にわける場合などです。
意外に、この方法に悩んだのですが、WP本体をあまりいじらないで対応する方法を書きます。
1.カテゴリーに「全記事」(スラッグ’blog’)を作成
2.投稿記事をすべてカテゴリー「全記事」に属させる
3.header.phpのナビゲーションなどに「社長ブログ」へのリンクをつくり、リンク先のURLをカテゴリー「全記事」のページにする。
例:
<div id=”nav”><ul><li class=”page_item”><a href=”<?php bloginfo(’url’); ?>/”>トップ</a></li><li class=”page_item”><a href=”<?php bloginfo(’url’); ?>/blog/”>社長ブログ</a></li><?php wp_list_pages(’title_li= ); ?></ul></div><br clear=”all” />
ほかに良い方法があったら是非教えてください!
Wordpress MU 2.6 画像アップロードの不具合をまた発見した。
問題は「画像のリンク先」を選ぶ場合。
「投稿のURL」ボタンを押すと、日本語で「投稿のURL」と入ってしまい、正しいURLとならない。
そのため、そのまま記事を公開するとリンク先はnot foundとなってしまうので注意。
現在は直接手打ちするしかない。
Flashでもブラウザのアップローダでも一緒。
Wordpressのテンプレートを改造しているとき、トップページの場合や個別記事の場合で表示内容を変えたいことがあります。
そんな時
トップページなら if (is_home() ) 以下同様
個別ページ is_single()
カテゴリ is_category()
(引数にカテゴリIDを入れれば特定カテゴリの制御も可。 例 if(is_category(11) || is_category(12)) )
(投稿でなく)ページ is_page()
検索結果 is_search()
アーカイブ is_archive()