maRkの

キャンペーンだとか、Chess.appについてのなにか

歳はとりたくないものじゃのぅ

今週のお題「2016上半期」

なんだかんだで、一年の折り返しですよ。
本年は何だろう、九星で星回りがよい年なので、行動は積極的にいってます。
何やっても駄目な年は、本当に上手いこといかないもので。。今のところは、自分が思うように動いているような気がしてます。
具体的にどうこうというのは、ここでは伏せますけど。

ところで、ニュースで訃報を聞く度に、自分年とってきたと自覚するようになってきた。
この人だれ??って世代もあるよね、矢張り。

いい加減手放したい電化製品

今週のお題「マイベスト家電」

コーヒーメーカー

現P社製の。 10数年以上使ってるが現役。
とはいえ、メーカーのコーヒーサーバとドリッパーしか使わずに普段はヤカンから淹れている。

デなんとかいうとこのメーカーが流行ってるらしいけれど、これ案外壊れないんで新調できないし、引き出物で頼んだコーヒーメーカーもあってこれがまだ稼働させていない。
とにかくモノが売れないわけだなあとか思う。。だって壊れないんだもの。

Evernoteのクリップボタン付けてみた(今更)

オワコンとか囁かれていたりするエバノなんですが。
Clip it ボタン(でよかった?)は、Zenback 入れてるとついてきたように思うけど、自分は使ってないので、自前で入れることにした。

公式のサイトで探せなかったので別ブログで貼ったのそのまま転用してたりするんですが、以下のサイトのページに詳細が記載されていました。


追記:2018/04/18

Clipボタンは使用できません。



WordpressテーマにEvernoteのクリップボタンを取り付けるカスタマイズ方法

まずは、記事ページのみ表示させたいので、デザイン編集の[記事]の方で、できれば記事上の方がいいかと思います。

<a href="https://www.evernote.com/noteit.action" rel="nofollow" onclick="Evernote.doClip({contentId:document.getElementsByTagName('article').id, providerName:'YOUR BLOG URL'});return false;">
<img src="http://static.evernote.com/article-clipper-jp.png" alt="Clipボタン" style="border:0px;" height="17" width="58">
</a>

Evernote.doClip にオブジェクトを指定するなどです。

cotentId は記事のエリアにある id を入れるので、はてブロの場合だと、 article['id'] が該当。
providerNameには、各自のブログのトップページのURLを入れます。


これだけだと、リンクを作成しただけなんで、ClipさせるJavaScript本体を読み込みします。

<script src="http://static.evernote.com/noteit.js" async='true'></script>

を記事下などで。
自分は、フッターに貼ったので、以下のようになってます。

<script>
(function(){
 if(document.documentElement.getAttribute('data-page') === 'entry'){
    var evn = document.createElement('script');
    evn.src = 'http://static.evernote.com/noteit.js';
    evn.async = 1;
    document.head.appendChild(evn);
 }  
})();
</script>

あとはテンプレート編集のプレビューでもいいので、clip it を押してみて、ウィンドウが表示されれば成功です。
適当にclass を振って、 CSSで位置の調整をしたら完成です。

ランダムエントリーパーツをブログサイドバーに設置

古くからあるカスタマイズですが、表示のたびにランダムに切りかわる過去記事の参照リンクのカスタマイズです。

f:id:maRk:20160429190753j:plain

PHPを使いますので、別にサーバーが必要です。

おおまかな作業は以下です。

はてなブログAtomPub - Hatena Developer Center
) を使って取得

  • 取得したら、タイトルとリンクなど必要な情報のみ解析して、JSON形式として書き出し
  • 書き出されたJSONから、ランダムに抜き出しして、HTMLに整形
  • はてなブログ側で表示

といった形になります。(HTML整形は はてなブログから直接にJSON読む手もありますが、外部
ファイルのリードを抑えてなるべく軽くしたいところなので)

管理としては、

  • 全記事取得はタスク処理などで定期に更新。(更新間隔はブログ記事の更新頻度による)
  • 全記事取得するphpはドキュメントルートより上に置き、書き出すJSONを公開ディレクトリ下に
  • 外部ファイルには、 Access-Control-Allow-Origin で、許可サイトを登録するようにする


参考:


www.bunkei-programmer.net

AtomPub での取得方法。 JAVAによるものですが、手順としては他の言語でも大丈夫です。



配列のランダム抽出、面倒になったので、以下のメソッドに頼ることに。

【PHP】配列から指定したエントリの数のバリューをランダムに抽出する - Qiita


追記:
以下にて、使用ファイルのサンプルを用意しました。
Get Random Entry — Bitbucket

※ 正確には全記事取得ではありません。(最後のページの要素が1つな時、配列にならなかった場合の処理を行っていないため)

170記事で、ファイル書き出し完了までにおよそ25秒くらいでした。タイムアウトで止まるようならば、ループのところでカウンター変数セットしてリミットかける必要あると思われます。
※ 処理が重い場合に、共用サーバーでプロセスkillになるかもしれないので、ローカルでテストされてから使う方がいいです。
(問題のある場合に公開取りやめますが、基本、at your own riskでお願いします)