2010年6月 Archive

encodeURIComponent術を使って、検索キーワードを日本語でリンクする

フューチャーショップでサイトを構築していたところ、
カテゴリーやグループ以外に、
キーワード検索を使って、
タイプ別、色別や用途別などリンクを張りたいとき。

keyword=検索ワード

としたいのに

keyword=%8C%9F%8D%F5%83%8F%81%5B%83h

どうしても↑こういう風に記述する羽目になります。。。

これでは、
合っているのか間違っているのか、見直せませんし、
リンクを作るときも、いちいちソースを変換しないといけません。

10個程度までなら許せますが、
50個、100個となったらリンク張りだけで夜がふけます┐(・ε・`)┌


そんなとき、
ちゃんとencodeURIComponent術を使いましょう。

<a href="javascript:;" onclick="location.href='http://xxxxx.com/fs/xxxxx/GoodsSearchList.html?_e_k='+encodeURIComponent('A')+'&keyword='+encodeURIComponent('検索ワード');">検索ワード</a>

これなら、日本語なので、
HTMLソースを見ただけで分かります♪

future shop以外でも、使えるかもしれませんね。

期間限定ものに対する3つの方法

webサイトに、期間限定ものってつきものですよね。
「いつものバナーではなく、限定バナーを挿入する」とか、
「いつもある検索BOXを隠して、代わりに限定HTMLソースを挿入する」とか。

一定期間、公開が終わると、前の状態に戻すよっていう場合、
どんなふうにHTMLソースを扱っていますか?
方法はいくらでもあると思います。


(1)コメントアウト<!-- -->タグで隠す
(2)HTMLをバックアップして、隠すものはHTMLソースから削除
(3)div要素にstyle="display:none;"で非表示にする"

どれでもいいようで、
時と場合により、使い分けのセンスって大切。

»続きを読む

ディレクトリのファイルの一覧表示してくれるphp

サイトのサーバに、大量にディレクトリやファイルを設置していて、一覧をテキストとして出力したいよ!!っていうときに、超便利。

参照元:ディレクトリのファイルを一覧表示 - PHP/データベース ありがとうございますm(_ _)m

sample-tagの中を一覧してみました。
人に見せる用というよりは、
自分の管理用・チェック用という感じですね。
でも、これカスタムしまくったら、サイトマップページとか、
生成できちゃうんじゃないでしょうか?( d ▼ω▼ )

<?php
$rep = 1; // 最終更新日(表示=1 非表示=0)
$sze = 1; // ファイルサイズ(表示=1 非表示=0)
$lst = "./list"; // 表示するリストの名前(パス)

$drc=dir($lst);
print("<OL>");
while($fl=$drc->read()) {
  $lfl = $lst."/".$fl;
  $din = pathinfo($lfl);
  if(is_dir($lfl) && ($fl!=".." && $fl!=".")){
    print("<LI>".$din["basename"]."<FONT size='-1'> (ディレクトリ)</FONT></LI>");
  } else if($fl!=".." && $fl!=".") {
    print("<LI>");
    print("<a href=".$lst."/".$fl.">".$fl."</a>");
    // ファイル更新日
    if($rep == 1 || $sze == 1) print("<FONT size='-1'> (");
    if($rep == 1) echo date("m/d",filemtime($lfl));
    if($rep == 1 && $sze == 1) print(", ");
    // ファイルサイズ
    if($sze == 1) echo round(filesize($lfl)/1024)."KB";
    if($rep == 1 || $sze == 1) print(")</FONT> ");
    print("</LI>");
  }
}
print("</OL>");
$drc->close();
?>

Movable typeでカテゴリ別記事リストjs

Movable typeでカテゴリ別記事リストjsを生成するときのメモ。

アーカイブテンプレートで、
「ブログ記事リスト」を新規作成。

■名称

カテゴリ別記事リストjs

的な。


■ソース

document.write('<ul>\n');
<mt:Entries>document.write('<li><span class="date"><$MTEntryDate format="%y/%m/%d"$></span><span class="entry_title"><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></span></li>\n');</mt:Entries>
document.write('</ul>\n');

■アーカイブマッピング

%-c/%I.js

/blog/catXXX/index.js
こういう感じのjsが出来上がります。

■用途
htmlページにscriptタグで貼り付ければ、カテゴリに特化した記事リストが表示できます。

Movable typeでカテゴリ別RSS

Movable typeでカテゴリ別RSSを配信するときのメモ。

アーカイブテンプレートの
「ブログ記事リスト」を新規作成

■名称

カテゴリ別RSS
的な。

■ソース

<$mt:HTTPContentType type="application/atom+xml"$><?xml version="1.0" encoding="<$mt:PublishCharset$>"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title><$mt:ArchiveTitle$> - <$mt:BlogName remove_html="1" encode_xml="1"$></title>
<link rel="alternate" type="text/html" href="<$mt:BlogURL encode_xml="1"$>" />
<link rel="self" type="application/atom+xml" href="<$mt:Link template="feed_recent"$>" />
<id>tag:<$mt:BlogHost exclude_port="1" encode_xml="1"$>,<$mt:TemplateCreatedOn format="%Y-%m-%d"$>:<$mt:BlogRelativeURL encode_xml="1"$>/<$mt:BlogID$></id>
<updated><mt:Entries lastn="1"><$mt:EntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></mt:Entries></updated>
<mt:If tag="BlogDescription"><subtitle><$mt:BlogDescription remove_html="1" encode_xml="1"$></subtitle></mt:If>
<generator uri="http://www.sixapart.com/movabletype/"><$mt:ProductName version="1"$></generator>
<mt:Entries lastn="15">
<entry>
<title><$mt:EntryTitle remove_html="1" encode_xml="1"$></title>
<link rel="alternate" type="text/html" href="<$mt:EntryPermalink encode_xml="1"$>" />
<id><$mt:EntryAtomID$></id>

<published><$mt:EntryDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></published>
<updated><$mt:EntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></updated>

<summary><$mt:EntryExcerpt remove_html="1" encode_xml="1"$></summary>
<author>
<name><$mt:EntryAuthorDisplayName encode_xml="1"$></name>
<mt:If tag="EntryAuthorURL"><uri><$mt:EntryAuthorURL encode_xml="1"$></uri></mt:If>
</author>
<mt:EntryCategories>
<category term="<$mt:CategoryLabel encode_xml="1"$>" scheme="http://www.sixapart.com/ns/types#category" />
</mt:EntryCategories>
<mt:EntryIfTagged><mt:EntryTags><category term="<$mt:TagName normalize="1" encode_xml="1"$>" label="<$mt:TagName encode_xml="1"$>" scheme="http://www.sixapart.com/ns/types#tag" />
</mt:EntryTags></mt:EntryIfTagged>
<content type="html" xml:lang="<$mt:BlogLanguage ietf="1"$>" xml:base="<$mt:BlogURL encode_xml="1"$>">
<$mt:EntryBody encode_xml="1"$>
<$mt:EntryMore encode_xml="1"$>
</content>
</entry>
</mt:Entries>
</feed>


■アーカイブマッピング

%-c/%I.xml

例:/blog/catXXX/index.xmlといった感じのRSSが出来ます。

Dreamweaverの「現在のエンコーディングではドキュメント内のすべての文字を正しく保存できません。云々・・・」に一瞬で対処

現在のエンコーディングではドキュメント内のすべての文字を正しく保存できません

現在のエンコーディングではドキュメント内のすべての文字を正しく保存できません。云々・・・

Wordや異なる文字コードの文書から原稿・テキストをコピペするとき、
Dreamweaverに、このように拒まれた経験は結構あると思います。

そのとき、どの部分が拒まれているのか、
一瞬で見つける方法。


現在のエンコーディングではドキュメント内のすべての文字を正しく保存できません の一瞬の対処法


とりあえず、ブラウザで閲覧しましょう。

正しく保存されていない場合の多くは、
半角「?」になっています。
半角「?」でページ内検索すれば、一瞬で分かります。

ソースを別のエディタにコピーとかコードを変更して保存とかしていると、
化けた原稿がさらに変形していく危険性もありますし、
エラーがなくなったからといって、本当に原稿に忠実にコピーできているのか、ちょっと不安です。

問題が生じたら、その都度、原因の核心部分を突きましょう。

absmiddleについて

align="absmiddle"

って使用しないほうがいいとかいうけど、
IEだけで、Firefoxでは効かないと思ってたんだけど、
効きます?もしかして。

文中に画像が入るときって、やっぱりこの属性欲しいですね。

font-familyをArialにしたいのに10pxがIEで日本語が12px相当になってしまう件

最近、font-familyをArialに設定するのに
ハマっているotogawaです。

でも、IE類では、10px相当の文字が、
Arialだとなぜか12pxと同サイズに表示されちゃうんで、困り者┐(・ε・`)┌

↑青いところがIEで見たときの状態。
英数字は小さいのに、ヘンでしょ?

サンプルページで、ぜひぜひFirefoxとIEで見比べてください。


なのでいつも、10px相当に指定するところには、
font-family:verdana;をもれなくセットでつけています。
verdanaは、10pxでも英数字がつぶれず、見やすく好きです。
MSPゴシックって、10pxの英数字、字間が狭くて読みづらいんです。

ただ、個人的に12pxのverdanaはデカすぎて好きじゃありません。

なので、
12px以上の大きさにはArial、
10pxはverdana、という使い分けをしているわけです。

なんか、効率よくて、見栄えもいい(=私好み。笑)方法、
ないものですかねぇ?

Dreamweaver「・・・へのアクセスは拒否されました 」

もう6月です。

まだ肌寒いので、違和感ですが、

夏もすぐそこです。

暑い夏にむけて、
身の毛もよだつ、Dreamweaverの怖い話をひとつ。

へのアクセスは拒否されました

Dreamweaverで、ページ編集中に、
「・・・へのアクセスは拒否されました」が出て、
保存できなかったから、
新規保存でいいんですが。

Dreamweaverで、テンプレート更新したり、
ファイル名変更したり、
全ページに変更が加わった際に、
順番に更新がかかっていきながら、
「・・・へのアクセスは拒否されました」が出て、

そもそもそのファイル、開いてないですから、
追いかけて保存ってできないですから、
しかも「OK」ボタンしかないですから、
必然的に、「さようなら」っていうことなんですね。

ヒィィィィィィィィィィィィッ(怖)

ですよね??

解決法ってなんですか?
バックアップとって、何度も挑戦してくださいってことですね。

1