「WordPress」タグアーカイブ

WordPressに喋らせる Amazon Polly プラグイン。読み上げ podcast 開設まで

Amazon 自身が音声合成サービス Amazon Polly のワードプレス用プラグイン Amazon Polly公開したので、早速入れてみました。

インストールと設定

WordPress のプラグインディレクトリから選んでインストールすると、「設定」メニューに Amazon Polly が出てきます。

必要な権限を持たせたAWSのアカウントを用意して、以下の二つを設定。

  • AWS access key
  • AWS secret key

また、Voice Name で言語や話者を選べるので、日本語の女性 Mizuki か男性 Takumi を選んでおきます。

Cloud storage の項目では、合成された音声をローカルではなくAmazon S3に置く指定も可能です。

音声対応の記事を書く

これで新規にブログ記事を書こうとすると、投稿画面に”Enable Amazon Polly”というチェックボックスが出てくるので、喋らせたい記事にチェックを入れます。チェックすると「今回の変換にいくら掛かるか?」を確認するボタンまで出してくれるのは、有料APIだけに安心感があります。

あとは通常と同様に公開するだけ。

記事の先頭(プラグインの設定により末尾に出したり、表示しないことも可能)に、上のように音声再生のウィジェットが表示されました。聴いてみるとかなり良い感じで合成されていますね。

Autoplay という設定で、記事を開くと自動的に喋り始めるようにもできますが、これをオンにするのは読者には煩わしいのではないかと思います。

自動podcastも

管理画面の案内から、ブログの podcast feed が自動で生成されていることもわかります。

このブログの場合はこのURLで、生成された音声記事が podcast として公開されているということです。さらに iTunes で公開する Podcast Connect へ案内までしてくれるので、Apple ID/Store Account を持っていればそのまま iTunes で公開までしてしまいそうです。

今回はこの記事のみ変換するようにしましたが、過去の記事も変換したり、新規記事はデフォルトで音声版を作るようにする設定もあるので、既存のブログ資産から勝手に podcast を作れてしまいます。大量に長文を変換すると、それなりの金額になるかもしれませんが、そこだけ注意すれば、ブログコンテンツの再活用という意味でも面白いかもしれません。

scratchblocks – Scratch プログラムをテキストファイルから生成

scratchblocksは、教育用プログラミング言語 Scratch の図形を組み合わせたプログラムを、テキストから生成してくれるというwebサービスです。

言語を日本語(Japanese)にすると、日本語での画像を作ってくれますし、英語など他言語で書いたテキストを translate メニューから日本語に翻訳し、それを画像化( png や svg 形式に)することもできます。

ソースコードも公開されていて、これを使って WordPress で表示するプラグイン(作者は日本の方)や Pandoc でドキュメント内に埋め込むライブラリなども紹介されていました。

小学校の自由研究で、提出するといってもパソコンやタブレットを提出するわけにもいかない。作ったものを紙にして出すにはどうするのがいいのかな、と調べたら見つけたものです。

[訂正 2017-09-08]

scratchblocksScratch Blocks の関係性について間違いがあったので、下の内容を撤回します。ご指摘ありがとうございました。

このツールが表示しているのはそもそも GoogleとScratch が HTML5 版の Scratch 3.0 に使うために策定し、また他の Scratch 風プロジェクトでも採用されるべく規定しようとしている Scratch Blocks で、このScratch Blocks を「非公式に」サポートするツールとして作られているようです。

消えゆく Flash Player から HTML5 ベースに移行しようという Scratch 本家に合わせて作っているものですから、描画結果のそれらしさについては間違いのないところでしょうね。

Github の scratchblocks は Scratch 用の”unofficial”なツールを作っている、とGitHub にありますが、これは Scratch Blocks をサポートしているものではないようです。

ブログでチャット風の会話を表示するCSS

先日の記事「電話番号間違ってますよ」がどうしても信じてもらえない! 内で、チャットのやりとりを表現したかったので、フキダシ会話っぽく見える CSS を書きました。

WordPress の場合は、[外観]-[カスタマイズ]-[追加CSS]に貼りつけてください。特定のポストでだけ使いたい場合は .post-9067 とかを全部の前につけます。

アイコンの画像はこのCSSの中に URL を書き込んであります。別のアイコンにしたければそこを変えてください。


.akky_conv {
padding-top: 1em;
}
.akky_conv li {
display: flex;
flex-direction: row;
max-width: 95%;
}
.akky_conv li div {
width: 32px;
height: 32px;
box-shadow: 2px 2px 0px #aaa;
flex-shrink: 0;
flex-grow: 0;
z-index: 1;
}
.akky_conv li:not(.me) div {
background:url('/akky/wp-content/uploads/2017/04/user-alt-1_0.png') center no-repeat;
background-color: #fcf;
}
.akky_conv li.me {
justify-content: flex-end;
}
.akky_conv li.me div {
background:url('/akky/wp-content/uploads/2017/04/user-alt-2.png') center no-repeat;
background-color: #cff;
order: 2;

position: relative;
bottom: -3em;
}
.akky_conv li p {
background-color: #ddd;
margin: 1em;
padding: 1em;
position: relative;
text-align: center;
}
.akky_conv li.me p{
order: 1;
}
/* 吹き出し */
.akky_conv li p:before {
content: "";
display: block;
width: 0;
height: 0;
position: absolute;
}
.akky_conv li:not(.me) p:before {
border-right: 12px solid #ddd;
border-bottom: 12px solid transparent;
top: 0px;
left: -12px;
}
.akky_conv li.me p:before {
border-left: 12px solid #ddd;
border-top: 12px solid transparent;
bottom: 0px;
right: -12px;
}

会話の方はこんなかんじ。右の発言の人には、li 要素に me クラスをつけます。


<ul class="akky_conv">
<li>
<div></div>
<p>左の人の発言</p>
</li>
<li class="me">
<div></div>
<p>右の人の発言と思いねえ</p>
</li>
</ul>

その結果

  • 左の人の発言

  • 右の人の発言と思いねえ

WordPress Admin Style – ワードプレス管理画面で使えるCSSスタイルを列挙するプラグイン

WordPress Admin Style は、ワードプレスのプラグイン開発者のためのサポートツールです。

プラグインは公式レポジトリにはなく、GitHubで公開されています。

cloneするなりzipでダウンロードするなりして、WordPressの開発環境、plugins以下へコピーします。

wordpress-admin-style-enable

プラグインを有効化すると、サイドメニューに”Admin Style”というメニューが増え、クリックすると、管理画面で最初から使えるスタイルが列挙されたページが開きます。

wordpress-admin-style-screenshot

Admin画面のデザインをする際に、どんな要素にどんなデザインが当たっているのかを把握しやすくて便利かなと思いました。

ワードプレスのインポートツールで警告が消えない問題

WordPress のサーバ再構築をする必要があり、標準のXMLエクスポート形式であるWXRファイルを読み込ませたところ、最新のWordPressを使っているのにも関わらず以下のような警告が出てきます。

( ! ) Strict standards: Declaration of WP_Import::bump_request_timeout() should be compatible with WP_Importer::bump_request_timeout($val) in C:\Users\akky\OneDrive\services\akimotojp\blog\wp-content\plugins\wordpress-importer\wordpress-importer.php on line 38

wordpress-importer-caution

バグ報告もされているのですが、これがなんと2年も前のもの。ずっと直ってないというわけです。

直し方がわかってないわけではなく、現時点のバージョンなら、wp-content/plugins/wordpress-importer/wordpress-importer.php 1110行目の

function bump_request_timeout() {

function bump_request_timeout($unused) {

などとするだけです。

わかってるなら配布してるオリジナルを直してよ、と思うところですが、バグチケットの中でリード開発者により「まれにしか使わないインポートの警告を消すためだけに、500万人の管理者にアップデートさせるのは『アップデート疲れ』(update fatigue)もあるのでやりたくない」という結論が出されていました。

そして、他の重要な修正も入るなら喜んでプラグインの更新を掛けるよ、と、未解決のインポート周りのチケットリストを紹介することで返答を結んでいます。

そんなに気になるなら他の重要なバグ直せば一緒に直るよ、なんていう返しもあるのかあ、と変なところで感心しました。

インポート機能を全員が使うわけではない、というのは確かにその通り。インポート作業をするぐらいの利用者なら警告の意味も読めるし、これが実害のない警告に過ぎないこともちょっと検索すればわかるかもしれません。

しかしそれでも、推奨された最新バージョンを使って、標準で動かして警告が出てしまうのは、それこそ500万ユーザーを誇るならカッコ悪いように思うですが。警告を見た人の多くはそれが何かを調べ、対処するなり無視するなり判断するという時間を取られていますし。

WordPress Importerプラグインの一番新しいバージョンも5ヶ月前に出ており、このチケットが切られた2年前より後に修正を含めるタイミングはあったみたいだし。

# 他にStrict Standardsを外すという解決法もなくはないですが、PHP 7 も見えているこの時期にそんなことをするのは当然オススメできません。

円ドルの通貨を自動で換算表示するWordPressプラグインAuto Currency Converterを公開しました

サイボウズ・ラボの合宿(正確にはラボユースの合宿)で、自分のブログ用にワードプレスのプラグインAuto Currency Converter(自動通貨変換)を作ったので公開します。

ブログの本文中に書いたドルの金額表示を見つけて、それを今日のレートで円に換算したらいくらになるかを後ろに付記します。円からドルについても同様です。

たとえば、こんな感じの表示となります。

ダルビシュ有投手の2013年の年俸は$9,500,000(10億7898万1500円)で、日本ハムファイターズの2013年の年俸総額は21億8070円(1848万71ドル)です。

カッコの中は自分で書いてません。自動的に作成されています。

設定はほとんど無いのですが、過去の記事では手動で換算結果を付けていたから変換されると困るというケースのために、プラグインの作動を有効にする開始日を設定できるようにしてあります。使い始めの日にセットしていただければ、過去の記事については勝手に変換されることはありません。

海外のニュースや商品を紹介することが多いWordPressブロガーの方、いかがでしょうか。

数年ぶりに「1ドル=100円」を超えた円安がニュースになり、だいたい100倍すればいいという、たいへんわかりやすい状況ではありますが。今後また円高に戻ったり、円安が進んだりしてわかりにくくなると、役に立つ&手間が省けるかなと思います。

不具合報告などもお待ちしております。(英語, 日本語)

あとは、プラグイン公開ページの772×250のバナーを誰か作ってくれませんか。