wordpress
wordpressに関する内容を書いてます。
管理メニューを必要ないとき隠す
1WordPress3.1からの新機能の管理メニューは便利ですが、出しっぱなしだと結構じゃまになってきます。
そこで必要無いときに隠したいなあと思い、色々作ってみました。
WordPress3.1と管理メニュー
2WordPress3.1がアップデートされて、管理メニューというのが追加されました。
これを有効にすると、ログイン中は上部にメニューが追加され、そこから投稿をしたりページを編集したりできます。
これが非常に便利そうなので色々調査してみました。
WordPress3.1と投稿フォーマット
0WordPress3.1がアップデートされました。
まるでWindows3.1みたいだなあと思ったのは自分だけでしょうか?
早速新機能を色々チェックしていきたいと思います。
とりあえずあまり使う機会はなさそうですが投稿フォーマットの仕様について軽く調べてみました。
googlemapを使い緯度経度をカスタムフィールドに入れるプラグイン
0座標を指定してGoogleMapにマーカーを配置しているのですが、投稿時にGoogle Maps Anywhereを選び、カスタムフィールドに保存を選ぶのが面倒だなーと思い、いい感じのプラグインが見つからなかったので自分で作ってみました。
インストールしてAPIキーと出力する投稿タイプを選ぶと下にGoogleMapが表示されます。
その状態でマーカーを移動して座標を選び投稿を保存すると自動で座標の値がLat_Longに保存されます。
後はそれを自分でGoogleMapを作成して配置すればOKです。
低機能、シンプル、軽量を目指して作ったつもりが、別ウインドウではなく投稿画面に表示するので重くなった気がする。
まあ自分の都合で作った物なのであまり気にしてませんが、もう少し考えて作った方がよかったかな。
カスタムフィールドテンプレートでデータをグループ化と表示非表示を追加する。
0カスタムフィールドテンプレートプラグインには非常に多彩なオプションがありますが、そのオプションの説明がとても少ないです。
その中のこっそりした機能の一つにグループ化というのがあります。
これはグループ化した部分をfieldsetで囲む機能で
[グループ1]
type = fieldset_open
legend=ぐるーぷ
[項目1]
type = text
[グループ1]
type = fieldset_close
のようにfieldset_open~fieldset_closeまでの間の項目がグループ化されます。
そしてグループ化したついでにそのグループをクリックで表示オンオフにしようというカスタマイズをします。
(さらに…)
ktai entryで@以前にピリオドがある場合の対処とカスタム投稿へのポスト
1メールからWordpressに投稿したいとのことでKtai entryを導入したのですがどうも上手く動作しません。
おかしいなとメールを調べてみるとメールアドレスが aaa..bb@cc.jp なのに “aaa.bb”@cc.jpで受け取っているのが原因のようです。
これはWordpressではなくメールサーバーの仕様らしいですが、@以前にドットが二個連続で続くか、@の直前にある場合は@以前を””で囲んで表示されるそうです。
そもそもそんなメールアドレス登録できるのか?と思ったのですがどうも携帯だとできるようですね。
そういうわけで受信メールアドレスは”aaa..bb”@cc.jpで、ユーザーとして登録されているのはaaa..bb@cc.jpだったためにユーザー不一致で登録できなかったようです。
というわけでktai entryの一部を変更。ついでにメール投稿だと投稿にしか投稿できなかったのでカスタム投稿に投稿できるようにも変更しました。
(さらに…)
メール投稿とマルチサイト
0とあるサイトでメール投稿ができるように設定をする必要ができました。
しかし設定画面をみてもメール投稿のオプションが存在しない。おかしいな。Wordpressのバージョンが違うからかな?とうろうろしたもののみつからない。
ふと気が付くと、そのサイトはマルチサイトでした。どうもマルチサイトだと設定周りの一部は特権管理者のサイトの部分に移動してしまうようです。
でもオプション名が全部英語で表示されているので調べるのが大変です。まあなんとなくニュアンスでわかりますが。
Welcartでテーマを編集したときに改行がおかしくなるバグの修正
0いつからか、テーマエディタから改行コード \n を含めてコードを記入すると編集後に n だけになって改行がされないという不具合に悩まされてました。
どうやらwelcartのバグだったらしく、最新バージョンでは直ったらしいので安心して作業してみると・・・直ってない。
どうもプラグイン編集の場合は修正されてたようですがテーマ編集の時のほうは直ってなかったようです。
詳しい修正方法は下記のページにのっていますが
http://www.welcart.com/forum/topic.php?id=498
usc-e-shop/classes/usceshop.class.php の1551行目あたりの
if( isset($_POST) && 1 !== preg_match('/plugin-editor\.php/', $_POST['_wp_http_referer']) ){
を
if( isset($_POST) && 1 !== preg_match('/(?:plugin|theme)-editor\.php/', $_POST['_wp_http_referer']) ){
に修正すればテーマエディタの方も直るようです。よかったよかった。
サイトの記事数をカウントするwp_count_posts
0かちびとさんのサイトでお手軽WordPress Tips:総コメント数を表示させるコードというサイトのコメント数を取得できる方法が乗っていました。
なるほど。考えてみるとサイトのコメント数を取得しようと考えたことはないですが、レビューサイトなどにはあると便利なのかもしれませんね。
自分も他の作業で色々調べたときにいろんな物をカウントする関数を探していたのでそれをいくつか紹介
・記事数をカウントするwp_count_posts
wp_count_posts(’投稿タイプ’)でその投稿の投稿数を取得できます。引数が空の場合はpostが選ばれます。
例:)echo wp_count_posts(); //投稿の投稿数が表示されます。
例:)echo wp_count_posts(‘page’) //ページの投稿数が表示されます。
・特定のmimeタイプの件数を取得するwp_count_attachments
wp_count_posts(MIMEタイプ)でサイト全体のMIMEタイプの数を取得できる。まあ主に画像の総数を調べるのに使える。返り値はオブジェクトなので注意。
例:wp_count_posts(‘image’);で各画像の総数がオブジェクト形式で取得可能
Object ( [image/gif] => 13 [image/jpeg] => 11 [trash] => 0 ) という形で収納されている。
・記事のコメント数を数えるwp_count_comments($post_id)
特定記事のコメント数を数える。これはサイト全体ではなく記事単体になる。残念。