縦書き小説サイト「ノベル日和」のことを書きます。なぜ書くかというと、書かないと考えが整理できない人だからです。チラ裏的な内容になるかもしれませんが、許してください。

どんなサイト?

多段組縦書きで小説を表示させているサイトです。下記のような塩梅。もっと知りたいなら、画像クリックでトップページへジャンプします。トップページはまだ仮のもの。横書きです。
screen-shot

いつから作業している?

ノベル日和は2015年から準備をはじめ、2016年3月2日に基本的なレイアウトが完成。4月8日から稼働させています。

なぜ作った?

縦書きにした理由は、私が横書きで小説を読めないからです。縦書きがいいです。横書きはダメです。よそがやってますからそちらへどうぞ(こういう人なので、ネット小説の類はだいたい読んでおりません。傑作とか注目作という評判のあるものだけ、WZ Writing Editorに貼り付けたりして縦書きで読んでいます)。

なんでできてる?

女の子は「砂糖、スパイス、素敵な何か」で出来てるんですが、ノベル日和は、WordPressというCMSを使って構築されています。世界の半分のWebコンテンツがWordPressで作られているとかいないとかきいたことがあるくらい有名なWebアプリです。
多段組縦書きはh2vRによる実装です。h2vRに使われているのはJavaScriptとCSSです。

WordPressをどう使ってる?

1つの小説を1つの投稿(post)として投稿しています。 章分けは、見出しと<!–nextpage–>というWordPress特有のページ分割タグで表現しています。この構成にしたのは、章をまとめたり分割したりといった下書き段階の作業に追従するためです。

タグ書くの面倒くさくない?

クリップボードに積んだ見出し文字列つきのテキストを変換して、<!–nextpage–>とHTMLの見出しダグをつけてクリップボードに積み直すプログラムを作ったので、ボタン一発で文字原稿がWordPressで処理できるHTMLに化けてくれます。楽です。

課題は何?

課題は更新情報がうまく出せないことです。この方式、書き手としてはだらしなく作れて最高なのですが、RSSの更新情報だけ頼みにしている人には更新が正しく伝わらないようでした。一部の処理系では、新規作成の日付しか見ないようなのです。そして、更新の日時をRSSに出力しても、RSSを更新日時順にソートして出力しても、該当の処理系では新規作成日順にソートしなおし、更新は頑なに無視してくれます。内部にタイトル文字列と日付の対応表でもあるのでしょうか。具体的にいうと「にほんブログ村」というサービスがそういう処理をしてくれています。

ほかには課題ある?

検索エンジンとの相性が最悪! 縦書き小説サイトはJavaScriptで文字を回転させているおかげで、検索エンジンに無視されまくっており、オーガニックなアクセスが少ないので、先にあげた「にほんブログ村」から見放されたぐらいでも実にツライです。いまはそういう零細サイトの状況なのです。

どこからアクセスがあるの?

更新案内を手動で出しているTwitterからの流入がチラホラあるぐらい。Twitterに更新案内するのはいいとして、それを利用してサイトの更新情報にもできたりしたら楽でいいかなと思ってます。

これからの更新案内はどうやって出そうと考えてる?

WordPressには「投稿(post)」「ページ」「カスタム投稿」の3つのコンテンツの出し方があります。
このうち、ページはカテゴリーを持てないし、RSS配信できないのが基本なので、「投稿」か「カスタム投稿」でってことになりますが、カスタム投稿はURLが日本語になったりするし、整理が面倒。
Custom Post Type PermalinksでURLを規則正しくしてしまうのはできそうだし、functions.phpに

add_filter( 'post_type_link', 'my_post_type_link', 1, 2 );
function my_post_type_link( $link, $post ){
	if ( 'news' === $post->post_type ) {
		return home_url( '/archives/news/' . $post->ID );
	} else {
		return $link;
	}
}

add_filter( 'rewrite_rules_array', 'my_rewrite_rules_array' );
function my_rewrite_rules_array( $rules ) {
	$new_rules = array( 
		'archives/news/([0-9]+)/?$' => 'index.php?post_type=news&p=$matches[1]',
	);

	return $new_rules + $rules;
}

って書いてもできるそうだけど、ちょっと不安。
RSSはどうなっているのかもねえ。下記のコードをfunctions.phpに書けばいいかな(更新情報のカスタム投稿タイプは「news」として)。

function mysite_feed_request($vars) {
    if ( isset( $vars['feed'] ) && !isset( $vars['post_type'] ) ) {
        $vars['post_type'] = array(
		'post',
		'news'
		);
    }
    return $vars;
}
add_filter( 'request', 'mysite_feed_request' );

データのインポート、エクスポートを考えると、カスタム投稿は避けたほうがいいかなと思ったり(register_post_typeに‘can_export’ => trueって書けばできるらしいけど)。メールでの投稿もpostだけ。iftttで、Twitterに特定タグつきで更新情報がツイートされたらメールを飛ばして、ノベル日和で受信して更新情報にするとか。それなら楽かな。
投稿(Post)に小説も更新情報も入れていくとウザいかなと思ったりもしますが、特定のカテゴリーだけまとめて表示するのは、さくら書院のトップページでもやっている処理なので、まんざら知らないわけでもないです。

結論は?

カテゴリーとして投稿(post)に「更新案内」を追加して、RSSは更新順ではなく、作成順にする、を試そうと思います。でも、このやり方だととカテゴリー名をユーザが変更できるから汎用性がないか。もう少し思案してみます。持ち越し。

追記 5月3日にリニューアルしました

 結局、ブログスタイルで、作成日順で並べて、カテゴリーとして更新情報を発信していくことにしました。読者はTwitterでフォローしてくださっている方を想定しているので、更新情報はTwitterでの更新告知をiftttを使って取得してWordPressを更新させています。Twitterが先、WordPressが後です。更新情報を表示すると、RSSが更新されるので、日本ブログ村という更新告知サービスの利用者にも更新が通知されるようにはしています。が、そちらからの流入は現状は、微々たるものです。
 どんなサイトになったか興味のある方は下記からどうぞ。
ノベル日和 ― 葛城真実の縦書き小説サイト ―


Comments are closed.

Post Navigation