formless
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: 一般公開ではないページが「ページ属性>親」のPOPUPに出てこないphp-web様、再び、アドバイスをどうも有り難うございます。
いただいたコードを試してみましたが、
やはり、popup自体が出力されなくなってしまいました。こちらの環境は、WP3.0.4日本語版、plugin多数、php5.1.3です。
pluginも全てオフにして試しましたが、
やはり、popup自体が表示されない状態です。また、phpのバージョンアップが、もろもろの事情で出来ないため、
WP3.2にはアップグレード出来ない境遇でございます。codexの件、大変失礼いたしました。
以降、熟読の上、発言するように気をつけます。
そもそも、きちんとしたプログラマでない私が
首を突っ込みうる領域を超えているとは自覚しておるのですが
なにせ自体が緊急なもので、先走ってしまいました。
重ねてお詫び申し上げます。PS
「パスワード保護」状態の公開ページは、popupに出てくるので、
取り敢えずの回避方法で製作を進めております。フォーラム: 使い方全般
返信が含まれるトピック: 一般公開ではないページが「ページ属性>親」のPOPUPに出てこない早々のご返答をどうも有り難うございます!
wp_dropdown_pages の引数に ‘post_status’ => array(‘publish’, ‘private’) を加えれば非公開ページも対象にできます。
頂戴したアドバイスを以下のように早速試してみたのですが、
今度はdropdownが丸ごと出力されなくなってしまいました。改造前 (meta-boxes.php 539行目)
$pages = wp_dropdown_pages(array('post_type' => $post->post_type, 'exclude_tree' => $post->ID, 'selected' => $post->post_parent, 'name' => 'parent_id', 'show_option_none' => __('(no parent)'), 'sort_column'=> 'menu_order, post_title', 'echo' => 0));
改造後
$pages = wp_dropdown_pages(array('post_type' => $post->post_type, 'exclude_tree' => $post->ID, 'selected' => $post->post_parent, 'name' => 'parent_id', 'show_option_none' => __('(no parent)'), 'sort_column'=> 'menu_order, post_title', 'echo' => 0, 'post_status' => array('publish', 'private') ));
wp_dropdown_pagesのリファレンスを調べてみると、’post_status’は、wp_dropdown_pagesのパラメーターリストに載っていませんでした。
get_pagesでは、’post_status’をパラメーターとして受け取れるようなので、
post-template.phpからwp_dropdown_pagesをコピーして
wp_dropdown_pages_plus_private みたいなものを作って
すげ替えてやればいいのかなと考えております。コアをほとんど弄った事がないのでおそるおそるではありますが、
試してみて、またご報告します。【追記】
meta-boxes.php内にwp_dropdown_pages_plus_privateを作ってみましたが、
見事に失敗しました..
引き続き、皆様のアドバイスをお持ち申し上げます。フォーラム: 使い方全般
返信が含まれるトピック: お問い合わせ先ページの作り方違うPluginのお話しになってしまい恐縮ですが、cforms||でなら同じ事をやった事があります。
下のリンクの記述方法で、飛び先のフォームの特定のフィールドに値を渡せました。
※以下、cformsの1つめのフォームの1つ目のフィールドにidをaaaと付けている場合の例です。
http://(フォームのURL)?cf_field_1=渡したい文字列
もしくは
http://(フォームのURL)?aaa=渡したい文字列
こうすると、指定フィールドに文字列が入った状態でフォームが表示されます。
このフィールドを変更不能な状態に指定しておいて、cssで表示を調整すれば、参考サイトとほぼ同じことが出来るかともいます。
ただ、ちょっと挙動に癖(bug?)があるので、多少の試行錯誤は必要でしたが…フォーラム: プラグイン
返信が含まれるトピック: WP-chgFontSizeのキャッシュ機能esoraさん、初めまして。
以前同じ問題(文字設定が引き継がれない問題)で悩んで、一旦放置していましたが、この記事を読んでもう一度試したら上手く行ってしまいました。
ちなみに、WPはver.2.7.1、WP-chgFontSizeはver.1.6です。また、サイドバー以外への設置方法は
<?php chgfontsize_display_options(); ?>
を任意の場所に挿入でOKでした。
見た目の調整は、FirefoxのFirebug等で、pluginが生成するHTMLコードを確認の上、CSSで調整する事でいかようにでもなります。あとは、付属のボタン画像を変えるとか。ちなみに、自分は、footer.phpに、上記コードをdivで囲んで配置して、画面上部に絶対配置しています。HTMLの頭に余計なコードをなるべく入れたくなかったので。一つ気になるのは、オプション画面の “DIV Base Element”の項目が、id、classを区別せずに名前だけで判定されるところ。ここは、チョット気持ち悪いなぁとは思っています。
フォーラム: 使い方全般
返信が含まれるトピック: 特定の条件下で、投稿/ページの保存を無効にする方法shokun0803様
再び、アドバイスをどうも有り難うございます。
判定部分、処理部分を以下のようにしました。if ($count_posts > 10 && $post->post_type == 'post') { wp_delete_post($post->ID); wp_die('Limit Over! ('.$count_posts.') につき、削除しました。<br />»<a href="'.get_bloginfo('url').'/wp-admin/edit.php">投稿一覧</a>'); }
これで、意図した通りに、条件に合致した投稿のみを強制削除出来るようになりました。また、plugin化しても使える事も確認しました。
こうして作ってみると、wp_dieでエラー画面を表示して投稿リストへのリンクを表示するよりは、投稿編集画面に戻った時に赤枠でエラーメッセージが出る方が親切だなぁと思い、色々調べてみましたが、難しそうだったので今回はパスしようかと。。。
最終的には、強制削除にするか強制非公開にするかは、条件によって分岐したほうが良いなと考えています。(よほど悪質でない限り、強制非公開にとどめる等)
今回も皆さまのアドバイスをどうも有り難うございました。
本当に助かりました!
今後とも宜しくお願い致します。フォーラム: 使い方全般
返信が含まれるトピック: 特定の条件下で、投稿/ページの保存を無効にする方法shokun0803様
お返事をどうも有り難うございます。wp_die('Limit Over! ('.$count_posts.')' );
のところを
$my_post = array(); $my_post['ID'] = $post->ID; $my_post['post_status'] = 'private'; wp_update_post($my_post); wp_die('Limit Over ('.$count_posts.') につき、非公開扱いになります。');
としたところ、”新規投稿⇒公開”でも、”非公開投稿⇒公開”でも、等しく、エラーメッセージが出て、強制非公開扱いとなりました。アドバイスをどうも有り難うございます!
ただ、今更なのですが、このままですと、ページの公開も、強制非公開扱いとなるようになってしまいました。ページの場合には、この判定をスルーするようにするには、どこにどのような分岐を加えれば良いでしょうか。
また、もといになりますが、投稿を強制削除出来るような関数はないのでしょうか。
投稿ルールに反している内容が非公開でもDBに溜まって行くのは、あまり気持ちが良いものではないので。。。お手隙の際に、もう少しお付き合い頂ければ幸いです。
どうぞ宜しく御願いいたします。フォーラム: 使い方全般
返信が含まれるトピック: 特定の条件下で、投稿/ページの保存を無効にする方法kzさん、お返事をどうも有り難うございます。
※申し遅れましたが、こちらの環境は、Wordpress2.7.1&Coreserverです。早速、いただいたCODEを以下のようにアレンジしてfunctions.phpに仕込んでみました。
function my_transition_post_status($new_status, $old_status, $post){ if($new_status == 'publish'){ $count_posts=wp_count_posts()->publish; if ($count_posts > 10) { wp_die('Limit Over! ('.$count_posts.')' ); } } } add_action('transition_post_status', 'my_transition_post_status', 1, 3);
この状態で新規に投稿すると、公開済み投稿数が10以上なので、きちんと警告画面が表示されますが、実際には保存&公開がなされてしまっています。
add_actionの優先順位を1で、wp_dieを使っても,その後の処理はなされてしまうのでしょうか?もしくは、アクションは、functions.phpにいれても、保存/公開処理の後に実行されることになってしまうのでしょうか?
コアを理解しないままでの質問で、とんちんかんなことを言っているかもしれません事をお許し下さい。引き続き、お付き合いいただければ幸いです。
どうぞ宜しく御願いいたします。フォーラム: 使い方全般
返信が含まれるトピック: MySQLのオーバヘッド蓄積によるトラブルについて[解決済み] とさせていただきましたが、
この問題を簡単に解決できそうな方法を見落としていたので、
ご報告させていただきます。プラグイン wp-dbmanager のVersion 2.11以降では、Database Options内に
Automatic Optimizing Of DB
という、DB最適化のスケジューリング機能がある事を見落としていました…たまたま、問題の発生したサイトにだけ、
wp-dbmanagerを入れていなかった事が原因と思われます。
それ故に、同環境上の他のWordpressで構築したサイトでは、
同様の症状が発生せずにすんでいるのかと。最初から気付いていれば、このトピックを立てずにすんだのですが…
本当に、お恥ずかしい限りです。フォーラム: 使い方全般
返信が含まれるトピック: MySQLのオーバヘッド蓄積によるトラブルについてshokun0803さん
gosunatxreaさん※shokun0803さん、お返事遅くなってすみません。
お二人とも、情報をどうもありがとうございました。
私もこの投稿後に自分で調べをつづけて、
かなりの方が同様の症状に遭遇されている事を知り、
最終的にCRONで最適化する方法にたどり着いていました。
ただ、この方法ですと、CRONが使えることが前提ですので、
CRONが使えないサーバーへのインストール時には
どうしたものかと考えていました。wp-dbmanagerの最適化メニューの機能が拡張されて、
Overheadが設定値よりも大きいテーブルがあると、
自動的にダッシュボードに警告文が出て、
OKをクリックすると「Backup&最適化」をセットでしてくれる
なんていうのが理想だと思いましたが、
そのような改変をするだけのスキルもなく。。。これが比較的よくある現象である事と、
取りあえずの対処方法は分かりましたので、
今回は解決済みとさせていただきます。皆さん、ご指南をどうもありがとうございました。
フォーラム: 使い方全般
返信が含まれるトピック: コメントアウト出来ないlilyfanさま
いつもお世話になっております!
まずもって、ご指摘の後に、今一度、私が挙げたURLみると、”投稿内容内で使えるサンプル”として紹介されていたわけではない事に気づきました。いつもながら、お恥ずかしいかぎりです…
>何かプラグインを作って、kses.php の処理の前に
>コメントを除去するようなフィルターを入れるのが妥当でしょうね。投稿内容と出力コードが異なってしまう事に多少の違和感を感じますので、可能ならばコメント部分を残したままコメント機能が有効になるようにしたいのですが、kses.php の処理の前後に置換処理をしなくてはいけないと思われるので、私にはハードルが高そうです…
ですので、ご提案いただいた”コメント部分を完全に除去してしまうプラグイン”を考えてみようと思います。出来るのは当分先になりそうですが…今回も的確な御指南をどうも有り難うございました!
フォーラム: 使い方全般
返信が含まれるトピック: テーマのオプションと連動した動的なcssの生成についてjim912さま
お返事、どうも有り難うございます。
ご指導の通りにしました所、2点ともあっさりと解決しました。
本当にどうも有り難うございます!
特に後者はボンミスだったので、お恥ずかしい限りです。。。色々考えた末、管理系よりも公開系が軽くあるべきという事で、
設定値をupdateする度に、cssファイルを書き出す仕様に変更しました。もしも皆さまに公開出来るようなものが完成した暁には、
こちらで発表させていただきたいと思います。今後ともどうぞ宜しく御願いいたします。
フォーラム: 使い方全般
返信が含まれるトピック: テーマのオプションと連動した動的なcssの生成について追記です。
(前言撤回のようでなんなのですが)
設定値をupdateする毎にcssファイル書き出しする方法も試みましたが、テーマのfunctions.php内ではファイルの書き込みは出来ないようになっているのですね?
file_put_contentsを使うと”HTTP wrapper does not support writeable connections …”と出ました。これは簡単に回避(書き込み可能に)出来るのでしょうか?
(ファイルを書き出すようなテーマが見当たらないので参考になるコードも無く…)WordPressのコアをキチンと理解していない私には、ヘッダ内にstyeタグでcssを直接書き込む方法以外は、まだハードルが高すぎる気がしてきました…
フォーラム: 使い方全般
返信が含まれるトピック: virtual(?)なrobots.txtが、Allowになってくれません。lilyfanさん
再び、迅速なお返事をどうも有り難うございます。
こちらのrobots.txtに関する知識の欠落、大変失礼致しました。
では、逆に問題は、Google Webmaster Tool側にあって、
http://example.jp/robots.txtからのリダイレクト先の
http://example.jp/robots.txt/の内容
User-agent: *
Disallow:
を
“全面拒否”と解釈して、インデックスもサイトマップ読み込みもしてくれないことにあるわけですね。
上記の状態を自分で経験したので、今回の件を調べ始めたのですが、
Googleに拒否されたので「Disallow:」と「Disallow:/」が同じ意味であると
勘違いしてしまいました。すみません。
そういえば、海外でもGoogle関連の問題しか語られていませんでした…あと、サンプルURLでは、robots.txtがホスト名直下でない例を挙げてしまった為に、
誤解を生んでしまった件も、お詫び申し上げます。いずれにせよ、このリダイレクトと、リダイレクト先の(場合によっては勘違いされうるケースもある)出力は、無くなった方が良いとは思いました。
※このリダイレクト機能は、後々robots.txt関連の機能が追加される布石なのでしょうか…?以上、lilyfanさま、
当件へのお付き合い、本当にどうも有り難うございました。フォーラム: 使い方全般
返信が含まれるトピック: virtual(?)なrobots.txtが、Allowになってくれません。lilyfanさん
検証までしていただき、本当に有り難うございます。
(私も、2.7でも同様の現象が発生することを確認しました。)今回の件についてですが、リダイレクトのことを許容したとしても、
プライバシー設定を「このブログを、検索エンジン (Google、Sphere、Technorati など) とアーカイブサイトを含め、誰でも閲覧できるようにする」にしているにもかかわらず、
/robots.txt/の内容が(意図に反して)
User-agent: *
Disallow:
になってしまうことは、かなり大きな問題ではと思っております。海外のフォーラムですと、おそらくこのために、Googleにインデックスされなかったり、Google Webmaster Toolでサイトマップが読み込まれないという問題があちこちで発生してるようにみうけます。
念のために、インストールの最初の画面で「このブログを Google や Technorat などの検索エンジンに表示されるようにする。」をチェックした状態でインストールした場合にもテストしましたが、同じ現象が確認されました。(2.5.1)
個人的には、手動で robots.txt を設置することで解決しますが、
このことは公式にはどこにも書かれていないですよね?
Google Webmaster Tool等をお使いでない方は、この現象にも気づかずにblogを運営していらっしゃるかと思うと、これが放置される事によって、(真実か否かは別として) Net上で検索サイトに好かれやすいと定評のあるWordpressのブランドにも傷がついてしまわないかと心配です。。。WordPressのcoreを完全に理解していない私が、当件について騒ぎ立てるのはいかがかと思うので、これ以上のアクションは起こせませんが、せめて、この現象とその対処方法の認知が広まればとは思います。。。
PS
国内のフォーラムで当件を皆さんが話題にされていないのは、「パーマリンク構造のカスタマイズする方は、robots.txtも自分で設置している」からなのでしょうか?それとも、特殊な環境下のみで起こる現象なのでしょうか…?フォーラム: 使い方全般
返信が含まれるトピック: virtual(?)なrobots.txtが、Allowになってくれません。lilyfanさん、いつもお世話になっております!
お返事遅くなりましてすみません。プラグインを全てOFFにしても状況が変わりませんでしたので、
新規にWordpress2.5.1をインストールして、プラグインを全てOFFの状態でテストしてみました。(データベースも新規で作りました)・インストールの最初の画面では、「Google等に通知しない」にCheckしてインストール。
・この時点では、以下のURL
http://www.example.com/wordpress/robots.txt
http://www.example.com/wordpress/robots.txt/
共に “404 Not Found” でrobots.txt⇒robots.txt/へのリダイレクトも未発生。・プライバシー設定を「誰でも閲覧できるようにする」に変更。
・この時点でも、上記URLで「404&リダイレクション無し」のまま。
・パーマリンク設定を、デフォルト以外に(ex.日付と投稿名)変更。
・この時点から
http://www.example.com/wordpress/robots.txt
↓↓↓
http://www.example.com/wordpress/robots.txt/
へのリダイレクションが発生。ブラウザには以下の内容が表示される。
User-agent: *
Disallow:・パーマリンク設定は何種類も試しましたが、デフォルトに戻さないと、
上記URLで「404&リダイレクション無し」の状態に戻らない。ということは、これは、Pluginは全く関係無く、
Wordpressの仕様なのでは?と考えるに到ってしまいました…これですと、仕様であっても、(万が一バグであったとしても、)
パーマリンク設定をデフォルト以外にした場合には、
適切な robots.txt を、自分で設置しないといけないことになりますよね?これは皆さんの所では発生していないのでしょうか?
私の所でだけ発生しているなの問題(?)でしょうか…?ちなみに、lilyfanさんのサイトでは、
パーマリンクをデフォルト以外にされていらっしゃるようですが、手動で robots.txt を設置されていらっしゃるのでしょうか?(リダイレクションが発生していないので)
差し支えのない範囲でお教えいただければ幸いです。以上、引き続き、皆さまのご教授の程、
どうぞ宜しくお願い申し上げます。