adrufさんのブログ

投稿時間をunixtimeに変換する

とあるCMSからの移管で必要になって、投稿時間からunixtimeに変更する方法を検討。

<?php $post_time = strtotime(the_date('Y-m-d H:i:s', '', '', false)); ?>

これで変換できます。
srttotime()はphpの標準関数ですので、不明点があればphpの仕様を確認しましょう。(こちら)

似たような関数としてthe_time()がありますがこれは結果をphpに戻せないのでNGです。

カテゴリースラッグ名を取得する

とあるオリジナルブログからWordpressへコンテンツを移行する際にカテゴリー毎にサイドバーを変更する必要があったので調査。

方法としてはカテゴリースラッグを使って読み込むサイドバー(今回はwidgetではなく独自のサイドバー)のソースを入れ替えるというもの。

カテゴリースラッグの取得は

<?php
$cat = get_the_category();
$cat_name = $cat[0]->category_nicename;
?>

これだけで出来ます。
これを必要な部分(今回はサイドバーの読込)で使います。

<?php @include(TEMPLATEPATH . '/_sidebar-' . $cat[0]->category_nicename . '.php'); ?>

スラッグでなくIDを使ってもよいのですがわかりづらいのでスラッグで。

Windowsでサービスを手動削除(XP,2003)

とあるソフトをアップデートした際、サービスがうまく削除されなかったため手動で削除する方法を探しました。

以下その方法です。

1.コマンドプロンプトを開く
  スタートメニューから「ファイル名を指定して実行」を選び「cmd」と入力。

2.サービス登録の確認
  C:\WINDOWS\system32\sc query [SERVICE_NAME]」と入力しサービスが登録されている事を確認。

3.サービスの削除
  C:\WINDOWS\system32\sc delete [SERVICE_NAME]」と入力して削除。

以上XPでの削除方法ですが、2003でも同様に削除可能です。

WordPress 2.0.11 を 2.2.3 へアップデート

サイトマップファイルを簡単に管理できるようにするため
とあるWordPressMeのサイトをバージョンアップすることにしました。
バージョンは 2.0.11 から 2.2.3 となります。

そこで出会った様々な問題を備忘録としてまとめておこうと思います。

まず、バージョンが大きく異なるわけですが、
日本のWordPressMe本家ではかる~く、ファイルを上書きして
アップデート処理をすれば大抵は問題ないと記載されていました。
それを信じてそのまま実行したわけですが。。。

確かに動くことは動くのですが、管理画面のメニューなどが英語に
なってしまいましたT-T
ネットでさくっと調べたところ
WordPressMEをアップデートしたら管理画面が英語になってしまった場合の対処法は?
というまさにビンゴな感じのコンテンツがあったので参考にして
変更を加えてみましたが結果はNG。。。

結局問題の根幹は設定ファイル(wp-condig.php)の設定内容でした。
2.2.3にあわせて設定をしないといけなかったのです。
(言語設定関係が変わってますね)

普通なら当然設定ファイルはチェックするべきところではありましたが
「単純に上書きして動く」という案内に見事にだまされたわけです><

とうことで上記2つの対策をしたら無事管理画面も日本語となりました。

squirrelmailの認証処理に不具合???

とあるシステムでWebmailが使いたいと言うことで
squirrelmailを導入したのですが、認証が不安定な状況に。。。

システムとしては

・OS  CentOS4.6
・MTA postfix
・SMTP Courier-imap

でバーチャルドメイン(postfixadmin)運用。
さらにMaiaMailguardでスパム、
ウィルス対策(spamassassinとclamav)をしています。

まぁこれだけいろいろなシステムが絡み合うと、
それなりに調整する必要は出てくるわけですが、
今回の場合は認証方法がそれにあたりました。

セキュリティー的には良くないのでしょうが、
最終的にはPlainTextで認証処理をするように設定しました。

当初は特に問題なく動いていたのですが、
いつの間にかsquirrelmailにログインできなくなる問題が発生。
しかも確実にNGな訳ではなくかなり低確率ではあるものの
ログインできる場合もあるのです。

はじめはブラウザ等クライアント側を疑ったのですが
原因がなさそうだったので、少し気合いを入れて調査してみました。

すると。。。
squirrelmailのパスワード処理に不具合がっぽいものを確認。
パスワードを暗号化して復号化する際に、元のパスワードに戻らないのです^^;
ランダムデータとbase64にて暗復号化をしているのですが
この処理方法がどうやら問題ありのようです。。。

ということでこの暗復号化処理を間違いなく実行できるように変更。
この修正を実施後は問題なく動作するようになりました^^

具体的な修正内容については・・・
あまりにもやっつけな方法なので公開できません(ぉぃ
もう少し修正方法を検討してみて、良い方法が見つかったら
公開させていただこうと思います m(_ _)m

# ネットで検索しても困っている人はいないようなので
# 多分必要のない情報でしょう^^;

コンテンツの配信