HOME > BlognPlus 用モジュール > モジュール(その他) > タグ拡張モジュール ver1.40

RSS 購読

nJOY BLOG

ゲーム攻略サイト「nJOY(エンジョイ)」管理人のブログ

2010Feb16

タグ拡張モジュール ver1.40


BlognPlus 用「タグ拡張モジュール」をバージョンアップしました。

Ver1.31 → Ver1.40 の変更点

  • 「キーワード+概要生成モジュール」との連携機能追加

キーワード+概要生成モジュール」でリクエストをいただいていた概要を表示する機能をこの「タグ拡張モジュール」に組み込みました。

キーワード+概要生成モジュールだけでこの機能を実現しようとすると「index.php」の改造が必要不可欠だったので、すでに改造を要求しているタグ拡張モジュールに機能を組み込む形を取りました。

概要を表示するためには、スキンの {LOGLOOP} ~ {/LOGLOOP} 内に {XT_LOG_METADESC} と記述してください。
キーワード+概要生成モジュールが概要を抽出している場合、その記事の概要がブログに表示されます。

リクエストしていただいた機能は実現しましたが、実際にどのように使われるのかいまいち把握しきれていないので、まだまだ改善の余地があると思います。
こういう風にしてほしいという要望があればコメントしてください。

インストール・アップデート方法

ダウンロードした圧縮ファイルを解凍して、「xtratags」フォルダごと BlognPlus 下の「module」ディレクトリにアップロードして下さい。あとはモジュールの解説ページに書かれているインストール方法の手順に従ってください。

アップデートする場合は、すべてのファイルを上書きアップロードしてください。

今回追加した機能を使用するには、キーワード+概要生成モジュールがインストールされている必要があります。キーワード+概要生成モジュールは BlognPlus v2.6.2 以上の専用モジュールです。

ダウンロード

タグ拡張モジュールの解説ページ」からダウンロードしてください。

関連記事

コメント

CJさん

こんにちは。
沢山のモジュール利用させてもらってます。
ありがとうございます。

タグ拡張モジュールでコメントの個別URLを
本文のコメント一覧で表示させる事はできませんか?
サイドバーでは{RCLINK}{/RCLINK}で出力されてる
コメントのURL(index.php?e=1#cmt1)
を記事のコメント投稿者名、ウエブサイト、E-Mailの欄に
出力できればいいなぁと思ってます。

新しい記事から以前頂いたコメントへリンクを張る場合等
色々と便利だと思います。

改造できるようでしたらご教授頂けると助かります。
難しいようでしたら是非次回のタグ拡張モジュールに
組み込んで頂ければと思います。

お忙しいところ申し訳ありませんが
よろしくお願い致します。

| dimag5 | URL | 2010/05/14 02:57 AM | uMFrc85w |

タグ拡張モジュールでコメントIDを出力する事は不可能ではありません。
しかし、このモジュールではコメントログにアクセスするように設計されていないため、その機能を追加する予定は考えていません。

「index.php」を改造する方が無駄にサーバーへの負荷を増やさないため、現実的だと思います。
以下改造方法

「index.php」から次の行を探す。
------------------------------
$cmt_tmp_buf = '<a name="cmt'.$cmtval["id"].'"></a>'.$cmt_tmp_buf;
------------------------------

その真下に以下の記述を加える

------------------------------
$cmt_tmp_buf = str_replace("{CMTID}", 'index.php?e='.$id.'#cmt'.$cmtval["id"], $cmt_tmp_buf);
------------------------------

これで新しい独自タグ {CMTID} が使えるようになります。
スキンに {CMTID} と書き加えた場所に、index.php?e=1#cmt1 のような形式の文字列を出力できるようになります。

| CJ | URL | 2010/05/15 12:04 AM | pAWXWe0c |

CJさん

改造方法早速試してみます。
どうもありがとうございました。

| dimag5 | URL | 2010/05/16 07:02 AM | MHv0/QEY |

利用させて頂きました。
このムジュールのおかげで、FC2拍手を簡単記事ごとに設置できて、本当に助かりました^^
ありがとうございます。
こういうモジュールは、本当に使い勝手がいいですね。

| papico | URL | 2011/01/11 06:21 PM | ZtPFxiZs |

モジュールがお役にたててうれしいですね。
タグ拡張モジュールはアイディア次第で応用が利きますから、色々活用してみてください。

| CJ | URL | 2011/01/11 09:52 PM | JBEW/VXA |

CJさん

いつもモジュールとても便利に使わせて頂いてます。
タグモジュールでエントリー本文の頭から15~20文字その後に「・・・」と出力できるようには出来ないでしょうか?
twitterボタンに変数を使ってるのですが、現在はタイトルとblig名、URLだけなので、本文の頭も出力できる変数があれば助かります。

もし簡単な改造等で出来るようでしたら教えて頂けると助かります。
宜しくお願い致します。

| dimag5 | URL | 2011/04/15 01:11 PM | 9Wdc1Fnk |

Twitter 使った事ないので、これでいいのかわかりませんけど改造方法を書いておきます。

「function.php」の 15行目
------------------------------
$eid = $log["id"];
------------------------------
の下に以下の6行を書き加えてください。
------------------------------
if ($log["mes"]) {
$twit = get_magic_quotes_gpc() ? stripslashes($log["mes"]) : $log["mes"];
$twit = strip_tags($twit);
$twit = mb_substr($twit, 0, 20).'...';
$skin = str_replace("{XT_LOG_TWEET}", $twit, $skin);
}
------------------------------

これで {XT_LOG_TWEET} という独自タグが使えるようになります。
本文の頭から20文字を取り出して、末尾に「...」を加えたものが出力されます。

これだけだともしかしたら文字化けするかも…。その場合は、追加した5行目を次のように変更してください。
------------------------------
$skin = str_replace("{XT_LOG_TWEET}", urlencode($twit), $skin);
------------------------------

| CJ | URL | 2011/04/16 05:30 PM | zCiH8igE |

CJさん

レスありがとうございます。
早速改造して関数を書き込み試したところ
きちんと表示されました。

以下のように使用しています。
<a href="http://twitter.com/home?status=
=%5b{XT_LOG_ETITLE}%5d%20{XT_LOG_TWEET}%20{LOGURL}" target="_blank"><img title="この投稿をTwitterでつぶやく" src="アイコンのURL"></a>

どうもありがとうございました。m(_ _)m

| dimag5 | URL | 2011/04/17 12:00 PM | 9Wdc1Fnk |

上手く動作したようで良かったです。
参考までにお聞きしたいのですが、最初に書いた改造方法で文字化けせずに済みましたか?それとも念のため書いた urlencode が必要でしたか?

| CJ | URL | 2011/04/17 11:00 PM | zCiH8igE |

CJさん

こんにちは。
便利なモジュールを利用させてもらいありがとうございます。

Twitterにツイートする機能を実現することができましたが、{LOGURL}がそのまま表示されるため、140文字と言う制限内ではなかなか厳しいものがあります。
短縮URLサイトに飛ばして吐き出された短縮URLを表示するような独自タグを作ることはできるのでしょうか?
ほぼ素人なりに色々ググってみたのですが、解がでなかったので、ご教授いただけたらと思い、書き込みさせていただきました。

| tak55 | URL | 2011/04/20 12:52 PM | cpDi9LqQ |

> 短縮URLサイトに飛ばして吐き出された短縮URLを表示するような独自タグを作ることはできるのでしょうか?
それを実現するためには
1. 記事が投稿されたら短縮URLサイトにURLの短縮化をリクエストする
2. 短縮URLを取得する
3. 取得したURLをどこかに保存する
4. 短縮URLを表示する
という手順が必要になります。
タグ拡張モジュールには1~3番の機能が備わっていないので、短縮URLを出力するのは無理です。
ここまでくると別に新しいモジュールの開発が必要なレベルですね。

タグ拡張モジュールを使ってURLを少しだけ短縮化する方法は2つあります。
サーバーで mod_rewrite が使えるなら、例えばこのブログ記事 i-njoy.net/blog/index.php?e=607 を i-njoy.net/b/607 でアクセスできるようにすれば15文字節約できます。

もう1つはリダイレクトする特別なPHPファイルを置くという方法もあります。
i-njoy.net/b.php?e=607 で飛ばすようにすれば9文字の節約になります。

これら2つの方法のメリットは独自タグ {XT_LOG_EID} を使えば現時点でも実現可能な事です。
デメリットは文字数があまり短くならないことです。

| CJ | URL | 2011/04/20 11:39 PM | zCiH8igE |

CJさん

早速のお返事ありがとうございました。
やっぱり拡張モジュールだけじゃ無理でしたね。
でも、代替案をいただきありがとうございます。
自分が使ってるサーバーがmod_rewrite使えるようなので、チャレンジしてみます。
重ねて御礼もうしあげます。m(_ _)m

| tak55 | URL | 2011/04/21 02:27 PM | .w8nzT4M |

もうちょっと調べてみたのですが、Twitter 公式のツイートボタンのページで生成されたコードを使えば、記事 URL が自動的に短縮 URL にならないでしょうか?
Twitter のアカウント持っておらず未確認なため、あまり自信はありませんが。

http://twitter.com/goodies/tweetbutton

設定としては
・ボタン → 3種類から好きなのを選ぶ
・ツイート内テキスト → {XT_LOG_ETITLE} : {XT_LOG_TWEET}
・URL → {LOGURL}
・言語 → 日本語

注: 独自タグ {XT_LOG_TWEET} はタグ拡張モジュール要改造の記事本文の頭を抜きだす新規タグ。詳しくは4月16日の僕のコメントを参照。

| CJ | URL | 2011/04/22 11:46 PM | zCiH8igE |

CJさん

こんにちは。
文字バケせず投稿できましたので
urlencodeは必要ありませんでした。
どうもありがとうございました。

tak55さん
横から申し訳ありません。
CJさんが上で書かれてるとおりでtwitter公式の短縮URL「t.co」へ変換されます。
自作ボタン等を使いたい場合は
http://twitter.com/share?url={LOGURL}&amp;text={XT_LOG_ETITLE}:{XT_LOG_TWEET}&amp;via=[Twitterアカウント名]"
target="_blank">画像URLまたはテキスト
</a>
で使用できます。
公式で取得するコードの「widgets.js」は必要ありません。
タイトルと本文頭を区切ってる「:」は「%81F」と記述した方がいいと思います。

| dimag5 | URL | 2011/04/24 08:14 AM | 9Wdc1Fnk |

何度もすいません。
{XT_LOG_TWEET}をFacebookのシェアボタンにも
使えます。
<a href="http://www.facebook.com/sharer.php?u={LOGURL}&amp;t={XT_LOG_TWEET}" target="_blank" >画像URLまたはテキスト</a>

| dimag5 | URL | 2011/04/24 08:29 AM | 9Wdc1Fnk |

dimag5 さん、補足どうもありがとうございます。
折角なので、{XT_LOG_TWEET} を追加したバージョンを公開しようと思います。

> タイトルと本文頭を区切ってる「:」は「%81F」と記述した方がいいと思います。
公式のツイートボタンのページで入力する分にはエンティティ化しなくても大丈夫だと思います。
自作ボタンを使いたい時のコードでは「%81F」した方が良いですね。

| CJ | URL | 2011/04/24 03:37 PM | zCiH8igE |

CJさん

ご無沙汰しております。
今年に入って突然文字バケするようになったので
上に書いて頂いてた
タグ拡張モジュールfunction.phpの
------------------------------
$skin = str_replace("{XT_LOG_TWEET}", $twit, $skin);
}
------------------------------

------------------------------
$skin = str_replace("{XT_LOG_TWEET}", urlencode($twit), $skin);
------------------------------
へ書き換えたら文字バケしなくなりました。
どうもありがとうございました!

それから、amazonやアドセンス等の広告をブログの
最初の記事だけに表示させるのはindex.phpを改造しないと
出来ないでしょうか?

お忙しい所申し訳ありませんがよろしくお願い致します。

| dimag5 | URL | 2012/04/23 05:02 PM | MtyrO012 |

アドセンスのコードを {LOG}~{/LOG}の中に挿入すると、初期表示時に記事表示件数分アドセンスのコードが呼び出され、そうすると1ページ内に表示可能の3個を超えてしまうので、それを防ぎたいという事でしょうか?

そういう事なら「お知らせ表示モジュール」を使えば、いけると思います。
http://i-njoy.net/tips/plus_pst.shtml

広告用コードをお知らせとして登録し、個別記事表示時を「表示」にし、それ以外の初期表示時等は「非表示」にすればいいかと。
ただし、初期表示時に最初の記事にだけお知らせを表示するという設定はありませんが、別設定のお知らせも用意しておくといいでしょう。

| CJ | URL | 2012/04/23 11:38 PM | ndFUm5dg |

CJさん

レスありがとうございます。
おっしゃる通り3個を超えるので防ぎたかったのですが
教えて頂いた「お知らせ表示モジュール」を使えばいいんですね!
現在使わせて頂いてるので「お知らせ2」でアドセンスを使おうと思います。

お忙しいところどうもありがとうございました。

| dimag5 | URL | 2012/04/25 11:04 AM | MtyrO012 |

CJさん

はじめまして。沢山のモジュール利用させてもらってます。ありがとうございます。

blogn+のログインモード時でコメントを書く時に、利便性を考えてname部分に自動でユーザー名を入力できるようにしたいのですが、例えば{XT_MODE}のような独自タグで、ログインモードの時は「user」と出力となっているのを、現在ログイン中のユーザー名に置き換える事は可能でしょうか。

お忙しい所申し訳ありませんがよろしくお願い致します。

| ittetsu | URL | 2012/06/05 04:07 PM | sViJ0ono |

たしかにコメントの名前欄にあらかじめユーザー名が記入されていたら便利ですね。
ログインしている場合にユーザー名を引き出す事は可能と思うので、次のパージョンで導入したいと思います。少々お待ちください。

| CJ | URL | 2012/06/05 11:00 PM | ndFUm5dg |

CJさん

レスありがとうございます。次回バージョンぜひよろしくお願いします。自分でも代理店を通じて問い合わせした所、

$objBlognPlus->user_name;

という変数が関係あるようなのですが、なにぶんにも素人なもので、色々と試してはみたのですが、HTMLやPHPの中にどのようにして組み込んでよいのかもわかりません。ぜひ詳しい方にお力になって頂けると助かります。よろしくお願いします。

| ittetsu | URL | 2012/06/07 03:23 PM | sViJ0ono |

タグ拡張モジュールにこの新機能を付けてテスト中に、ちょっと問題が見つかりました。
BlognPlus の独自タグに Cookie に保存してある投稿者名を引き出す{CNAME}という独自タグがあるのですが、モジュールの新機能とバッティングする事が判明しました。
モジュールの新機能として導入するには汎用性が乏しいと判断したため、バージョンアップは見送らせてください。

その代わりと言ってはなんですが、モジュールの改造方法をお教えしますので、改造してお使いいただければと思います。
BlognPlus v2.6.8 Text版で動作確認済みです。v2.5.x では動きません。

/xtratags/xtratags.php の PHP 終了タグ ?> の1行上に以下の4行を追加してください。

if ($objBlognPlus->user_key) {
$blogn_mod_xtratags_user = blogn_mod_db_user_profile_load($objBlognPlus->user_key);
$blogn_skin = str_replace("{CNAME}", $blogn_mod_xtratags_user["name"], $blogn_skin);
}

スキンにはあらかじめ{CNAME}という独自タグが入っているはずなので、スキンの変更は不要です。

この改造を施すとコメントの投稿者名欄の動作は以下の通りになります。
1. ログイン済み&Cookieに登録 → ログイン名が使われる
2. ログイン済み&Cookie未登録 → ログイン名が使われる
3. ゲスト&Cookieに登録 → Cookieに登録した投稿者名が使われる
4. ゲスト&Cookie未登録 → 空白

| CJ | URL | 2012/06/09 02:10 PM | ndFUm5dg |

コメントする(半角1000文字まで)

Cookieに登録

最新記事

人気記事

月別アーカイブ

コメント

カテゴリー

リンク

発売スケジュール

2018/09/15

ニンテンドークラシックミニ ダブルパック 【Amazon.co.jp限定】オリジナル版『スーパーマリオブラザーズ』風説明書+オリジナル版『F-ZERO』風説明書+オリジナル壁紙 配信

2018/09/27

すばらしきこのせかい -Final Remix-(Amazon.co限定「特製スリーブケース」付)

2018/10/04

ロックマン11 運命の歯車!! コレクターズ・パッケージ amiibo同梱版 - Switch (【予約特典】『ワイリーナンバーズ・ステージ楽曲 アレンジバージョン』ダウンロード番号 同梱) 【Amazon.co.jp限定】オリジナルメタルキーホルダー(E缶アイコンデザイン) 付&オリジナルデジタル壁紙(PC・スマホ) 配信

2018/10/05

DQ11 過ぎ去りし時を求めて ブリングアーツ 主人公

2018/10/17

FINAL FANTASY IV ORIGINAL SOUNDTRACK REVIVAL DISC(映像付サントラ/Blu-ray Disc Music)

2018/10/17

ゼルダの伝説 ブレスオブザワイルド カードキャンディ (20個入) 食玩・キャンディ (ゼルダの伝説 ブレス オブ ザ ワイルド)

2018/11/08

ルイージマンション -3DS

2018/11/16

Nintendo Switch 大乱闘スマッシュブラザーズ SPECIALセット

2018/12/07

大乱闘スマッシュブラザーズ SPECIAL - Switch (【Amazon.co.jp限定】オリジナルラバーコースター 同梱)

2018/12/20

鬼武者 - Switch

2019/12/27

マリオ&ルイージRPG3 DX -3DS

2019/01/11

マリオ&ルイージRPG3 DX -3DS

2019/01/25

キングダム ハーツIII 【Amazon.co.jp限定】 オリジナルPS4用テーマ(Amazon) 配信