つばさのーと

つばさの日常を綴るのーと

SQLで一発かな?はてなブログ特有の「entry」を全記事に自動で追加したい

f:id:tsubasa123:20170621170607j:plain

こんにちは、つばさ(@tsubasa123)です。

 

ちょっとメモ書き。今日もはてなブログからWordPressへの移行に関するお話です。最近はWordPress絡みのことしかやってませんが、私は元気です。

 

日付のフォーマットには対応した

 

ちょっと前にこんな記事を書きました。

 

www.tsubasa-note.blog

 

日付のフォーマットのURLがWordPressへ移行した際にネックになるらしいので、それを解消するためのSQLを紹介したわけですが、これとはまた別に問題というか、要望みたいなもの小耳に挟みまして。

 

はてなブログの記事のURLって「entry/hogehoge」のように、設定した任意のURL文字列の前に「entry/」ってプレフィックスみたいなものが自動で付与されるんですよね。できればこれを取りたいなって話です。

 

過去記事に関してはURLの評価との兼ね合いもあるので「entry/」が付くのは我慢するけど、これから新しく書く記事とか、カテゴリとかタグのアーカイブはできれば「entry/」が付かないようにしたい。さて、どうしたものか。

 

多分できる、はず

 

※はてなブログからWordPressへ移行中の方限定の内容です。すでにWordPressで記事を書いている人は対象外になります。

 

WordPressのパーマリンクの設定で「/entry/%postname%」と指定するとデフォルトで「entry/」が入ってしまうので、これを「/%postname%」にしたうえで、過去記事に対して個別にパーマリンクの設定で「entry/」を追加してあげれば多分解決。

 

先に紹介した記事でも少し触れていますが、WordPressでパーマリンクを指定する際に「/」は使えない仕様になっています。これを解決するためには「Enhanced Custom Permalinks」という個別記事のパーマリンクの指定を拡張するプラグインをインストールする必要があります。

 

このプラグインを有効にしたうえで、

 

  • WordPressのパーマリンク設定で「カスタム構造」を選択して、「/%postname%」と入力
  • SQLを実行できるツールから任意のSQLを実行

 

これで、過去記事に対して1記事ずつ手で「entry/」を入力するようなコスパの悪い作業をしなくても、パーマリンクの問題を解決することができます。で、肝心のSQLは下記のようなもの。

 

INSERT INTO `wp_postmeta` (`post_id`, `meta_key`, `meta_value`) (SELECT * FROM (SELECT `id`, 'custom_permalink', CONCAT('entry/', `post_name`) AS `meta_value` FROM `wp_posts` WHERE `post_type` = 'post' and `post_status` = 'publish') AS `T1` WHERE `T1`.`meta_value` is not null);

 

またしても長い。今回も特に説明は致しません。興味のある方は自己責任で試してみてください。SQLが成功すれば過去記事には「entry/」がつくけど、これから新しく書く記事には「entry/」が付かないようなURLで運用が可能になるはずです。

 

さいごに

 

実はこれ、現在WordPressへの移転をご依頼いただいている方に向けてお調べしたんですが、諸事情あってお蔵入りになりそうなコードなんですよね。そのまま寝かせてもよかったんですが、ここで供養することにしました。誰かのお役に立てれば幸いですね。

 

ではでは、最後までお付き合いいただきありがとうございました。

「レコメンタンク」のWordPress移転をお手伝いさせていただきました

f:id:tsubasa123:20171026120809j:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

タイトル通りなんですが、みるおか(@miru_oka87)さんが運営されている「レコメンタンク」のWordPress移転のお手伝いをさせていただきました。記事書いてもOKと言っていただけましたので、後学のためにこちらも備忘録というか作業の流れをまとめておきます。

 

続きを読む

WordPressプラグイン「Search Regex」を利用して置換対象に改行を追加する

f:id:tsubasa123:20170621170607j:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

今回もWordPress関連のお話、ちょっと危険度高めな小ネタをお届けします。しっかりバックアップを取得しておけば大丈夫だと思いますが、基本的には自己責任でどうぞです。

 

続きを読む

はてなブログのSSL化とかWordPressへのお引っ越しとかあれやこれやで忙しい

f:id:tsubasa123:20170614150211g:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

最近、WordPressとSSL化のことで頭がいっぱいです、ちょっとキャパオーバー気味。なのでここ最近、目にした記事、参考にした記事、今後も使いそうな記事をメモ&シェアしておきます。まとめ記事のまとめ、一歩間違えれば嫌われそうな内容かもですがご容赦を。

 

続きを読む

SQLで一発かな?はてなブログからWordPressに移行する際のURL問題を解決したい

f:id:tsubasa123:20170621170607j:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

最近WordPress関連を調べる機会が多かったのでちょっとした小ネタをお届けします。小ネタですのであくまで参考程度にご覧ください。WordPressとか興味ないし、って方はまたの機会にお会いしましょう。

 

続きを読む

はてなブログで特定のカテゴリをnoindexにするカスタマイズ

f:id:tsubasa123:20170621170607j:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

今日もカスタマイズの小ネタをお届け。難しいことはわかりませんが、割とニーズがあるようなので記事にしておきます。今日のテーマは「noindex」です。

 

続きを読む

はてなブログでトップページをカード型にした際に、1記事目だけ全幅で表示する方法

f:id:tsubasa123:20170604181324j:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

短文ですが久しぶりにはてなブログカスタマイズの小ネタをお届けします。ツイッター見てたら気になったのでちょっとだけ試してみました、ご本人様に届くといいですね。

 

続きを読む