‘wordpress’ タグのついている投稿
wordpressでざっくりOGPに対応する
日記代わりにつけているブログを、さらにfacebookにリンクをシェアしている。
いままではOGP設定していなくても本文中の画像を拾ってサムネイルにしてくれていたのが、ここ最近うまく拾ってくれないので、ざっくりOGPを吐き出すようにした。
そういうプラグインもあると思うのですが
自分用のブログで、管理をスマートに分かりやすく、という風なこともなく、分かれば良いレベルなので、カスタムフィールドに直接書いたものをテンプレートに吐き出すことにする。
やることは、ページのタイトルや本文とほぼ同じ。
こういうこと。
テンプレートをちょっと直す
header.phpを直す。直したところは以下のところ。
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?> xmlns:og="http://ogp.me/ns#"> <!-- OGP対応で追加 --> <?php $image = get_post_meta( $post->ID, "IMG", true); $description = get_post_meta( $post->ID, "DESC", true); if($image) { ?> >meta property="og:image" content="<?php echo $image; ?>"> <meta property="og:title" content="<?php wp_title( '|', true, 'right' );echo "都市文化生活"; ?>"> <meta property="og:url" content="<?php echo the_permalink();?>"> <meta property="og:description" content="<?php echo $description;?>"> <?php } ?>
なんてことは無い、カスタムフィールドのOGPデータがあったら、それにそってOGPのヘッダーを出力しますよというもの。
Fiep Westendorp – フィープ・ヴェステンドルプ
Fiep Westendorp – フィープ・ヴェステンドルプ | オランダを代表するイラストレーター、フィープ・ヴェステンドルプの日本公式サイトです
http://www.fiep.jp/
サイトリニューアルのお手伝いをした。
主にトップページ回りの機能部分を担当。
このサイトの他にNEWSとブログを他ブログサービスで既に運用していて、そこからRSSを読み込んでダイジェストをトップページに表示している。
スライドショーの画像管理をwordpressの管理ページ上に追加した。スライドショーそのもののwordpressプラグインもあるが、それは使わずに画像の管理を独立して実装し、スライドショー自体はSkitterを使った。jQueryのプラグインならば何でも対応出来る。
Table of Dreams – 夢の食卓ウェブマガジン –
Table of Dreams – 夢の食卓ウェブマガジン –
http://tableofdreams.jp/
wordpressをベースにしたCMSサイト構築のお手伝いをした。
記事コンテンツと管理画面にwordpressデフォルトには無い項目を色々と付け足したり、項目の状況で表示内容を切り替えたりするロジックの追加といった具合。
その他にサイト構築のシステム周辺全般と、それまで運用していたサイトからのサーバ変更やDNS変更にまつわる雑多な対応、旧サイトから引き継ぐコンテンツのURL維持、ちょっとしたデザインの修正や追加、FacebookやTwitterへの外部サービスを利用した記事投稿など、個人事業主ですので出来る部分はさせていただきます!という内容。いつも通りといえばいつも通り。
コンテンツの中身には一切関わっていないのだけど、記事内容が大変豪華で、一読者として、うわっすごいな…と思った次第。
BSフジで毎週放送されている番組情報は定期的に追加され、それ以外のオリジナルコンテンツやイベント情報なども随時追加される。
UNIXソケットのmysqlサーバにphpMyAdminとwordpressをインストールした
指定のレンタルサーバにwordpressを設置する作業で少しだけ特殊な例に当たった。
設置するサーバが決まる前に、別のテスト環境で作ったデータを流し込む必要があり、さてサーバの用意が出来たので作業しますか、という段階でmysqlがUNIXソケット設定なのを知った。
用途がローカルからのアクセスだけであれば、UNIXソケットで全然構わないのだけど、phpMyAdminもwordpressもデフォルト設定がTCP/IP前提だったのでちょっとつまづいた。
phpMyAdminの設定
config.inc.php で
$cfg['Servers'][$i]['connect_type'] = 'socket'; //デフォルトでは tcp となっているのを変更する $cfg['Servers'][$i]['socket'] = 'UNIXソケットのファイル名';
を設定する。
wordpressの設定
wp-config.php で
define('DB_HOST', 'localhost:UNIXソケットのファイル名');
を設定する。
デフォルト設定がTCP/IPであるから、全体としてUNIXソケットであることの方が少ないのかも知れない。とはいえ設定変更はそんなでも無いので大きな問題では無かったのだけど、そういえばこういう問題があるなと思った。
山本喜平太さんのブログ
あひる社、吉本真一さんのお手伝いで、元佼成学園女子中学高等学校校長の山本喜平太さんのブログサイトを開設した。
きへいた先生と456娘 -いまどきの女子教育メソッド-
http://kiheita.com/
基本シンプルな構成で、教育に関してのテキストを定期更新していく予定。
ドラゴン桜にも紹介されたことがある先生ということで、どんな内容になっていくのか、今から楽しみだ。
wordpressの投稿記事のページ送り順
wordpress2.9.2のカスタマイズをしていて、ちょっとはまったのでメモ。
状況
- 1記事=1商品情報 という仕組みで、一括で商品情報を流し込むバッチを作成し登録。
- 個別記事ページのページング処理で、次ページ、前ページの遷移先のページが登録順をだいぶ飛ばしてしまう。
原因
遷移先のpostIDを取得する /wp-includes/link-template.php 中の get_adjacent_post で作成されるSQL文中の条件が、post_date < 現在のpostIDのpost_date という風になっており、つまり同時刻に登録された記事は遷移対象となっていなかった。
一括流し込み時には、post_date=now() にしてしまっていたため、流し込む際に同時刻での登録が多発していた。
wordpressの仕組みをすっかり忘れて登録バッチを組んでしまったという単純ミス。
対処
一括流し込みのバッチを、本日の登録記事がある場合には、その日付+1秒から、そうでない場合には、本日の00:00:00から、post_dateを+1秒しながら登録するように修正。
1日に、60秒×60分×24時間=86400件しか商品情報登録が出来ない条件が発生するものの、運用上は問題ないと判断。