[EE]タイトルの長さの上限を変更する
expressionEngineのweblogでは、タイトルの長さ上限が100byteとなっています。
世界にはラオス語のブログを作る需要なんて存在するんですねぇ。
This field contains the title of your weblog entry. Titles can be up to 100 characters in length.
Publish Page - ExpressionEngine Documentation
実際には、日本語35文字を超えたあたりからおかしなことになるようです。
英語圏では十分なのでしょうけど、一文字に2byte3byteを消費するマルチバイト圏を考えると、ちょっと微妙な数字です。
実際、movabletypeでは255byte確保していますし、こんなところケチったって仕方なかろうと思うのですけど。
EEフォーラムを探してみると、同じことを考えている人がいました。
Change title maxlength | ExpressionEngine Community Forums
詳しいやり方を教えて頂いたので、ここでご紹介しておきます。
Be Like Water : Changing the Title Maxlength in Expression Engine
ExpressionEngineのテーブル定義を変更します。
[daisuke@snares /var/www/root/html] $ mysql -u expressionengine -pで、ソースコード側も変更。
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 193 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use expressionengine
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
+----------------------------+
| Tables_in_expressionengine |
+----------------------------+
| exp_actions |
:
| exp_weblog_member_groups |
| exp_weblog_titles |
| exp_weblogs |
+----------------------------+
68 rows in set (0.00 sec)
mysql> show create table exp_weblog_titles;
:
`ip_address` varchar(16) NOT NULL default '',
`title` varchar(100) NOT NULL default '',
`url_title` varchar(75) NOT NULL default '',
:
1 row in set (0.00 sec)
mysql> alter table exp_weblog_titles modify title varchar(255);
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> show create table exp_weblog_titles;
:
`ip_address` varchar(16) NOT NULL default '',
`title` varchar(255) default NULL,
`url_title` varchar(75) NOT NULL default '',
:
mysql> exit
Bye
[daisuke@snares /var/www/root/html] $
[daisuke@snares /var/www/root/html] $ emacs ee/cp/cp.publish.php以上。とくに再起動とか不要です。
[daisuke@snares /var/www/root/html] $ diff ee/cp/cp.publish.php ee/cp/cp.publish.php~
670c670
< $DSP->input_text('title', $title, '20', '256', 'input', '100%', ($which == 'new' OR $which == 'preview') ? 'onkeyup="liveUrlTitle();"' : '', $convert_ascii)
---
> $DSP->input_text('title', $title, '20', '100', 'input', '100%', ($which == 'new' OR $which == 'preview') ? 'onkeyup="liveUrlTitle();"' : '', $convert_ascii)
動作中のシステムを変更しても大丈夫(変更後は256byteまでの長さが使えるようになります)が、非公式なやり方ですので、どうしても必要なときだけにするのがよいかと思います。
それにしても。
For example, one of my client wanted to write an article in Lao, but it turns out that they needed more than 100 characters for their title.
世界にはラオス語のブログを作る需要なんて存在するんですねぇ。
カテゴリ:
技術メモ
トラックバック(0)
このブログ記事を参照しているブログ一覧: [EE]タイトルの長さの上限を変更する
このブログ記事に対するトラックバックURL: http://mogya.com/mt/mt-tb.cgi/528
コメントする