お久し振りです。こちらでお伺いするのも、かなりお門違いかもしれませんが・・・Wordpressモジュールには、全記事一覧を表示する機能がないので、Nicer Archives を利用しようと画策中なのですが、ここで一つ問題が発生しております。単独で動作する分にはいいのですが、ヘッダとフッタのファイルを読み込んでしまうとオプション設定の「posts per page」を反映してしまい、全記事が表示されなくなってしまいます。これを全記事一覧表示できるようにするには、どのようにすれば良いのでしょうか?ソースには、「$posts_per_page = '-1';」という表記があるのですが、これで制御がうまく行われているかどうかは不明です。何でも結構ですので、アドバイスを頂ければ幸いです。よろしくお願い致します。
引用:Wordpressモジュールには、全記事一覧を表示する機能がないので、Nicer Archives を利用しようと画策中なのですが、ここで一つ問題が発生しております。単独で動作する分にはいいのですが、ヘッダとフッタのファイルを読み込んでしまうとオプション設定の「posts per page」を反映してしまい、全記事が表示されなくなってしまいます。Nicer Archivesに関しては、少し前に見つけて面白そうだなぁと思った覚えがあります。Benjaminさんがつけられたヘッダとフッタというのは、元のソースのをHTMLBODY部分だけの処理にして、テーブル名は、XOOPSのモジュールで使っている$wp_db->posts[$wp_id]等のような形式に変更した後に <?php include('header.php'); ?> : もともとのソース : <?php include(XOOPS_ROOT_PATH."/footer.php"); ?> というような修正を行われたという事だと思いますが・・・たしかにこれだと、出力件数が制限されてしまいますね!で、「$posts_per_page = '-1';」ってのにヒントを得て <?php $posts_per_page = '-1';include('header.php'); ?> : もともとのソース : <?php include(XOOPS_ROOT_PATH."/footer.php"); ?> というように、ヘッダ呼出前に「$posts_per_page = '-1';」を宣言してやると、BINGO!うまくいきましたよ!とりあえず、テスト不完全ですけど、小生のサイトでテストしたソースを、[narchives.zip]にアップしておきますね!動作例は、動作例にて確認して頂けると思います。
Wordpressモジュールには、全記事一覧を表示する機能がないので、Nicer Archives を利用しようと画策中なのですが、ここで一つ問題が発生しております。単独で動作する分にはいいのですが、ヘッダとフッタのファイルを読み込んでしまうとオプション設定の「posts per page」を反映してしまい、全記事が表示されなくなってしまいます。
<?php include('header.php'); ?> : もともとのソース : <?php include(XOOPS_ROOT_PATH."/footer.php"); ?>
<?php $posts_per_page = '-1';include('header.php'); ?> : もともとのソース : <?php include(XOOPS_ROOT_PATH."/footer.php"); ?>
のぶのぶ様いつもありがとうございます。やはり、「$posts_per_page = '-1';」がキーだったようで・・・。自分のサイトでも動作確認がとれました!あと、ついでと言っては何なのですが、タイトルでソートした時に日本語でソートが効くと良いのですが・・・もうちょっと頑張ってみます!
引用:あと、ついでと言っては何なのですが、タイトルでソートした時に日本語でソートが効くと良いのですが・・・これは、小生も同感でして・・・PukiWikiModでのKakasiを利用した一覧を参考にして、とりあえず日本語ソートも組み込んでみました。但しKakasiまかせなので間違った読み方をする場合もありますが。まだ小生の環境に依存しまくったコーディングなのでもう少し整理してサンプルとしてリリースしますね!但し、Kakasiをかましたぶん、表示が遅くなっていますが・・・ [日本語ソートのサンプル]
あと、ついでと言っては何なのですが、タイトルでソートした時に日本語でソートが効くと良いのですが・・・
のぶのぶ様素早い対応に感服です。PukiWikiModについては、まだノータッチの状態でしたのでKakasiを利用した日本語ソートというのは全然知りませんでした。サンプルの公開、心待ちにしております!
いよいよサンプルが公開されましたので、早速試してみました。kakasiを使用しない場合の動作は問題ないようなのですが、kakasiを使用すると、「A」や「あ」といったようなインデックスが表示されずかつ、並び順もおかしくなってしまいます。適当なパスを入れると、使用しない場合と同様の動作をするので、どうやらkakasiまでのパスは通っているように感じられるのですが・・・。PHPデバグ上、notice程度のエラーしか発生しておりませんし、Windows環境に何か問題があるのでしょうか。ちなみに、私の環境は以下のとおりです。OS : Windows2000 ProWeb : Apache 2.0.51PHP : 4.3.2MySQL : 3.23.49XOOPS : 2.0.7動作は、コチラで確認できます。
引用:kakasiを使用すると、「A」や「あ」といったようなインデックスが表示されずかつ、並び順もおかしくなってしまいます。少々気になる部分が見つかりましたので、修正版をアップし直しました。再度、Sortable Nicer Archiveを使用したいよりダウンロードしなおして頂けませんでしょうか。
kakasiを使用すると、「A」や「あ」といったようなインデックスが表示されずかつ、並び順もおかしくなってしまいます。
いつも素早いご対応に感謝しております。早速、修正ファイルをダウンロードし直してみましたが、動作に変わりはないようです。うーん・・・。どなたか私と似たような環境で同様の悩みを抱えている方はいらっしゃらないんですかねぇ・・・。参考になるかどうかは分かりませんが、kakasiのパスについて私の場合、Cドライブ直下にディレクトリをおいてますが、「C:/kakasi/bin」「/kakasi」「/kakasi/bin」としても全て同様の状態になるようです。これは関係ないですかねぇ。
いぇい!待望の一覧表示ありがとうございました 早速インストールさせてもらいました。質問はリンク方法の件なのですが、うちのサイトだと「http://www.chu-site.com/modules/wordpress/nkarchives.php」ってURLになると思うのですが、これをindex-template.phpではなく、XOPPSメインメニューの中に入れられないでしょうか。説明うまくできないのでイメージを書きますメインメニュー news forum wordpress ∟一覧表示 ∟Blogを書く weblink faqこんな感じで「一覧表示」を表示してここからリンクしたいのです。すいません、説明べたで わかってもらえたでしょうか。
引用:質問はリンク方法の件なのですが、うちのサイトだと「http://www.chu-site.com/modules/wordpress/nkarchives.php」ってURLになると思うのですが、これをindex-template.phpではなく、XOPPSメインメニューの中に入れられないでしょうか。wordpress/xoops_version.phpの52行目からの if($xoopsUser){ $modversion['sub'][1]['name'] = _MI_WORDPRESS_SMNAME1; $modversion['sub'][1]['url'] = "wp-admin/post.php"; } を $modversion['sub'][1]['name'] = "一覧表示"; $modversion['sub'][1]['url'] = "nkarchives.php"; if($xoopsUser){ $modversion['sub'][2]['name'] = _MI_WORDPRESS_SMNAME1; $modversion['sub'][2]['url'] = "wp-admin/post.php"; } に変更して、文字コードEUC-JPにて保存してやれば良いと思います。本来なら、上記の一覧表示という文字列はlanguage以下の言語ファイルで定義すべき内容なのですが、個人で使われるのならこれで十分だと思います。
質問はリンク方法の件なのですが、うちのサイトだと「http://www.chu-site.com/modules/wordpress/nkarchives.php」ってURLになると思うのですが、これをindex-template.phpではなく、XOPPSメインメニューの中に入れられないでしょうか。
if($xoopsUser){ $modversion['sub'][1]['name'] = _MI_WORDPRESS_SMNAME1; $modversion['sub'][1]['url'] = "wp-admin/post.php"; }
$modversion['sub'][1]['name'] = "一覧表示"; $modversion['sub'][1]['url'] = "nkarchives.php"; if($xoopsUser){ $modversion['sub'][2]['name'] = _MI_WORDPRESS_SMNAME1; $modversion['sub'][2]['url'] = "wp-admin/post.php"; }
引用:参考になるかどうかは分かりませんが、kakasiのパスについて私の場合、Cドライブ直下にディレクトリをおいてますが、「C:/kakasi/bin」「/kakasi」「/kakasi/bin」としても全て同様の状態になるようです。これは関係ないですかねぇ。関係ないというか、解決の糸口を見つけるのに大いに参考になりました。kakasiのパスという表現の仕方がまずかったのですが、Windows環境の場合はファイル名を拡張子を含めてフルパスで指定する必要があります。おそらくBenjaminさんは、 $kakasi = "c:/kakasi/bin/"; // kakasiプログラムのパス 環境によっては、/usr/local/bin/kakasi等 という様に指定されていると思いますが、これを $kakasi = "c:/kakasi/bin/kakasi.exe"; // kakasiプログラムのパス 環境によっては、/usr/local/bin/kakasi等 と書き換えて頂きませんか?kakasiの存在チェックでは指定されたものがファイルかディレクトリかという判別をしていなかったので、KAKASIモードは有効になったままで結果としては読みの抽出ができなかったという事になっているのではと思います。
参考になるかどうかは分かりませんが、kakasiのパスについて私の場合、Cドライブ直下にディレクトリをおいてますが、「C:/kakasi/bin」「/kakasi」「/kakasi/bin」としても全て同様の状態になるようです。これは関係ないですかねぇ。
$kakasi = "c:/kakasi/bin/"; // kakasiプログラムのパス 環境によっては、/usr/local/bin/kakasi等
$kakasi = "c:/kakasi/bin/kakasi.exe"; // kakasiプログラムのパス 環境によっては、/usr/local/bin/kakasi等
思った通りの表示になりました!いつも素早い対応、本当に感謝してますありがとうございました
お返事が遅れまして、すみません。「c:/kakasi/bin/kakasi.exe」というようにフルパスで指定したところ問題なく動作することを確認致しました。さすがに、拡張子まで含めたフルパスというのは試してませんでした。詰めが甘かったですね・・・。ご迷惑をお掛け致しました。
このプログラムは KENT 氏の yybbs を xoops(PHP) に移植したものです - KENT -