Category Archives: PHP

Twitterをサイトへ表示させる方法

Twitterのタイムラインををサイトへ表示させる方法です。
ツイッターをサイトへ表示させる方法は、javascript、phpを使うなど色々な方法がありますが、いちばん簡単にできるのは、Twitterの公式のウィジェットを使用することかと思います。方法は、

① ツイッターにログイン

② 上部メニュー「設定」をクリック

③ 設定メニュー内の「プロフィール」をクリック

④ Webの横辺りにある「(あなたのWEBサイトにもTwitterを表示させよう)」 をクリック

⑤ ウィジェットを選んでくださいより、「自分のサイト」を選択

⑥ ウィジェットの用途を選択 最新ツイートを表示させるならプロフィールウィジェットを選択

⑦ 左メニューよりデザイン・サイズ・設定などのカスタマイズを行い

⑧ 「完了&コード取得」をクリック

⑨ その後、表示されたコードをコピーして、表示させたいページに張り付ければOK

簡単に取り込めてまいます。他にも、jsやphpを使った方法は下記にまとめられているので参考に。

【参考サイト】

・Twitterをサイトに組み込むチュートリアル&サンプル集

・WordPressで外部RSS(twitter等)を表示させる

・simpleXML でRSSの表示 PHP5

・Juitterを使って勉強会とTwitterを繋ぐ

blog.ao-design

wordpress カテゴリごとに月別アーカイブを表示

複数Blogの構築が出来ないwordpressでは、カテゴリごとに、記事を分けて複数Blog的な使い方をするかと思うのですが、テンプレートタグは基本的に、全体に効いてしまうので、月別アーカイブ一覧などを表示させてもすべてのカテゴリの月別が表示されてしまいます。そこで、便利なプラグインが KWEBBLE です。

Archives for a category WordPress plugin

上記よりプラグインをダウンロードし、

1. プラグインフォルダへアップロード
2. 設定→kwebbleの設定からDisable canonical URLs.にチェックをつけて、オプションを更新。(これをしないとうまく表示されないことがあるらしいです。)

<ul>
<?php wp_get_archives('cat=3'); ?>
</ul>

と表示すれば、カテゴリID3の月別アーカイブが作成されます。複数カテゴリを取得し月別アーカイブを作成する場合は、下記のように表示したいカテゴリIDをコンマで区切ります。

<ul>
<?php wp_get_archives('cat=3,4'); ?>
</ul>

また月別&カテゴリ別の記事タイトルの一覧を取得する場合は、下記で取得できます。

<?php wp_get_archives('type=postbypost&limit=5&cat=3'); ?>

カテゴリID3の記事を5件表示する。

個人的には、MTよりWordPressのほうが好きなので、複数Blog使えるようになって欲しいな。CMS的に使用したり、様々なコンテンツを管理する場合は、MTのほうが長けてるな。プラグインやUIはWordPressのほうが、いいと思いますが。しかもフリーだし。w  かなりお世話になってます。
ではでは。

blog.ao-design

wordpress カテゴリ別テンプレート

wordpressでカテゴリごとに違うテンプレートを適応させたい場合。デフォルトのテンプレートcategory.phpに分けたいカテゴリのIDを追加するだけで作成されます。

カテゴリID = 1 =  category-1.php
カテゴリID = 2 =  category-2.php

すごく簡単ですね。ただこれで作成されるのは、各カテゴリの一覧画面のみで、各カテゴリの記事ページもテンプレートを分けたい場合は、single.phpも編集する必要があります。

<?php if (in_category('1')): ?>

カテゴリー1の時の出力

<?php elseif (in_category('2')): ?>

カテゴリー2の時の出力

<?php else: ?>

その他のカテゴリーの時の出力

<?php endif; ?>

カテゴリ事にsingle.phpのテンプレート自体を分ける場合は


<?php
 $post = $wp_query->post;
 if ( in_category('1') ) {
 include(TEMPLATEPATH . '/single-1.php');
 } elseif ( in_category('2') ) {
 include(TEMPLATEPATH . '/single-2.php');
 } else {
 include(TEMPLATEPATH . '/single.php');
 }
 ?>

と記述して各テンプレートを用意します。
wordpressも複数Blog使えるようになって欲しいなぁ。

blog.ao-design

MovableType4.2 php化 出力 パーミッション変更

MovableTypeをPHP化して使用する場合、出力されるファイルの属性がディレクトリは[777]、ファイルは[666]で出力される為、サーバーによっては、そのファイルを閲覧できない場合があります。エックスサーバーでは500エラーになり閲覧できなく、サーバー側の設定も変えれないとのことですが、mt-config.cgiに下記のソースを加えるだけで解決します。下記のソースを加えると、ディレクトリ[705]、ファイル[705]で出力されます。
ただし、もう既に出力されているファイルは手動で変更する必要があります。

DBUmask 0072
HTMLUmask 0072
UploadUmask 0072
DirUmask 0072

HTMLPerms 0705
UploadPerms 0705

でも何で、MTはデフォルトが[777][666]で出力されるようになっているんだろう。。

blog.ao-design

wordpress 多言語プラグイン [qTranslate] その2

[qTranslate]
はなかなか便利なプラグインですが、header.phpやfooter.phpも言語ごとに切り替えたい場合
index.phpやheader.phpの中で言語ごとにif文などで切り分ければいいのですが、
その場合、現在、何の言語が選ばれているかを取得するには[qTranslate]内の下記の関数で
取得できます。

qtrans_getLanguage();

これで取得した言語ごとに切り分ければタイトルや、共通テンプレート内も言語ごとの
切り分けが可能になります。

$q_config = qtrans_getLanguage();
if($q_config == "ja") { echo '日本語のものを表示'; }
else if($q_config == "en") { echo '英語のものを表示'; }
else if($q_config == "fr") { echo 'フランス語のものを表示'; }
?>

その他、言語のコードはqtranslate.php内に記述されているので
そこで見ることができます。
qTranslateで簡単に他言語展開できますね。

blog.ao-design

wordpress 多言語化プラグイン [qTranslate] その1

wpでBlogやサイトを他言語化する際に便利なプラグイン[qTranslate]
使用方法は、[qTranslate]よりダウンロードし解凍したファイルをpluginフォルダへアップ。
その後、pluginを有効にし、設定画面より必要言語を追加します。

日本語に関してはそのままでは、管理画面が日本語にならないので、
languagesフォルダへja.moをコピーしてファイル名をja_JP.moに変更しアップすれば管理画面も日本語になり使用可能です。

記事投稿画面の上に、言語切り替えパネルができるなど便利。

出力は表示させたい部分へ

<?php qtrans_generateLanguageSelectCode("image"); ?>

と入力。<ul><li>形式で書き出されます。
テキストで表示したい場合は、上記ソースのimage→textに変更。
両方表示したい場合は、bothを入力。

プラグイン使用後、日付表示がおかしくなるようなので、
設定→Launguages→Advanced Settingsを開いてDate / Time Conversionを
3番目のUse strftime instead of date.にチェックを入れると解消されるらしい。。
ですが、なぜか僕の環境では改善しなかったので、
4番目のUse strftime instead of date and replace formats with the predefined formats for each language.に
チェックボックスを入れ、index.phpなどテンプレートファイルの日付表示部分の関数をthe_timeからthe_dateに変更。
これで、Launguages画面の各言語の設定で指定した日付表示に改善されました。
言語ごと分けられるのいいですね。

なかなか便利なプラグインです。
他プラグインとも相互性が強くなればもっとよくなりそうですが。

関連サイト:
qTranslate
GIMLET online F1 - qTranslate 導入メモ
saqoosha.net – WordPress でマルチリンガルなサイトを作るの巻

blog.ao-design

wordpressでphpを記事に投稿する方法。 runphp

wpで記事内にたまーにPHPを書きたくなることがあります。
しかし、そのまま書いてしまうとコードのまま書き出されてしますのでrunphpというプラグインを
追加すると、記事内にPHPを投稿し呼び出すことができます。

使用方法は、下記サイトよりプラグインをダウンロード
pluginフォルダに追加後、pluginを有効に。

設定→投稿設定の 「:-) :-P のような顔文字を画像に変換して表示する」の
チェックを外しておくのと、ユーザー→プロフィールのビジュアルエディタを使用しないに
チェックボックスを入れておく必要があります。

runphp

blog.ao-design

Magpie RSS RSSフィードで日付取得できない

RSSやATOMのフィードを表示させる方法としてMagpie RSSを仕様する方法がありますが
日付も同時に取得し表示される方法としてMagpie 0.72より$item['date_timestamp']という

参照方法が使えるようになりました。

しかし仕様するRSSやATOMによって配列キーが異なるため、この参照方法では日付が取得できず
1970年01月01日のように表示されてしまいます。

解決方法としては$item['date_timestamp']の部分をRSSやATOMで使用されている配列キーに変換します。

例えばWordPressを仕様時の場合は

$date_str = date(“m月d日 ”, $item['date_timestamp']);

$date_str = date(“m月d日 ”, strtotime($item[pubdate]));

に変換することによって取得できるようになります。
PHPにあまり詳しくないので結構ハマってしまいましたが解決策の記事がなかったので

残しておきます。

blog.ao-design