Archive for the ‘PHP’ Category

WordPressのカテゴリをドンドン追加していくと、意外とカテゴリの数が増えてしまう。
特に、wordpressをブログではなくCMSとして使用したいと思うと、
カテゴリの数が半端ないことになってしまったりする。

既存のカテゴリ一覧を表示するメニューを使ってもいいのだが、
記事よりも長いカテゴリメニューが出来上がってしまう。
というより、大事なサイドバーなどのメニューがカテゴリのせいで見えなくなってしまったりする。

ここで、アコーディオン式のメニューが作れないかなぁと思って、
まぁ、jQueryを使えば、なんとか自分でできるかなぁと漠然に思っていたのだが、
きっとよいサンプルがあるはずと思って、検索したところ、そのまんまのプラグインが
存在していた!
#やっぱり、自分が欲しいものっていうのは、人も欲しくなるよな~

↓こちらのサイトを参考にさせていただきました。

プラグインの検索で、「jQuery Categories List Widget」検索し、そのままインストール→有効化。メニューに「jQuery ~」というメニューが追加されているので、それを貼り付けてやればあっという間にできた。

WordPressでいろいろ遊んでいるが、
カスタム投稿が可能になっており、
その投稿自体をXML-RPCでできないかいろいろ調べたところ、
下記のサイトを参考に読ませていただいた。

XMLRPCでWordPressのカスタム投稿タイプに投稿する | WEBPAPRIKA

なるほど、post_typeがpageかpostしか対応していないから、
その部分を追加してあげなきゃいけないのか!!

ただ、ソースいじるのか。。。
もう少し、気が乗ったらにしようかと思いながら、ちょっと公式の資料でも見ようかと思いたち、

XML-RPC WordPress API/Posts « WordPress Codex

を読んでみたら、
wp.newPostの部分にpost_typeの説明に登録されているタイプと書かれているから
これは行けるのではと思い、
簡単なサンプルをネットから拝借させていただき、該当部分だけ変更し、
実行したところ、ちゃんとカスタム投稿に登録されていた!!

ちなみに、Wordpress3.4から対応しているようです。

WordPressに投稿しようと思ったら、
wp.newPostでごにょごにょしたらできることが分かった。
基本スクリプトからしか呼ばないし、
汎用ツールでもないからこれでOKかと

ただ、リンクの文字列を返すだけのプラグインを作ってみた。

ぶっちゃけHelloWorldと同じようなレベル。。。

 

しかし、以下のWarningが出てしまい、ログイン画面や管理画面が出てこない場合があった。

#ただし、通常の記事は見えている。

 

Cannot modify header information – headers already sent by (output started at /wordpressのパス/wp-content/plugins/プラグインのファイル名.php:21) in /wordpressのパス/wp-includes/pluggable.php on line 865

ヘッダーが出力される前に変な文字列が出力されてしまっていますよ。その場所はプラグインの21行目ですよ。といわれている。

 

当然、作成したプラグインのスクリプトが悪いに決まっている。

#使用を停止すれば、普通に動くし、初心者がネット見ながらやってるから。。。

 

スクリプトを見直しても、別段悪い箇所はなさそうである。

いろいろ検索をしたが、

Unicodeで保存した場合にBOMがついてしまっている場合は、これが発生するらしい。

 

ただ、自分のソースは、BOMはついていない。

普段使用しているエディタでつかないようにしている。

 

う~ん。。。こんな感じなんだけどなぁ~

  1. <?php
  2. /*プラグインの情報*/
  3. function helloworld(){
  4. echo "hello world";
  5. }
  6. ?>  

 

と、よくよく見てみると、

最後の「?>」の後ろにスペースが入っている!!

消したらビンゴ!!

Warningはなくなりました。

 

こんなんでずっとはまっていた自分が恥ずかしい。。。

PHPに慣れている人にとってみたら、当然のことかもしれないけど、忘れないようにメモを残しておこう。。。

  1.  function hello_world(){ echo "hello world" }