WordPress::ログインユーザのパスワードを忘れてしまった時の対処法

たま~にやっちゃう。パスワード忘れ。
そんな時には次の方法で対処します。

mysqlでパスワードを強制的に上書きする方法です。

update wp_users set user_pass=md5('newpassword') where id=xxx;

newpasswordの部分を書き換えて、idの「xxx」を該当ユーザのidを指定しましょう。

スラグ(slug)

URLで記事や投稿を特定する為の名前ベースの別称です。

例えばこのページのスラグは「wpword-slug」と命名しています。
それで、このサイトのパーマリンク設定は「投稿名ベース」になっていますので
http://labo.pls-ys.com/wpword-slug
でアクセスできることになります。

WordPress::ウィジェットエリアの考え方

テーマを作成する際に、ウィジェットエリアを設置するにあたっての考え方が間違っていたようなので備忘用に残します。

■正(ウィジェット概念ありきのウィジェットエリア)
1.ウィジェットのテンプレート(管理画面のウィジェット枠)を作る
2.表示したいところで1.のテンプレートを呼び出す

■誤り(エリアありきでウィジェットを管理)
1.themeのテンプレート上にウィジェットエリアを作る
2.ウィジェットエリアに表示する内容を管理画面で管理

うまく表現できないんだけど、ウィジェットを複数含んだウィジェットセットを幾つか作って、それをテーマから呼び出す。っていうのが基本的な考え方みたい。
今までは、表示域を決めて、そこに表示するウィジェットを管理画面で指定するんだと思ってました。

この思い違いによって何が起きてたかというと、
function.phpでregist_sidevar()するときに、表示域のIDが含まれないのでどうやってマッピングしてるのか理解できないでいました(^^;
逆だったのね・・・

WordPressのwp_postsテーブル

post_type

一般的な値

post
投稿
page
固定ページ
revision
リビジョン
投稿や固定ページの過去データ
attachment
画像の添付

それぞれのケースとレコードの関連

post_type post page
post_mime_type null null
post_parent たぶん0固定 0
親となる固定ページのID
wp_posts.id
post_title 自動下書き
入力したタイトル
自動下書き
入力したタイトル
post_name URL上の値 URL上の値
post_content 固定ページの内容 投稿内容
post_author 投稿したユーザ
wp_users.idの値
投稿したユーザ
wp_users.idの値
guid デフォルト形式のURL デフォルト形式のURL
menu_oder カスタムメニューで作成したメニューID
wp_term_taxonomy.term_taxonomy_id
カスタムメニューで作成したメニューID
wp_term_taxonomy.term_taxonomy_id

WordPressを移設

テストサイトから本番サイトへ移行する祭、DBもExport/Importして移設する際の注意事項を残します。

サイトを移設して最初に問題になるのが、管理画面にアクセスできない。ということです。
管理画面で修正しようにも、ログインしようとすると、移設元のページの管理画面が開いてしまいます。
この現象を回避するには、DBを直接編集して、次のように操作します。

■htaccessの修正
・RewriteBase、RewriteRuleを修正する

■DBの修正
・HOMEのURLを修正
update wp_options set option_value=’http://[サイトURL]’ where option_name=’home’;

・wpのURLを修正
update wp_options set option_value=’http://[サイトURL]’ where option_name=’siteurl’;

Wordpres標準の投稿(HTML)機能ってn2brしてくれちゃう?

さっき投稿してきがついたんですけど。。。WordPress標準の投稿(HTML)機能って改行するとBr挿入してくれちゃいますよね。
なんだかappleチックな雰囲気たっぷり。

HTMLエディタなのにBRタグは不要。。。
良くわからないコンセプト。。。確かに便利なんだけど、HTMLを書く画面で改行(\n)が
にに自動変換されちゃうって気持ち悪いと思うのは私だけなんでしょうか(^^;


<xmp>
itemList = new Array();
for(hoge in object){
  itemList[itemList.length] = hoge;
}
< /xmp>

ってかいたら


<br />
itemList = new Array();<br />
for(hoge in object){<br />
  itemList[itemList.length] = hoge;<br />
}<br />

って出てきてびっくり。

xmpタグを使うと、背景暗くして見やすくしてくれるけど、preで囲まないとなんかおかしくなる罠
で、このことにつて触れようとしたら、pre>xmp>xmp ってなっちゃって、/xmp>/xmp>
/preで閉じたら当然のごとく/xmpが入れ子(´・ω・`)

ですよねーなんて思いつつなかなかうまくいかない投稿なのでした