SQLの窓

2013年02月01日

Tumblr のバックアップについて

Apple はツールが作成されているようですが、



(Mac OS X, requires 10.5 or higher)

このページの最後に API について書かれているので、こんど作成してみようと思います。

この程度なら、誰かが作っていそうなものですが、それらしいものが一つありました。これ単純に API 使ってるだけだと思いますが、日本人向けはなさそうですね。

で。

ここまで書いてからあらためて API みてみたら、とんでもなく簡単なのでわざわざ作るようなものでも無い事に気がつきました。ま、でも、やり方はいろいろあるのでネタにはなりそうですが、アプリとしては日本のブログにインポートできる形式にコンバートくらいしておかないと意味なさそうです。

それより画像を一括ダウンロードするアプリなら、わりと簡単に作れます。

あと、これってバックアップというより、他のアカウントのログを無制限に取り出せる API です。

ちなみに、JSON として JavaScript で読み込めるにようになっていて( この場合よくできていて、ドメインの制限を受けない )、ページの最後で使用方法が書いてありますが、間違ってます( たぶん仕様変更して変更してない )

▼ 正解はこちら
<script type="text/javascript" src="http://staff.tumblr.com/api/read/json"></script>

<script type="text/javascript">
    // The variable "tumblr_api_read" is now set.
    document.write(
        '<a href="' + tumblr_api_read['posts'][0]['url'] + 
        '">Most recent Tumblr post</a>'
    );
</script>
staff でやってますが、自分のサブドメインと書き換えて下さい
※ このサンプルだけなら、http://staff.tumblr.com/api/read/json?num=1 とするのが正解です。( 一件だけ取得する )



posted by at 2013-02-01 18:33 | Tumblr | このブログの読者になる | 更新情報をチェックする

Tumblr の記事内でJavaScriptを書く時の攻略方法



一回目の投稿では、理由があってうまく行く事がありますが、更新すると動かなくなります。いくつか要点があって、これを知らないとことごとく失敗するので注意して下さい。結論から言うと、頑張れば、たいていはなんとかなると思います。

スクリプト要素は DIV 要素内に書く

これをやっておかないと、Tumblr では スクリプトタグそのものをふつうの文字列と判断して、スクリプト要素内の改行に BR 要素を付加してしまうので全く動作しなくなってしまいます。全ての改行を取り除く方法もありますが、後からの変更が大変なので、DIV 要素内に入れて下さい。

要素に使えない拡張属性は消されてしまう

これは仕方の無い事ですが、ものによってはそれが無いと動かないスクリプトや貼り付けコードがあります。例えば、pixiv の画像の貼り付けコードは以下のようになっていて、本来存在しない属性( data-id 等 )があります。
<script src="http://source.pixiv.net/source/embed.js" data-id="32781938_1209156501636af5f39fc475b19caf1e" data-size="medium" data-border="off" charset="utf-8"></script><noscript><p><a href="http://www.pixiv.net/member_illust.php?mode=medium&amp;illust_id=32781938" target="_blank">魔法の湖</a> by <a href="http://www.pixiv.net/member.php?id=624362" target="_blank">night w&#225;lker</a> on <a href="http://www.pixiv.net/" target="_blank">pixiv</a></p></noscript>
これを使えるようにするには、結構な努力が必要になります。まず、全てを文字列に変換して、document.write で書きだすようにします。

文字列の変換は、こちらの JavaScript ボタンを使って下さい。

但し、これだけだと文字列中の > と < が &gt; と &lt; に変換されてしまうので、String.fromCharCode(0x3c) と String.fromCharCode(0x3e) を使って以下のように書き換える必要があります。
<div>
<script type="text/javascript">
str="";
str+=String.fromCharCode(0x3c)+"script src=\"http://source.pixiv.net/source/embed.js\" data-id=\"32781938_1209156501636af5f39fc475b19caf1e\" data-size=\"medium\" data-border=\"off\" charset=\"utf-8\""+String.fromCharCode(0x3e)+String.fromCharCode(0x3c)+"/"+"script"+String.fromCharCode(0x3e);
document.write(str);
</script>
</div>

これでやっと使えるようになるのですが、なかなか大変です。実際埋め込んでみたのがこちらになります。

pixiv の埋め込みコードの場合、ここまでして使う理由はありませんが、JavaScript を使った埋め込みツールは使えるにこした事はありません。日本の HTML を書き込めるブログでこういう事はまずありませんが、複数のブログを気軽に使える Tumblr のような存在は貴重なので、攻略方法は知っておいたほうが良いと思います。


posted by at 2013-02-01 03:13 | Tumblr | このブログの読者になる | 更新情報をチェックする

2013年01月27日

Tumblr 専用。大きな画像用リンクHTMLコードを取得する Google Chrome 拡張

SkyDrive へ移動


そもそも、Tumblr 使おうと思ったのは、DAZ3D で作った作品を効率良く公開する方法をいろいろ考えていたのですが、使ってみるとかなり『ドンぴしゃ』だったので作成しました。

DAZ3D and SWORC

で、DAZ3D で作った作品は、とにかくだれでも自由に使って欲しいので( 使いたい人が居ればいいんですけれど・・・ )、画像をダウンロードする方法をどうしようかと考えて、その為のリンクを作る為に作った拡張です。

インストール方法はこちらを参照

Tumblr では、複数画像の場合、Lightbox で表示してくれるのですが、大きい画像の場合は縮小して表示しますし、Lightbox 表示中に画像をダウンロードするのはどうもしっくり来ないので本文中に大きい画像への直接リンクを作成しています。

これによって、もし欲しい画像の場合に細部まで確認できますし、ダウンロードとしてもアドレスバーに画像の URL があるので解りやすいと思うのです。

と、言う自己満足なんです。




関連する記事

マウスカーソル下の画像表示用 HTML コードをクリップボードにコピーする Google Chrome 拡張



posted by at 2013-01-27 21:06 | Tumblr | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します


Android SDK ポケットリファレンス
改訂版 Webデザイナーのための jQuery入門
今すぐ使えるかんたん ホームページ HTML&CSS入門
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX