| HOME |
[▽続き]ソースコード(実際はコメントなしの1行):
コードの説明:
現ページURLを正規表現にかけて編集画面へ飛ばしてるだけ。
(正規表現はもっと厳密に書けるかも。)
資料:(URLと正規表現)
○:サーバ「blog**」の番号
□:記事やカテゴリの番号
▲:編集画面URLに関係しない数字
●個別記事
http://ブログ名.blog○.fc2.com/blog-entry-□.html (他に#more、#comment、#trackback)
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com\/blog-entry-(\d+)\.html.*
↓ 移動先(個別記事編集)
http://blog○.fc2.com/control.php?mode=editor&process=load&eno=□
●カテゴリ別
http://ブログ名.blog○.fc2.com/blog-category-□.html 又は category□-▲.html
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com\/(blog-category-|category)(\d+).*\.html.*
↓ 移動先(カテゴリ記事一覧)
http://blog○.fc2.com/control.php?mode=control&process=entry&cat=□
●月別("年月"は"YYYYMM"形式)
http://ブログ名.blog○.fc2.com/blog-date-年月.html 又は blog-date-年月-▲.html
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com\/blog-date-(\d{6}).*\.html.*
↓ 移動先(月別記事一覧)
http://blog○.fc2.com/control.php?mode=control&process=entry&date=年月
※カテゴリ・月別の赤文字部は通常無し。ソース見て付加(POST→GETでもOKだった)。
●TOP
http://ブログ名.blog○.fc2.com 又は 〜.com/ 又は page-▲.html
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com(.+)
↓ 移動先(過去記事一覧)
http://blog○.fc2.com/control.php?mode=control&process=entry
自分メモ:
正規表現
・URLのパターン化は「\/」と「\.」の忘れに注意(特に「.」はそのままでもマッチする)。
・ファイル以外は「.com」と「.com/」、「dir」と「dir/」の両方にマッチさせる。
JavaScript
・IEのBookmarkletは500字以内か外部ファイル化する。
・1行化で"else if"や"var a"の空白まで削除しない。
・グローバル変数(var無し)だと最後の式が評価され画面表示される場合あり。
・var a,b=1,c=2;と並べて書ける。
・正規表現パターンで変数を使用する方法ある?
・正規表現パターン「/abc/」は引用符で囲まない。(「"/abc/"」「/"abc"/」ともにNG)
Bookmarklet
・作成画面のWYSWYGエディタのURLボタンは使わない。
(「"」「&」がHTMLエスケープされ、逆に正規表現の「\/」「\.」が解除される。)
javascript:
var u=location.href, // ここから
h='http://blog',
f='.fc2.com/control.php?mode=',
l=f+'control&process=entry', // 一覧表示URL
e=f+'editor&process=load&eno=', // 記事編集URL
d=/http:\/\/[\w-]+\.blog(\d+)\.fc2\.com(.+)/; // ここまでは1行で
if(u.match(d)){
n=RegExp.$1;
p=RegExp.$2;
if(p.match(/\/blog-entry-(\d+)\.html.*/)){ // 個別記事
u=h+n+e+RegExp.$1;
}else if(p.match(/\/(blog-category-|category)(\d+).*\.html.*/)){ // カテゴリ別
u=h+n+l+'&cat='+RegExp.$2;
}else if(p.match(/\/blog-date-(\d{6}).*\.html.*/)){ // 月別
u=h+n+l+'&date='+RegExp.$1;
}else{ // その他(の自分のブログページ)
u=h+n+l;
}
location.href=u;
}
コードの説明:
現ページURLを正規表現にかけて編集画面へ飛ばしてるだけ。
(正規表現はもっと厳密に書けるかも。)
資料:(URLと正規表現)
○:サーバ「blog**」の番号
□:記事やカテゴリの番号
▲:編集画面URLに関係しない数字
●個別記事
http://ブログ名.blog○.fc2.com/blog-entry-□.html (他に#more、#comment、#trackback)
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com\/blog-entry-(\d+)\.html.*
↓ 移動先(個別記事編集)
http://blog○.fc2.com/control.php?mode=editor&process=load&eno=□
●カテゴリ別
http://ブログ名.blog○.fc2.com/blog-category-□.html 又は category□-▲.html
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com\/(blog-category-|category)(\d+).*\.html.*
↓ 移動先(カテゴリ記事一覧)
http://blog○.fc2.com/control.php?mode=control&process=entry&cat=□
●月別("年月"は"YYYYMM"形式)
http://ブログ名.blog○.fc2.com/blog-date-年月.html 又は blog-date-年月-▲.html
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com\/blog-date-(\d{6}).*\.html.*
↓ 移動先(月別記事一覧)
http://blog○.fc2.com/control.php?mode=control&process=entry&date=年月
※カテゴリ・月別の赤文字部は通常無し。ソース見て付加(POST→GETでもOKだった)。
●TOP
http://ブログ名.blog○.fc2.com 又は 〜.com/ 又は page-▲.html
↓ 正規表現
http:\/\/[\w-]+\.blog(\d+)\.fc2\.com(.+)
↓ 移動先(過去記事一覧)
http://blog○.fc2.com/control.php?mode=control&process=entry
自分メモ:
正規表現
・URLのパターン化は「\/」と「\.」の忘れに注意(特に「.」はそのままでもマッチする)。
・ファイル以外は「.com」と「.com/」、「dir」と「dir/」の両方にマッチさせる。
JavaScript
・IEのBookmarkletは500字以内か外部ファイル化する。
・1行化で"else if"や"var a"の空白まで削除しない。
・グローバル変数(var無し)だと最後の式が評価され画面表示される場合あり。
・var a,b=1,c=2;と並べて書ける。
・正規表現パターンで変数を使用する方法ある?
・正規表現パターン「/abc/」は引用符で囲まない。(「"/abc/"」「/"abc"/」ともにNG)
Bookmarklet
・作成画面のWYSWYGエディタのURLボタンは使わない。
(「"」「&」がHTMLエスケープされ、逆に正規表現の「\/」「\.」が解除される。)
suztomo:テンプレートをいじくってみました。
僕もFC2個別記事の編集をさっとやりたいなと思っていました。
僕の場合はFC2のブログテンプレートを改造して、ブログ記事のタイトルの末尾にピリオドを自動的につけて、その記事の編集画面へのリンクとしました。意味のないピリオドが見えるというやっつけの解決策ですが、なかなか便利ですよ。
こんなかんじです。(ブログデザイン変更.の「.」の部分ですねw)
http://sztm.blog98.fc2.com/blog-entry-58.html
僕の場合はFC2のブログテンプレートを改造して、ブログ記事のタイトルの末尾にピリオドを自動的につけて、その記事の編集画面へのリンクとしました。意味のないピリオドが見えるというやっつけの解決策ですが、なかなか便利ですよ。
こんなかんじです。(ブログデザイン変更.の「.」の部分ですねw)
http://sztm.blog98.fc2.com/blog-entry-58.html
TrackBackURL
→http://denshiki.blog33.fc2.com/tb.php/26-8b081dbe
→http://denshiki.blog33.fc2.com/tb.php/26-8b081dbe
ずっと面倒だと思ってた。
#!電式ブログ Entry->Edit 作成メモ
記事から編集画面に直接行くBookmarklet「Entry->Edit(FC2)」の作成メモ
僕は個別記事画面から個別編集画面に飛べるだけで満足...
文系大学的IT系の悲哀 2007/11/30 Fri 13:13
| HOME |



