Home > Personal > サイト制作 記録

サイト制作 記録 Archive

WordPressでエントリーが削除できないときの対処法

wordpress LOGO

今日、TwitterにPOSTしたものをまとめてこのブログに投稿するプラグインを入れたのですが、間違ってPOSTするたびにエントリーとして投稿するような設定にしてしまい大量にエントリーされてしまいました(’A`)

これはイカン!ということで、プラグインの設定を変え、間違って投稿されてしまったエントリーを削除しようとしたら・・・!

なんとエントリーを削除しようとすると、「あなたにはこの投稿を削除する権限がありません。」というエラーが出てきます。もちろん、ログインしているアカウントは管理者権限なので「???」と軽くパニック!

削除は出来ないものの、「エントリーの編集」と「投稿ステータスの変更」は出来たので一時的に草稿に変えて原因を調べていたのですが、なかなか見つからずTwitterにポストしてみました。

すると、心優しいついったったーの人から色々レスがっ!

その中で、@lomoさんがピンポイントのエントリーを教えてくれました!
Way2Go » Blog Archive » 削除できない不具合

不具合は、管理者でログインは出来ていても、記事の削除も出来なく、管理画面で「削除」ボタンも出なくて、削除しようとすると、
「あなたには権限がありません」が出ていました。

MySQLデータベース内の、wp-options–>wp_user_rolesの中身に、”delete_*”の記述が消えていたのが原因でした。

Way2Go » Blog Archive » 削除できない不具合

この記述を見て、自分もphpmyadminでMySQLの中身を見てみると、確かに無いっ!

この他にも、幾つか正規の記述が消えていたので、さらに別Wordpressから、wp_user_rolesの中身をコピーしてきました。

この操作を行うときには、ユーザ名とパスワードを一致させておかないとログイン出来なくなるので、注意が必要ですね。

Way2Go » Blog Archive » 削除できない不具合

要するにwp_user_rolesを書き換えれば良いのですが、元がどうなっていたのか不明なので自分も新規で1つブログを立ち上げて、そこからwp_user_rolesの中身をコピペしたら見事解消されました。

サーバー移転したので、そのタイミングでwp_user_rolesの中身が書き変わったのか、それともプラグインを入れたせいなのか・・・原因は不明ですが、解決方法がわかったのでとりあえずよかったです。

ついったったーの皆様、ありがとうございました。

おまけ

Twitter / lomo: @suniti お!よかったね!削除できないと焦るよね...

と強要されたので、宣伝いたしますっ!みんなクリッククリック!

@lomoのMyMiniCity
http://lomochang.myminicity.com/

フィードを全文配信にしました。

遅せぇよ!と言われそうですが・・・全文配信にしました。

MovableTypeからWordPressに変更した際に、概要だけになっていたので全文配信に変更しました。

wordpressインストールフォルダにあるwp-rss2.phpを開いて、
<content:encoded><![CDATA[<?php the_content_rss('', 0, '') ?>]]></content:encoded>
というところを
<content:encoded><![CDATA[<?php the_content_rss('', 0, '', 0, 3) ?>]]></content:encoded>
としてやります。

参考サイト
[WordPress] RSS Feedを全文配信にするカスタマイズ

今更ドメイン名の由来を書いてみる。

2007_05_13.gifちょっと今更感が強いけど、2xupさんのエントリーに便乗してドメイン名の由来を書いてみる。

読み方はグレイアッシュ(GRAY ASH)。

高校生のときに放送されていたカウボーイビバップというアニメのSession#8「ワルツ・フォー・ヴィーナス」の回で出てきた花の名前が「Grey Ash」という名前だったので、そこからもらいました。

ん?

スペル違くね?

素で間違えてました\(^o^)/

サイト公開した後にスペルミスが発覚したのですが、公開した後だったのでそのまま押し通すことに・・・w

そんな間抜けな由来でした(´・ω:;.:…

GRAYASH更新。

上の写真を含め3枚追加。

モノクロ風(セピアに近い)にしたのは初めてだ(笑)
完全なモノクロ系の写真を作る(補正)のは非常に難しいことがよくわかった。

完全にモノクロにするには、やっぱり写真を撮る段階で結構光加減を考えないとダメダメだわ。モノクロを少し甘く考えてた自分に反省・・・勉強が足らんのぅ・・・

GRAYASH.COM始動!!

というわけで(?)1年半ぶりにgrayash.comをリニューアルさせ、始動させました!!

かなり”今更”な感じなんですが、昨日今日と仕事で待ち時間がかなりあったので、ちゃちゃっと作って動かせました。
基本的には写真をメインでやろうと思っていたので、それ以外の物はなるだけ排除。

実作業時間は4時間くらいだから、出来はあまり良いものでは無いけれどとりあえずコレで。
いずれは、写真切り替えの場面でフェードイン、フェードアウトさせようかと思ってます。

今の段階では、XMLに写真のURLとテキストの位置、テキストの内容、テキストの色などを読み込ませて表示させてるだけなので、非常にシンプル(すぎるw)な感じ。
最終的にはもうちょっとブラッシュアップさせたいけど、これ以上コンテンツも無いしなぁ・・・

タイトルとコメントは読んでもらえればわかると思うのですが・・・適当英語です。始めは、日本語でタイトルをつけたかったんだけど、デバイスフォントは嫌だし、かといって日本語フォントを埋め込むと4MBくらいに容量が跳ね上がっちゃうし・・・。などと考えた挙句、英語のみって事になりました。フォントを埋め込んでトータル34KBだから軽いね。

まぁ、そんなわけでこのBlogと写真メインの本サイトともどもよろしくお願いします。

P.S. なぐ先生へ
文字の載せ方はかなりパクらせてもらいました(苦笑)

CSSの振り分け(JavaScript編)

JavaScriptでCSSを振り分けるスプリクト。
やり方はいろいろあるけど、ウチはこんな感じです。
IEだけFontSizeが違うからそれを回避するために、IE用にCSSを1枚作ってます。

//ブラウザの名前とバージョンを取得&代入
var detect = navigator.userAgent.toLowerCase();

//各変数の宣言
var OS,browser,version,total,thestring;

//取得した値から判別したいブラウザの名前が入っているか判別
function checkIt(string){
place = detect.indexOf(string) + 1;
thestring = string;
return place;
}

//ブラウザチェック
if (checkIt(’konqueror’)){
browser = "Konqueror";
OS = "Linux";
}
else if (checkIt(’safari’)) browser = "Safari";
else if (checkIt(’omniweb’)) browser = "OmniWeb";
else if (checkIt(’opera’)) browser = "Opera";
else if (checkIt(’webtv’)) browser = "WebTV";
else if (checkIt(’icab’)) browser = "iCab";
else if (checkIt(’msie’)) browser = "InternetExplorer";
else if (!checkIt(’compatible’)){
browser = "Netscape Navigator";
version = detect.charAt(8);
}
else browser = "An unknown browser";

//各ブラウザのバージョンチェック
if (!version) version = detect.charAt(place + thestring.length);

//OSチェック
if (!OS){
if (checkIt(’linux’)) OS = "Linux";
else if (checkIt(’x11′)) OS = "Unix";
else if (checkIt(’mac’)) OS = "Mac";
else if (checkIt(’win’)) OS = "Windows";
else OS = "an unknown operating system";
}

//ユーザーの環境に合わせてCSS書き出し
//WindowsのIEを使っている人はIE用のCSS
if((OS=="Windows") && (browser=="InternetExplorer")){
document.write(" <link href=\"http://blog.grayash.com/css/ie.css\" rel=\"stylesheet\" type=\"text/css\" /> ");
}
//それ以外は普通のCSS
else{
document.write(" <link href=\"http://blog.grayash.com/css/default.css\" rel=\"stylesheet\" type=\"text/css\" /> ");
}

って感じ。
でもさ、よく考えたらウチは全ファイルPHPだから、PHPで振り分ければいんだよね・・・
この前まで、全然気がつかなかった・・・^^;
今度作り変えるかな〜。

ランダムいめーじ。(PHP編)

ウチのサイトで使ってるランダムいめーじのプログラム。

・JavaScriptで組んだ場合と比べた場合の利点
写真をフォルダに投げ込めば完了というお手軽さ。

・デメリット
サーバーがPHP対応してないと駄目。
画像のサイズを統一しないと駄目。

<?php

//画像が入っているフォルダ(相対パス指定)
$imagedir = "./image_photo/";

//カウンター用変数
$i=0;

//ループ(指定したフォルダのJPGを読み、そのファイル名を配列に代入)
foreach (glob("$imagedir*.jpg") as $filename[$i])
{
//画像の総数を判定するためにインクリメント
$i++;
}

//最後にインクリメントされた余計な分をデクリメント
$i–;

//0から画像の総数-1までの範囲内で乱数を生成。(-1は0から数えているため)
$ransu=rand(0,$i);

//HTMLに書き出す。
echo "<img src=\"$filename[$ransu]\" width=\"720\" height=\"200\" alt=\"Photo\" />";
?>

とまぁ、こんな具合。
プログラム自体は更新する必要が無いから、ラクチンだね。

まぁぶっちゃけるとランダムイメージなんて不確定な代物は通常使う機会が無いってことよ(笑)

ちょこっとリニューアル

とりあえず、リニューアル終了〜!
左メニューから右メニューに変えました。
その他はLOGO周りのスペースを変更したりと細かいものばっかりです。
前回メモったバグ、未実装も結構直しましたよ!

■バグ
・IEに限りコメントが投稿できない。(HTML)
・IEに限りPagetopでスクロールしない。(JavaScript)

■未実装
・About、ShoppingListBookmarks、Contactsへのリンク&コンテンツが無い。
・サイト全体のXMLデータが作られていない。(最近のエントリーじゃない場合がある)
・MonthlyArchivesに飛ぶことができない。(JavaScript)
・Font周りをIE5.5でちゃんと思い通り表示させる。(IE5.5以外の古いブラウザは切り捨て。)(JavaScript&CSS)
・引用タグの再定義(CSS)
・カテゴリーページ、Monthlyページを分割させる。(PHP)
・エントリー投稿画面に引用タグボタンを追加、URLボタンのソースを書き換え。(CGI)
・サイト全体のスリムアップ(画像、ソース)
・上記に関連してTableレイアウトからCSSレイアウトへ戻す。(HTML&CSS)
・左メニューをスクロールさせる。(JavaScript&CSS)
・イメージエリアの写真をランダム表示させる。(PHP)
・MovableTypeへのリンクが無い(HTML)

こんな具合で、結構減りました。

その他の細かい部分としては、
・HTMLからXHTMLに戻した
・CSS周りの見直し(カラーとかフォントサイズなど)
・IE5.5、IE6.0でフォントサイズが大きくなるバグが出るためCSSをJavaScriptで振り分け。

とまぁ、こんな感じです。

IEに限りコメントの投稿ができなかったバグも直りました。
多分ですが、原因はイメージボタンが悪かったようです。
普通のボタンで作ったらあっけなく直りました。。。
う〜ん・・・

ランダム表示

「ShoppingList」と「Bookmarks」のコンテンツに飛べるようになりました。

だけど、「About」と「Contacts」のコンテンツはまだ作っていないので、もう少々お待ちを。

さて、今回のUPでイメージエリアの写真がランダムで変わるようなりました。
JavaScriptじゃなくて、PHPで組んでます。

理由は、「特定のフォルダに画像をUPするだけで即反映されるシステムにしたい!」という理由から。(テキストとかに画像のパス書きたくないからね。)
そんなわけで、画像をフォルダにUPするだけでもう終わりなわけですよ。

楽チン〜!

フローチャートはこんな感じ。

1、指定したフォルダの中身を参照
2、フォルダ内のすべてのJPEGファイルのファイル名を取得して、配列にぶちこむ。
3、ファイル数に応じた乱数作って当たりを引いた画像を表示。

ってわけです。
簡単なプログラムですな。

まだ画像の数が少ないから、同じ写真が連続で出たりすると思うけどその辺は許してくださいな。

そのうち増えますから。(たぶん・・・)

Memo

このサイトはバグとか実装されてない部分が非常ぉぉぉぉぉに多いので、Memoっておきます。

■バグ
・IEに限りコメントが投稿できない。(HTML)
・IEに限りPagetopでスクロールしない。(JavaScript)

■未実装
・About、ShoppingList、Bookmarks、Contactsへのリンク&コンテンツが無い。
・サイト全体のXMLデータが作られていない。(最近のエントリーじゃない場合がある)
・MonthlyArchivesに飛ぶことができない。(JavaScript)
・Font周りをIE5.5でちゃんと思い通り表示させる。(IE5.5以外の古いブラウザは切り捨て。)(JavaScript&CSS)
・引用タグの再定義(CSS)
・カテゴリーページ、Monthlyページを分割させる。(PHP)
・エントリー投稿画面に引用タグボタンを追加、URLボタンのソースを書き換え。(CGI)
・サイト全体のスリムアップ(画像、ソース)
・上記に関連してTableレイアウトからCSSレイアウトへ戻す。(HTML&CSS)
・左メニューをスクロールさせる。(JavaScript&CSS)
・イメージエリアの写真をランダム表示させる。(PHP)
・MovableTypeへのリンクが無い(HTML)

うわぁ・・・たくさんありすぎ。
少しずつ少しずつ・・・(汗)

Home > サイト制作 記録

Search
Google
Feeds
Meta
あわせて読む
あわせて読みたい
doll - doll

Return to page top