Wordpressのカスタマイズで投稿ごとに違う動きをさせたい、更新時間を取得したいときなどがあります。
そんなときに、記事ごとのデータを取得する例。
$post->ID 記事のID
$post->post_name 記事スラッグ
$post->post_modified 記事の最終更新時間
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()
Add Meta tags プラグインとの比較で紹介したAll in One SEO ですが、
日本語対応について、以下のサイトで紹介してあったのでリンクします。
広告大臣 さま
最新版はどうやら日本語版オーナーさんが代わったようです。
runPHPとExecPHPというプラグインがあります。
これは投稿内でPHPコードを使えるためにするプラグインです。
セキュリティなどもあって今まで使ったことがなかったのですが、これらをwordpress MU 2.6 で試してみました。
結果
runPHP => 動きません。
記事を保存するとコードが消えてしまう。
ExecPHP=>動きません。
最初warningが出たので指示に従い、設定する。
しかし記事を保存するとコードが消えてしまう。
ExecPHPは2.6対応と書いてあったのだが、MUは対応していないということだろうか。
ワードプレスで作業していると、特定のカテゴリ以下の場合だけメニューを表示したり、条件分岐したいときが出てきます。
そんなときは、以下のようにします。
↓ここから
/* 現在のカテゴリ-の取得 */
$cat_now = get_the_category();
$cat_now = $cat_now[0];
/*親カテゴリーのID取得*/
$parent_id = $cat_now->category_parent;
↑ここまで
親カテゴリがないときは$parent_idは0になりますので注意が必要です。
サイト運営時には、最終更新日を記載したいが、毎回手動で記載するのは面倒やわぁ。
Wordpressなら最終更新情報は、
$post->post_modified
から取り出せます。(yyyy-MM-dd hh:mm:ss形式)
更新日だけを取り出すには、希望の場所(header.phpやsidebar.phpなど)に
最終更新日 : <?php echo str_replace(”-”, “/” , substr($post->post_modified, 0, 10)); ?>
などと記載を入れれば 2008/08/20 などのように表示されます。
Random Image は以前紹介したWordpress向けプラグインで、トップページなどに投稿内画像のサムネイルを表示できます。
今回は、実際に2列ずつで画像を表示する場合の設定例を記述します。
まずはプラグインを有効化し、「設定」→「Random Image」と進みます。
今回の設定項目は3つ。
1.HTML Template
→ %2
(画像のみを表示する場合)
2.Optional attributes for <img> tags
→ style=”width:130px;float:left;”
(画像の横幅を130pxに統一、これで回り込みできます。)
3.HTML between Images
→なし
上記で設定可能です。
これでsidebar.phpなどに<?php randomimage();?>を記述しましょう。
場合によってはこの記述の後に回り込み解除<br clear=”all”>等を忘れないでください。