このページの本文へ

フロントエンドエンジニアのblog

有限会社Willさんいん

このページの位置: home カテゴリー: その他 2ページ目

“その他” カテゴリの記事(11件)

ディレクトリ配下の MS Office の一時ファイルを一括削除

この記事は2016年6月14日に書かれたものです。情報が古い可能性がありますのでご注意ください。

Word や Excel などの Office ファイルを開くと、“~$ファイル名.xlsx” といった “~$” から始まる名前の一時ファイルが作られます。通常はファイルを閉じるとこの一時ファイルは消えるのですが、外部のサーバに保存してあるファイルを開いた場合などに、一時ファイルが残ったままになることがあります。

これは、Office 2010 以降の「保護されたビュー」が標準で有効になっていることが影響しているようですが、これを無効にすると当然セキュリティが甘くなってしまいます。

今回、WebDAV 機能が使えるレンタルサーバを使って複数人でファイルを共有する案件があり、それぞれに WebDAV アカウンントを作成して、Windows エクスプローラーのネットワークの場所に各自の共有フォルダへのアクセスを設定してもらいました。

そして、運用してみると案の定上記の一時ファイルが残ったままになってしまいました。少しなら都度削除してもらうなどしてもらえばよいのですが、同じファイルを開くたびに “~$~$ファイル名.xlsx” のように一時ファイルが増えていき、非常に邪魔な存在になります。

Excel の一時ファイルが残ったフォルダのスクリーンショット

クライアントからも「何か解決法はないですかね?」といった相談を受けていたので、一時ファイルを一括削除するプログラムを PHP で作り、cron を使って定期的に実行するようにしてみました。

“ディレクトリ配下の MS Office の一時ファイルを一括削除” の続きを読む »

Movable Type で記事を先頭に固定表示

この記事は2015年7月21日に書かれたものです。情報が古い可能性がありますのでご注意ください。

WordPress の投稿には、公開状態に “この投稿を先頭に固定表示” というオプションがあり、チェックした投稿は、メインページなどの投稿の一覧で常に先頭に表示されます。

一方、Movable Type にはこのような機能はありませんので、同様のことをしようとするなら、カスタムフィールド等を使って実装する必要があります。

チェックボックス型のカスタムフィールドを使って先頭に固定表示のフィールドを追加し、メインページテンプレート等で、記事の一覧を出力する前にチェックされた記事の一覧を出力すればよいわけですが、単に出力しただけでは1ページに表示する記事の件数がチェックした記事の件数分増えてしまいます。

そこで、チェックされた記事が複数あっても、一覧に表示される記事の総件数が変わらないようにしてみます。

“Movable Type で記事を先頭に固定表示” の続きを読む »

続・jquery.neosmart.fb.wall を導入しました

この記事は2015年4月16日に書かれたものです。情報が古い可能性がありますのでご注意ください。

昨日導入した、jquery.neosmart.fb.wall ですが、2点ほど問題がありました。その1つはセキュリティ上の問題でもあります。

1つ目は、25人を超える「いいね!」がある投稿に対して、「いいね!」数が25までしか表示されないことです。これは、Graph API がデフォルトで25しか「いいね!」した人を表示しないのが原因とのことで、jquery.neosmart.fb.wall.js の61行目を、

url: graphURL+o.id+'/'+type+'?limit='+o.max+'&likes.limit=200&access_token='+o.accessToken',

のように、likes.limit=いいね!の上限数 というパラメータを追加することで解決しました。(参考:永遠少年症候群 | fb.wallメモ最終版

2つ目は、Facebook のアクセストークンを取得してこのスクリプトに設定するのですが、このアクセストークンを HTML か JavaScript に記述するため、誰にでもアクセストークンが見えてしまうこと。アクセストークンがあれば Facebook ページの非公開にしている情報までもが取得できてしまいます。

開発を終了した fb.wall のサイトにも「安全な方法でアクセストークンを提供することができなかった」といった内容の記述があります。これが開発終了の理由なんですね。

Since 2010 Facebook changed their Graph API a lot of times, they added server request limits and the need of access tokens. With a pure JavaScript solution it was not possible to provide access tokens in a safe way. Therefore we developed neosmart STREAM.

“続・jquery.neosmart.fb.wall を導入しました” の続きを読む »

jquery.neosmart.fb.wall を導入しました

この記事は2015年4月16日に書かれたものです。情報が古い可能性がありますのでご注意ください。

このサイトのトップページに、Willさんいんの Facebook ページの投稿を表示するため、公式プラグインの Like Box を使用していました。

ところがこの Like Box、6月23日に廃止となり使えなくなるとのことで、新しい Page Plugin に移行するよう勧められています。

With the release of Graph API v2.3, the Like Box plugin is deprecated and will stop working on June 23rd 2015. Use the new Page Plugin instead. The Page Plugin allows you to embed a simple feed of content from a Page into your websites.

しかし、この新しい Page Plugin は、表示幅が 280px から 500px の間に制限されています。このサイトのトップページのレイアウトは、Facebook 表示領域を PC 画面で624px に設定しているため、124px もの余白ができてしまいます。

また、Like Box にしろ、Page Plugin にしろ、JavaScript で読み込んで表示しますが、実質はインラインフレームの中で facebook.com のページを表示していますので、フォントサイズや色などを CSS でコントロールすることが出来ません。その上、フォントサイズが 13px などに固定されているため、Internet Explorer では文字のサイズを変更できないことも気になっていました。

“jquery.neosmart.fb.wall を導入しました” の続きを読む »

アイテムのアップロード先フォルダ選択時のディレクトリ設定

この記事は2015年2月6日に書かれたものです。情報が古い可能性がありますのでご注意ください。

Movable Type で画像やファイルをアップロードする際の、デフォルトのアップロード先を任意のディレクトリに設定するカスタマイズについては、様々なブログ等で紹介されています。”MTディレクトリ/tmpl/cms/include/asset_upload.tmpl” を “MTディレクトリ/alt-tmpl/” 以下にコピーして、先頭に以下のように追記するというものです。

“uploads” というディレクトリに設定する場合は

<mt:setvar name="extra_path" value="uploads">

“uploads/年/月/日” というディレクトリとする場合は

<mt:setvarblock name="extra_path">uploads/<$mt:date format="%Y/%m/%d"$></mt:setvarblock>

ブログ毎に設定を変える場合は

<mt:If tag="BlogID" eq="2">
<mt:setvarblock name="extra_path">uploads/<$mt:date format="%Y/%m/%d"$></mt:setvarblock>
<mt:Else>
<mt:setvar name="extra_path" value="uploads">
</mt:If>

という感じです。これでデフォルトのアップロード先が設定されます。

しかし、アップロードの際にフォルダ(ウェブページで設定したフォルダ)を選択すると、せっかく設定したアップロード先が消えてしまい、フォルダ名のみとなってしまいます。これではそのフォルダに属すウェブページの html ファイルと同じディレクトリに画像がアップロードされてしまい、予めアップロード先を設定した意味がありません。

“アイテムのアップロード先フォルダ選択時のディレクトリ設定” の続きを読む »

1 2 3

page top