「Wordpress」タグアーカイブ
WordPress のコンテンツの日本語化
WordPress の言語ファイルはGetTextを使った .mo という形式になっている。
これを編集するにはオープンソースの poedit を使う。
Custom Post Type UI 1.1.2 の日本語訳が中途半端だったので、日本語化しなおした。
- Poedit をダウンロードしてインストールする。
- wp-content/plugins/custom-post-type-ui/languages/ にある、custom-post-type-ui.po をローカルに持ってくる。
- Poedit を使って custom-post-type-ui.po を開く。左側に原文、右側に日本語訳を入力していく。
- ファイルを保存すると custom-post-type-ui.mo が作成される。
- 念のため、元の .mo をバックアップして、custom-post-type-ui.mo をさっきの場所に上書きする。
一応、おもて側で見える部分は大体翻訳した Custom Post Type UI 1.1.2 の日本語化ファイルを置くので、自由に使ってください。
cpt-plugin-ja.zip
解凍して出てきた cpt-plugin-ja.mo を wp-content/plugins/custom-post-type-ui/languages/ に上書きしてください。
ソースから言語部分を抽出して翻訳するには…
WordPress を MultiSite で動かす
WordPress をマルチサイトで動かすと、一つの WordPress エンジンで、複数のサイトが運営できる。
設定手順
- wp-config.php を開いて、”編集が必要なのはここまでです” の前ぐらいに define(‘WP_ALLOW_MULTISITE’, true); を追記する。
- 管理画面で「ツール」→「ネットワークの設定」が新しく追加されるので、必要な情報を入れてインストール。
- wp-config.php と .htaccess を修正しろと指示がでるのでその通りに直す。
wp-config.php
123456define('MULTISITE', true);define('SUBDOMAIN_INSTALL', false);define('DOMAIN_CURRENT_SITE', 'サイトのIPアドレス');define('PATH_CURRENT_SITE', '/サイトのサブディレクトリ/');define('SITE_ID_CURRENT_SITE', 1);define('BLOG_ID_CURRENT_SITE', 1);
.htaccess
12345678910111213RewriteEngine OnRewriteBase /wp/RewriteRule ^index\.php$ - [L]# add a trailing slash to /wp-adminRewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]RewriteCond %{REQUEST_FILENAME} -f [OR]RewriteCond %{REQUEST_FILENAME} -dRewriteRule ^ - [L]RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]RewriteRule . index.php [L] - ログインし直すと、上のメニューに「参加サイト」 ができている。
「サイトネットワーク管理者」で設定するのがサイト全体の設定。
各々のサイトの情報は個別のサイトのダッシュボードで設定する。
ここら辺が混同しやすので注意。
後は、サイトを追加していく。
- テーマ、プラグインについては予めサイトネットワーク管理者がインストールしたものしか使えない。
- プラグインをネットワークで有効にしておくと、各々のサイトで最初からプラグインが有効にされ、サイトからは見えなくなる。
- 情報は同じデータベースに、プリフィックス_サイトID_テーブル名 という形で保持される。
これを究極につきつめると WordPress.com の様になるわけだな。なるほど。
ただし、自分一人でマルチサイトを使う分には問題ないが、他の人にも開放する場合は、インストールするプラグインにはかなり気を使う必要がありそう。
BuddyPress インストール
WordPress を SNS化するために プラグイン Buddypress をインストールする
これは通常のプラグインインストールと同じように行う。
日本語化
- https://translate.wordpress.org/projects/buddypress の Sub-projects の下の
最新バージョンをクリックして表示される一覧から japanese を選択。 - all current、Machine Object Message Catalog (.mo) を選択して Export をクリック
- ダウンロードしたファイル名を buddypress-ja.mo に変更。
- wp-content/languages/ にアップロード。
テーマの選び方
外観>テーマ>新規追加>特徴フィルター:機能:BuddyPress をチェック>フィルターを適用
で BuddyPress対応のテーマが一覧される。
設定
設定>一般設定 のメンバーシップ だれでもユーザー登録ができるようにする にチェックを入れる。
登録と有効化の固定ページを作る。中味は空で良い。ただし有効化のページのパーマリンクは英語にしておいた方が良い。
設定>BuddyPress の固定ページタグの登録・有効化と関連付けておく。
その他、BuddyPress 用のウィジェットをサイドバーなどに設定できる。
ユーザ権限の変更
初回登録時の初期値を「購読者」に設定した場合、投稿もコメントも書けない。
書けるようにするには、ユーザの権限を「寄稿者」以上にする必要がある。
ちなみに WordPress はユーザのメアドを重複して登録できないが、
gmail の裏ワザとして、 アカウント+適当な文字列@gmail.com が使える。届く先はいっしょ。
ちなみに投稿した記事は になる。
管理者などの承認が必要。なるほど。
カスタマイズしやすそうなテーマ
WordPress で業務システムとかを作る時にベースに出来そうな改造しやすいテーマ。
いずれもなるべくテーマの編集はしないで、オプションや設定からサイドバーを消したりとかできるもの。
DevDmBootstrap3 |
habakiri |
graftee |
lnkblot |
Responsive |
他にいいのはないかな。
WordPressからMovableType への移行
対象:WordPress 4.3 から MovableType 5.2.10
準備:MovableType に Sandbox というテスト用のブログを作成。
手順:
- WordPressの管理画面 → [ツール] → [エクスポート] → ◎すべてのコンテンツ → [エクスポートファイルをダウンロード]
- MovableTypeのSandboxの管理画面 → [ツール] → [記事のインポート] → インポート元:WordPress eXtended RSS(WXR) / ファイルを選択でエクスポートしたファイルを設定 / テキストフォーマット:改行を変換 残りはデフォルト値 → [記事のインポート]
- すべてのファイルを再構築
補足:
一回目のインポートで途中でエラーになった。トラックバックが原因らしい。
1 |
インポートの途中でエラーが発生しました : トラックバックを保存できませんでした: Failed to execute INSERT INTO mt_tbping (tbping_blog_id, tbping_blog_name, tbping_created_by, tbping_created_on, tbping_excerpt, tbping_ip, tbping_junk_log, tbping_junk_score, tbping_junk_status, tbping_last_moved_on, tbping_modified_by, tbping_modified_on, tbping_source_url, tbping_tb_id, tbping_title, tbping_visible) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) with blog_id, blog_name, created_by, created_on, excerpt, ip, junk_log, junk_score, junk_status, last_moved_on, modified_by, modified_on, source_url, tb_id, title, visible: DBD::mysql::st execute failed: Column 'tbping_ip' cannot be null at /.../extlib/Data/ObjectDriver/Driver/DBI.pm line 393. at /.../SAX.pm line 101 at /.../plugins/WXRImporter/lib/WXRImporter/Import.pm line 121 。インポートファイルを確認してください。 |
二回目以降のインポートでは問題なく全記事読込めた。
再構築したらテンプレートに不備があったので修正して再構築。
所感:
- 元のサイトの画像は、ほぼ Flickr か Picasa にリンクしているので特に問題はなかった。
インポート中に、既存のWordPressで公開されているブログからAttachment(画像やファイル)をダウンロードする機能はあるが、そちらは未検証。 - WordPress は改行 = <br> になるが、MovableType ではつながってしまった。
「改行を変換」を選択してもだめだった。Wordpress 側で <br> を記述するなどの対策が必要?
一度記事を消してから再度インポートしたら改行は変換された。 - WordPress のエクスポートも MovableType のインポートも カテゴリで絞り込める。特定の分野だけ移行したい場合は、カテゴリでまとめておく必要がある。
移行元サイトはカテゴリが大分類になっているので見直しが必要。 - 当然のことながらショートコードは全滅
どうやら MovableType でもショートコードを使う Plugin は作れるらしい。
wordpress.com
wordpress.com
wordpress.org は wordpress を配布しているサイトで、wordpress.com は wordpress を使ったブログサービスを提供しているサイト。
無料プラン(Free Plan)
PHP | データベース | CGI | ディスク容量 | 商用利用 | 広告掲載 | 独自ドメイン |
---|---|---|---|---|---|---|
– | – | 3GB | ○ | ○ | × |
WordPress.com Premium ¥11,800/年 や WordPress.com Business ¥35,800/年 のプランを選べばできることは増えるが、無料プランではほとんどカスタマイズの余地はない。
WordPress vs WordPress.com(Free) 違い
WordPress | WordPress.com | 所感 | |
---|---|---|---|
ダッシュボード | ホームと更新 | ホーム、自分のコメント、サイト統計情報、 自分のブログ、フォロー中のブログ、 Akismet 統計、一括検索 |
更新は運営側で一括管理 |
ストア | そんなものはない | プレミアムテーマ、保有ドメイン、 アップグレード状況、課金履歴 |
課金の罠が目白押し |
投稿 | 投稿を複製がある | plugin「Duplicate Post」 で対応可能? |
|
リンク | ない | ある | plugin「Links Manager」 で対応可能? |
固定ページ | ページを複製がある | plugin「Duplicate Post」 で対応可能? |
|
外観 | テーマの編集がある | モバイルがある (モバイルテーマを有効にする機能) |
テーマはいじれない。選ぶだけ |
プラグイン | ある | ない | 一番の違い |
ユーザ | 新規追加、 あなたのプロフィール |
新規ユーザーを招待、自分のプロフィール、 個人設定 |
自分が登録されている前提 |
ツール | サイトを削除がある | ||
設定 | 共有、投票、評価機能、AdControl、 変更記事メール通知、OpenID、 WebHookがある |
カスタマイズできない分 色々用意されてるが どれも余り使わない |
プラグインや WordPress の機能をいじり倒したい人なら、wordpress.org 版をインストール。
純粋にブログとして使うだけならば、wordpress.com にも利用価値がある。
インポート・エクスポートが使えるので、バックアップ用としてもありか?
また、wordpress.com でも xmlrpc は有効になっている。
Google アナリティクス NG
Free では Google アナリティクスが使えないが、もしかしたらと思って、トラッキングコードを取得してウィジェットのテキストに貼ってみた。結果は NG。リンクの a タグとかは許容しているが、script タグははじかれてしまう。流石に一筋縄ではいかないなあ。