検索結果をPHP化【MT】

MTでは、テンプレートをPHP化してパーツに分けるとメンテナンスしやすいし、出来ることの幅が広がるし、何より再構築時の高速化が図れて便利です。

しかしこの場合、困るのが検索結果などのシステムテンプレート。

これはcgiで使用されるため、PHPを記述してもそのPHPは動作しません。

どうしたもんかなぁ・・・と悩んでいたところ、やはりそのように考える方はいらっしゃるようで、検索結果でもPHP化できるプラグインが開発されてました。

プラグインのダウンロードは、毎度お世話になっている「The blog of H.Fujimoto」さんのサイトから。

コメント/検索関連テンプレートのPHP化(その1) - The blog of H.Fujimoto

くわしい設置方法はこちらのサイトを参考にしました。

タグ検索結果をPHP化してURLを変更する/Movable Type4 - SANRIDE STUDIO blog | WEBデザイン&コンサルティング

nandani | 2011年03月01日 | コメント(0) | トラックバック(0) | CMS関連 | PHP関連

コメントを投稿できませんでした。エラー: 不正な要求です。【MT】

かなりつまったのでメモ。

最近はコメントフォームを設けるケースが少なかったので、やり方をすっかり忘れてました。

コメントを投稿しても

コメントを投稿できませんでした。エラー: 不正な要求です。

のエラーが続出。

なんでだー!と頭をかいていたら、こちらのサイトに答えが書いていました。

MTで「コメントを投稿できませんでした。エラー: 不正な要求です。」 : WEBクリエイターのメモ帳

答えは「mt.js」

これまでは(コメントを設けるケースが無かったので)特に必要としておらず、大抵の場合は削除しており、今回も疑いなく削除してました・・・

しかし、コメント欄を設ける場合は、かならずサイトのhead内に

<script type="text/javascript" src="<$mt:Link template="javascript"$>"></script>

をつける必要があるので注意しましょう。(※テンプレート名を変えている場合は任意に変更して下さい)

jQueryとprototype.jsを同時に使用する場合

メモ

少々手間ですが、以下のサイトのようにするとうまくいきます。

jQueryとprototype.jsを共存させる方法 | CSS Lecture

nandani | 2011年02月22日 | コメント(0) | トラックバック(0) | JavaScript関連

MT5.1ベータ版公開!

MTのサイトを覗いてみたら、MT5.1ベータ版が公開されていました。

まだ全然試してませんが、以下の機能が追加されているそうです。

  • カテゴリー、フォルダの並び替え
  • 一覧画面のソートやフィルタ機能の強化と、Ajaxによる速度向上
  • 投稿画面のユーザビリティ向上
  • マルチブログ環境でのテンプレート編集と、MTタグの強化
  • Internet Explorer 8, Safari 最新版, Firefox 最新版をサポート

「カテゴリー、フォルダの並び替え」はようやくか・・・って感じですね。

とりあえずテストサーバに放り込んで試してみよっと^^

nandani | 2011年02月15日 | コメント(0) | トラックバック(1) | CMS関連

fopenをURLで設定可能にするためのhtaccess記述方法

サーバによって、fopenはURLで開けなくなっています。

そのような場合は、htaccessに

php_flag allow_url_fopen on

と記述してみましょう。

すべてのサーバでうまくいくとは限りませんが、少なくともファーストサーバではうまくいきました。

PIE version 1.0 beta3

いつくらいに更新されたのか正確にはわからないんですが、去年の年末あたりにPIEが更新されていたようです。

具体的な変更点はまだ調べてませんが、レイアウトの崩れがなくなった代わりに、印刷ではCSS3が表現されなくなりました。

というか、印刷プレビューを開くとスクリプトエラーが・・・(でも出ない場合もある、この差がわからない・・・)※beta4でこの問題点は改善されました。

それでもレイアウトが崩れない分、beta3の方が使えそうなので、当ブログのPIEはこちらに差し替えました。

ついでにbeta2の印刷時のレイアウト崩れがどれくらいひどかったかというと、こちら

上記のサンプル画面で印刷プレビューを見てみてください。

PIEのダウンロードはこちらから

nandani | 2011年02月05日 | コメント(0) | トラックバック(2) | CSS関連

サブウィンドウをフルスクリーンで表示する【Javascript】

Javascriptでサブウィンドウをフルスクリーンで表示する場合は以下のように記述します。

window.open("url", "subWindow", "fullscreen=yes");

3つ目の引数にfullscreen=yesを入れればOKです。

ただし、このfullscreenはIEでしか使用できません。(サンプル
上のサンプルを試していただければわかりますが、Firefoxなどでは普通のサイズで表示されてしまいます。

そこで、ディスプレイのサイズを取得し、そのサイズで開くという風にします。

var sw = screen.width;
var sh = screen.height;
window.open("url", "subWindow", "left=0, top=0, width="+sw+", height="+sh);

ディスプレイサイズの取得方法はこちらのサイトを参考にしました。

ディスプレイ(画面)の横幅・高さを得る - JavaScript TIPSふぁくとりー

これで、FirefoxやSafariでもフルスクリーンの大きさで表示してくれます。(サンプル

nandani | 2011年02月02日 | コメント(0) | トラックバック(0) | JavaScript関連

アクセス解析プラグイン「StatPress Reloaded」【WordPress】

WordPressのアクセス解析用プラグイン「Stat Press Reloaded」を入れてみました。

インストール方法はいつものように

  1. ダウンロードサイトからデータを入手
    http://wordpress.org/extend/plugins/statpress-reloaded/
  2. 解凍する。(解凍すると「statpress-reloaded」フォルダができます。)
  3. 「wp-content/plugins/」フォルダに、解凍したフォルダごとアップロードする。
  4. WordPressの管理画面に入り、「プラグイン」画面にて「StatPress Reloaded」を有効にする。

以上です。

日本語化する場合は、こちらのサイトからダウンロードしてください。

【WordPress】「StatPress Reloaded」の日本語化ファイル公開 | ECWorks Blog

解凍すると、StatPress Reloadedの時と同様に「statpress-reloaded」フォルダができますので、そのまんま「wp-content/plugins/」フォルダにアップロードしてください。

これで日本語化されますが、場合によってはファイル名を変更しなくてはならない場合もあります。

「wp-content/plugins/statpress-reloaded/locale/」フォルダの中にある

  • statpress-ja_JP.mo
  • statpress-ja_JP.po

をそれぞれ、_JPを取って

  • statpress-ja.mo
  • statpress-ja.po

に変更してください。

これで日本語化も完了です。

見た目はこんな感じ↓

リアルタイムで更新されるし、見た目もわかりやすいし、かなりいい感じです♪

注意点として、アクセスログはデータベースに蓄積されるため、設定をうっかり忘れると膨大な量のログが永遠にたまっていくことになります。

プラグインを入れたら、すぐにWordPress管理画面左下にある、「StatPress>オプション」にてログの削除期間を設定してください。

 

【追記】

注意点2。

デフォルトだとOS集計のグラフで「Windows7」が「Windows NT 4」の方に集計されてしまうバグがあります。

解決方法はこちらのサイトをご覧ください。

StatPress-ReloadedでWindows7がNT4と表示されて困る | ハルカゼオンライン

nandani | 2011年01月28日 | コメント(0) | トラックバック(6) | CMS関連 | PHP関連

cakePHPの初期設定【オールグリーンにする方法】

久しぶりにCakePHPを導入したらすっかり設定方法を忘れていたのでメモ。

CakePHPを設置して、未設定のままアクセスすると必ずイエローで表示されてしまう部分があります。

1つは「app/config/core.php」の設定、もう1つは「app/config/database.php」の設定を変更する必要があります。

 

app/config/core.php

まずは「app/config/core.php」から。このファイルをテキストエディタで開き、以下の2か所の設定を変更します。

  • Security.salt
  • Security.cipherSeed

「Security.salt」は適当な英数字の文字列、「Security.cipherSeed」は適当な数字の文字列を設定してください。

両方なんでもかまいません。

適当にキーボードを叩いてください。

 

app/config/database.php

次に「detabase.php」。「app/config/」フォルダの中にある「database.php.default」ファイルの名前を「database.php」に変更してください。

「database.php」をテキストファイルで開き、「class DATABASE_CONFIG」の「$default」部分を、使用するデータベースの設定に変更してください。

例)ローカルホストの場合

 var $default = array(
  'driver' => 'mysql',
  'persistent' => false,
  'host' => 'localhost',
  'login' => 'root',
  'password' => '',
  'database' => db_name',
  'prefix' => '',
 );

これですべてオールグリーンとなります。

nandani | 2011年01月27日 | コメント(0) | トラックバック(0) | PHP関連

SWFUploadをとりあえず動かす!

Flashとjavascriptを利用して、複数のファイルを一気にアップロードすることができる「SWFUpload」

とりあえず動けばいいとの考えのもと、設置方法の手順を記述します。

 

SWFUploadをダウンロードする。

SWFUploadサイトからファイルをダウンロードしてください。

(ダウンロードページはこちらになります。)

ダウンロードページにはいろいろとファイルがリストされていますが、
SWFUpload v××× Samples.zip
をダウンロードしてください。(×××はバージョンナンバーです。ちなみに自分がダウンロードしたファイルはv2.2.0.1でした。)

 

サーバに設置する。

ダウンロードしたファイルを解凍してください。「SWFUpload v××× Samples」というフォルダができます。このままでは長いので適当にフォルダ名を変えてください。ここでは「swfupload」と名前を変えたことにします。

これをフォルダごと、サーバにアップロードしてください。

 

デモを実行する。

ブラウザにて、「http://○○○/swfupload/demos」にアクセスしてください。(○○○はドメイン名です。)デモ一覧が表示されます。

ここでは一番シンプルな「Simple Upload Demo」を変更していきます。

「Simple Upload Demo」を開くと以下のような画面になります。

この画面で「Hello」ボタンを押すと、アップロードするファイルを選択するウィンドウが開きます。このウィンドウで複数ファイルを選択できるので、ファイルを選択してください。

選択後、「開く」ボタンを押すと、すぐにアップロードが始まります。

アップロードの進行状況は「Upload Quere」のところで確認できます。

すべてCompleateになったらアップロード完了です。

が!

どこ探してもアップロードされたはずの画像が見つからない!

それもそのはず。

デモではあくまで動作が見れるだけあって、実際にアップロードされているわけではないからです。

ではアップロードするためにはどうすればよいのか。

 

「upload.php」を修正する。

「swfupload/demos/simpledemo」フォルダの中にある「upload.php」をテキストエディタで開いてください。

現時点では「upload.php」とは名ばかりのプログラムです。

このプログラムに以下の記述を追加してください。

exit(0);の前に

$upload_path = "アップロード先のパス";

// Handle the upload
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"],
    $upload_path . $_FILES["Filedata"]["name"])) {
    header("HTTP/1.0 500 Internal Server Error");
}

なお、このプログラムは「cronos feed 2.0::SWFUploadを使ってみる」からいただきました。

$upload_path = "アップロード先のパス"; はアップロード先のフォルダを設定しています。ここで記述したパスと同じ場所にアップロードフォルダを作成してください。(パーミッションに注意)

これで無事複数アップロードするようになりました。

Copyright(c) 2010 - 2024 ダリの雑記