Home

Expand More Link

概要

Expand More Linkは、投稿記事に<!--more-->というタグを挿入すると表示される「続きを読む」を拡張して、<!--more-->タグ以降の内容を非表示の状態で読み込み、JavaScriptを使用して折りたたむ(表示/非表示を切り替える)WordPressプラグインです。画面遷移せずに続きを表示することが出来ます。

特徴

  • 「続きを読む」や「続きを隠す」などのリンクの文字列を自由に設定できます(タグは使用不可)
  • 続きを読んだ後で「続きを隠す」をクリックしたときに適切な位置までスクロールします
  • 本来の「続きを読む」が表示されるタイミング(最小の範囲)でのみプラグインが動作します
  • JavaScriptが無効の場合は単体記事ページに移動(デフォルトの動作)します。

折りたたんでいる状態

※WordPress Default 1.6 テーマの場合
Expand More Link - 折りたたんでいる状態

折りたたんでいる状態でのリンクの文字列(ここでは「この投稿の続きを読む »」)は、初期設定ではテーマが指定する文字列を使用します。管理画面から変更することができます。

開いている状態

※WordPress Default 1.6 テーマの場合
Expand More Link - 開いている状態

閉じている状態でのリンクの文字列は、初期設定では「« 続きを隠す」を使用します。管理画面から変更できます。

動作確認

以下の環境で動作を確認しています。

WordPress

  • WordPress: 2.8.4 / 2.8.5 / 2.8.6 (※2.7以前は動作不可)
  • PHP: 4.4.8 / 5.1.6 (Linux)
  • THEME: Default 1.6, Classic 1.5, wp.Vicuna Ext. 1.58, iNove 1.46

ブラウザ

  • Firefox 3.5 (Windows 2000/XP)
  • Internet Explorer 6 (Windows 2000)
  • Internet Explorer 8 (Windows XP)
  • Opera 10.00 (Windows XP)
  • Safari 4.0.3 (Windows XP)
  • SeaMonkey 1.1.18 (Windows XP)
  • SRWare Iron 3.0.197.0 (Windows XP)

ダウンロード

expand-morelink0.6.zip

※自分の環境(WordPress2.8.4)以外では全くテストしていないので、動作報告をしていただけると助かります。WordPressのバージョンを教えてください。よろしくお願いします。

設置方法

  1. ダウンロードしたプラグインをexpand-morelinkフォルダごと/wp-content/plugins/以下にアップロードします
  2. 管理画面のプラグインから「Expand More Link」を有効にします

リンク文字列を修正したい場合は、管理画面の設定にある「Expand More Link」に設定ページがありますので、そこで行ってください。

改版履歴

ver 0.6.0 (2009/10/27)

  • [PHP] データ出力時のソースの可読性を向上(機能・動作に変更無し)
  • [JS] マウスイベント取得にイベントリスナを使用するように変更

ver 0.5.0 (2009/10/23)

  • [JS] SeaMonkeyに対応

ver 0.4.0 (2009/10/22)

  • 新規リリース

TIPS

単体記事ページでも「続きを読む」を表示したい

このプラグインを単体記事ページ(single.php)でも動作させたい場合は、single.phpを以下のように修正してください。

修正前:<?php the_content('(…)'); ?>
修正後:<?php global $more; $more = 0; the_content('(…)'); ?>

※(…)の部分は使用しているテーマによって違います。

トラックバック(1)
コメント(13)
なかの at 09-11-29 (日) 18:28

折り畳みプラグインいただきました。

私のところ(Wordpress です)では、いままでずっとこの「折り畳み」とかツイッターウィジェットとか美人時計が Internet Explorer だとエラーが出て動かず悩んでいました。よそのブログではどこも問題ないのに。

一度つけていた折り畳みも削除しちゃったのですが、ふと「そか、LiteBox か?」と思い当たり、それを外してみたところ、どれも Internet Explorer で動くようになりました。

まだブログを設置して日が浅いので悩むことばかりです。しばらくはまだまだ試行錯誤ですね。

soramimi at 09-11-30 (月) 07:58

このサイトでも折りたたみとLightbox Plusというのを同時に使用していましたが特に問題なく動いていました。使用していたLiteboxにバグがあったかもしれません。WordPressにはLitebox関連のプラグインが数多くあるみたいなので別のやつを試してみてはどうでしょう?

自前でブログを立ち上げると動作確認が大変ですよね。今でも試行錯誤していますよ^^;一応、サイトにアップする前にPC上にサーバー環境を作ってそちらで動作確認しています。

at 09-12-19 (土) 22:13

こういうプラグインを探してました!(^o^)
さっそく使わせていただきました。
ちゃんと動作しているようです、ありがとうございました☆

soramimi at 09-12-20 (日) 23:38

コメントありがとうございます。
きちんと動作しているようでよかったです。

ことみ at 10-01-15 (金) 16:34

プラグインいただきました。
ちゃんと動作しました!

リンクの文字列を変更したいのですが、
管理画面を見ても、どこをどうやって変えればいいのか全然わかりません。詳しいやり方を教えていただきたいです。
よろしくお願いします。

soramimi at 10-01-15 (金) 20:06

「Expand More Link」の設定ページは表示できていますか?

「Expand More Link」の設定ページは、管理画面の左側のメニューの下の方にある「設定」という項目の中にあります。

設定ページを表示できたら、「折りたたんでいる状態のリンク文字列を指定する」にチェックを入れ、 その下にある「折りたたんでいる状態のリンク文字列」と「開いている状態のリンク文字列」を変更してください。最後に「設定を保存」をクリックすればリンクの文字列が変わっていると思います。

ことみ at 10-01-15 (金) 21:06

なるほど。そこでしたか。ありがとうございました!!

でんど~ at 10-01-31 (日) 12:42

今のところ、残念ながら作動せず、設定画面に下記のようなメッセージが出ます。チェックを入れても、「設定を保存」を押すと設定が外れてしまいます。

Warning: Missing argument 2 for checked(), called in /…/blog/wp-content/plugins/expand-morelink/expand-morelink.php on line 113 and defined in /…/blog/wp-admin/includes/template.php on line 363

解決は可能でしょうか?よろしくお願いします。

soramimi at 10-01-31 (日) 14:05

WordPressのバージョンを教えていただけないでしょうか?

おそらくWordPress 2.7以前と古いため、Expand More Link で使用している「checked」という関数に互換性が無くなってしまっているのではないかとメッセージの内容から推測しています。

もし古いバージョンを使用しているのなら該当部分を以下のように修正すれば動作するかもしれません。試してみてください。

expand-morelink.phpの113行目

修正前:< ?php checked($use_more_text); ?>
修正後:< ?php checked($use_more_text, true); ?>

※行が長いため< ?php ?>の中だけ抜粋しています。

なお、メッセージに含まれていたサーバー情報に関する部分を一部省略させていただきました。

でんど~ at 10-01-31 (日) 21:10

早速ありがとうございます。サーバー情報へのご対応も感謝します。
それで、phpを書き換えたところ、設定画面の表示は完璧に修正されました!ただ、機能としては、まだもとの「more linc」のままで、「expand-morelink」になりません。。。

ところで、ご指摘のWPのバージョンは2.7.1と確かに古いです。以前バージョンアップを実施し、プラグインから何からむちゃくちゃになった経験がトラウマとなり、以降、一切バージョンアップを避けて来ました・・・。

みなさん、バージョンアップでは問題ないのでしょうか?実行するとして、現在の2.9.1に自動アップグレードですか?とても恐ろしいです・・・。

ということで、expand morelinkではこれ以上ご迷惑をお掛けできませんんので、もはやWPのアップグレードに突入するしかないかと迷っているのですが・・・。何か、アドバイスをいただけますでしょうか?

(それほどexpand morelinkに魅力を感じています。まさに探していたプラグインです。類似のも探しまくりましたが、これしかないと思っています。)

何卒よろしくお願いします。

soramimi at 10-02-01 (月) 01:42

動きませんでしたか・・・。残念です。

WordPress 2.7.1のソースを調べてみたところ、Expand More Linkと互換性が無いことがわかりました。これは、根本的なところで動作していないので修正不可能です。the_content_more_linkというフィルター関数がWordPress 2.7.1で実装されてないのが原因です。

代わりに同じ動作をするものを2つほど紹介しておきます。

1. WordPressで続きを読むを折りたたむ

これは私がWordPress 2.6~2.7のころに使用していたものです。ただし、プラグイン化していないため手作業で色々と修正を加えなければ動作しません。説明もかなり適当なので内容がわかる場合のみ採用してみてください。

2. scriptygoddess » Blog Archive » Show Hide "more" with WordPress

これはExpand More Linkのリリース当時に教えていただいたプラグインですが、古いWordPressでも動作します。ただし、リンク文字列はプラグインのソースを直接修正する必要があります(管理画面からの設定不可)。こちらの方が作業は楽に済みます。

バージョンアップの件ですが、いきなり2.7.1から2.9.1にアップするのはあまりおすすめできません。仰るとおり使用しているプラグインやテーマが動作しなくなる可能性があります。さらに2.9.1からはシステム要件が変更されているので環境によってはアップグレード出来ないこともあります。

できればサーバーで動作中のWordPressを直接アップグレードするのではなく、PC上で同一のテスト環境を構築して、まずそちらで使用しているプラグインやテーマが動作するかを確認した方が良いです。

1からテスト環境を構築するのは大変ですが、一度作ってしまえばかなり楽になります。Windowsをご使用であれば「XAMPP」というサーバーソフトウェアを一括でインストールしてくれるソフトが存在します。「XAMPP WordPress」等で検索してみてください。

PCにサーバーソフトウェアをインストールしたくない場合は、「Virtual PC」上にLinux(CentOS等)をインストールする方法もありますが、こちらは難易度が高めです。

どちらも無料ソフトウェアですが、それなりの手間(作業)が必要になります。

でんど~ at 10-02-01 (月) 03:19

本当に丁寧に対応をいただきましてありがとうございます。

やはり、ガラパゴス島になっちゃうんですね・・・。どこかで何とかWPのアップグレードを考えないと、どうにもならないですね。いきなりが危険なら、少しづつとか・・・。

ところで、(さらにしつこくて申し訳ありません)、記事のタイトルだけを最初のページ並べるプラグインというのもあるはずなんですが、何かご推薦のものはないでしょうか?アーカイブ的にずらっと並べて、見たい記事だけ、タイトルをクリックすると展開するような?これもひょっとするとWP7.1ではあり得ないのかもしれませんが・・・。

ありがとうございます!

soramimi at 10-02-01 (月) 17:46

WordPressは脆弱性を狙われることが多いので、セキュリティリスクも考えるとなるべくアップグレードするべきですね。

「記事のタイトルだけを最初のページ(に?)並べるプラグイン」については、使用したことが無いので残念ながら知りません。HTMLやPHPを弄れるなら、テーマのindex.phpに修正を加えることで実現できると思いますが・・・。

コメントを投稿

※初回のみ承認されるまでコメントは反映されません

※Cookie無効の場合「書き込む」を押しても無反応ですが投稿は完了しています
(既に認証されていればコメントは反映されます)