ikechan
フォーラムへの返信
-
フォーラム: マルチサイト
返信が含まれるトピック: マルチサイトでのlightbox2 or 3 プラグイン使用時のエラーフォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?nobita様、
kjmtsh様、長い間、お付き合いいただき、ありがとうございました。
add_filter( 'the_content', 'my_entities', 20000); function my_entities( $content ) { $content = mb_convert_encoding($content, 'UTF-8', 'HTML-ENTITIES'); return $content; }
で、無事、問題は解消いたしました。
初心者の私にもかかえわらず、
お二人よりの、非常に高度なご指導にて、
思い通りの操作を行えることが出来ました。まだ、wpを使い始めて2年目の初心者の私ですが、
お二人よりの指示の内容を理解するにつけ、
wpの素晴らしい「仕組み」の1部分を、垣間見れたような気がします。
このような、素晴らしい、
「wordpress.org 日本語」のフォーラムの運営者さんにも、
感謝いたします。★kjmtsh様へ、
非常に高いレベルでのご説明をいただき、
有難うございました。今後は、教えた頂いたことを、wpの運用時の基本として、
使わせていただこうと思います。お相手頂けたことを感謝いたします。
★nobita様へ、
細かいご指導を頂き、有難うございました。やりたい事が出来るようになりました。
また、フィルターの使用方法などもお聞きできました。
有難うございました。「余談:質問とは関係ありませんが、ご利用のプラグインには、古いものも含まれているようなので、全体的に見直しするといいと思います。
PHPの実行が可能なプラグインも使っているようですが、そういったものの中には、
例えば、コンテンツ本文に記述したコードが、WordPressの検索で検索できてしまうこともありますので、セキュリティ上のリスクが発生することがありますので、よく検討してみてください。」・・・なども、お教えいただき、ありがとございます。
特に、Exec-PHP などは不安があるので、
一度、見直しをしてみます。本当にありがとうございました。
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?nobita様へ、
素人の私に、まだお付き合いいただき感謝いたします。
有難うございます。
まだ。いろいろ試し中なのですが、
nobita様へ、よりのご教授の中で、
不明な点がございますので、もし、また再訪されて、お時間でもあれば、お教えいただければと思います。
1.
$content =<<<CONTENT
<p>定通が藩・・・ていたのです。</p>
CONTENT;この文中の、<<< には、どのような意味があるのでしょうか?
2.
add_filter( 'the_content', 'my_entities', 10); function my_entities( $content ) { $content = mb_convert_encoding($content, 'UTF-8', 'HTML-ENTITIES'); return $content }
このコードは、どこに記載すればよろしいのでしょうか?
(直接、single.phpに張り付けると、画面が真っ白になりました。)いずれも、すごく初歩的な質問と思いますが、よろしくお願いいたします。
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?しかし、
何故これが機能しないんでしょうか?使う使わないは別にしても、
これさえ機能すれば、納得できるんですけど・・・???
<?php $content =the_content(); $content = mb_convert_encoding($content, 'UTF-8', 'HTML-ENTITIES');//数値文字列を通常の文字で表現UTF-8 echo $content; ?>
う~ん???
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?kjmtsh様へ、
細かなところまで、ご説明頂き感謝します。特に、
「作者はそれを意図して使っています。」というのを読み取っていただいたのは、
ありがたいです。★素人の私に、高度なご対応をいただき、
本当にありがとうございます。————————————–
確かに、kjmtsh様の言われる通り、
「人間に読める形のソースにこだわる理由」・・・
が、自分でもうまく説明できませんが、こだわる理由について考えてみると、
グーグルなどの検索ロボットで、サイト内が閲覧される場合、
1・人間に読める形(日本語)の方が有利なのか
2・ロボットに理解できる文字実体参照が有利なのか
3・どちらも検索ロボットにとっては同じなのか、という判断部分で、私は、1・を選んでしまっているようです。
ここで言う「有利」という意味は、
検索ロボットが理解しやすいのか?というような意味なのですが、単に、日本語のサイトなのだから、
ロボットも、日本語で書いているだろうと予測して読みに来るから、
ソースも日本語であったほうが読み易いのではないだろうか?という、私の勝手な思い込みのせいです。
——————————————–
やはり、サイトを作る以上、上位表示を目指したく・・・
そうなると、人間の訪訪問者に対しても、また、
検索ロボットに対しても、読み易いソースコードが、
必要なんじゃないか?と勝手判断しているからです。やはり、このような発想は、素人の井の中の蛙・・・的な発想であって、
実際には、kjmtsh様の言われる通り、
「考えてみれば、とても合理的な選択で、文字コードや符号化、それどころか、言語さえもこえて、us-ascii のみで扱えるという利点があります。途中で変換するのは、データベースに保存された本文は再編集や検索の都合があるので、いじれないからでしょう。また、そのまま出力しても、ブラウザを通す限り、ちゃんと人間に読める形になりますから問題ありませんよね。ikechan さんにとっても、訪問者にとっても不都合はないような気がします。」
その上に、
「検索エンジンにとっても、不都合がない良い方」
なのでしょうか?
———————————————
PHP manual
の情報もありがとうございました。中途半端な知識しかないままに、質問させて頂きましたが、
丁寧なご対応に感謝いたします。「もはや事態は解消しているのではないですか? 使うと何か不都合がありますか?」
につきましては、
「既に事態は解消しており、使っても不都合がない状態なのですが、」あきらめの悪い田舎者なので、
もがきついでに、あと1~2日間だけ、cm-tooltip-glossary-frontend.php
などの、プラグイン内部の操作ではなく、<?php $content =the_content(); $content = mb_convert_encoding($content, 'UTF-8', 'HTML-ENTITIES'); echo $content; ?>
のようなプラグインの処理以後の操作の方法で、
日本語表記に出来る方法が無いものか???と
他に、このような自動でページ内の文から
用語集ページにリンクをはれるプラグインなどが無いかを、
探してみようと思います。kjmtsh様へ、
高度な発想や、考え方を教えていただき、ありがとうございました。
また、原因をはっきりと理解させていただき、有難うございました。
感謝いたします。フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?kjmtsh様、
nobita様、いろいろと、有難うございます。
原因が特定出来ました。
kjmtsh様の言われる通り、プラグインを停止する方法を、
再度、いろいろとやってみましたら、前回のチェックでは、キャッシュか何かが残っていたらしく、
時間をかけて、確認しながらやると、
今回のチェックでは、原因となっているプラグインが特定できました。それは、
4-CM Tooltip Glossary
でした。
これを無効化すると、ソースコードは正常にもどりました。また、
kjmtsh様に教えていただいた方法で、
打ち出されたコードの比較を
全行行ってみましたが、その結果、
[9998] => Array ( [CMTooltipGlossaryFrontend::cmtt_glossary_createList] => Array ( [function] => Array ( [0] => CMTooltipGlossaryFrontend [1] => cmtt_glossary_createList ) [accepted_args] => 1 ) ) [9999] => Array ( [CMTooltipGlossaryFrontend::cmtt_glossary_parse] => Array ( [function] => Array ( [0] => CMTooltipGlossaryFrontend [1] => cmtt_glossary_parse ) [accepted_args] => 1 ) ) [10000] => Array ( [CMTooltipGlossaryFrontend::cmtt_glossary_addBacklink] => Array ( [function] => Array ( [0] => CMTooltipGlossaryFrontend [1] => cmtt_glossary_addBacklink ) [accepted_args] => 1 ) )
この部分のコードが原因だと解りました。
これは、間違いなく
CM Tooltip Glossary のものです。
このプラグインを無効化すると、
この部分のコードが表示されなくなり、
ソースコードも通常のものに戻ります。単純な確認ミスで、手数をおかけいたしました。
「根拠はありませんが、全部停止して、表示を確認すると正常に戻るんじゃないかという気がします。」
と、仰せの通りでした。
ーーーーーーーーーーーーーーーーーーーーーーーーーー
★kjmtsh様の最初のご指示通り、
きちんとキャッシュの事も気にしながら、
じっくり確認していれば、最初の、その時点で、判明している原因でした。
無駄な時間を御取りしてしまったことを、
申し訳なく思います。有難うございました。
ーーーーーーーーーーーーーーーーーーーーーーーーーー
これで原因が特定できたので、
このプラグインを使わなければ、事態は解消できるのですが、どうしてもサイトに、自動で作成できる用語集がほしいため、
現状で、ほかに使えそうな用語集のプラグインも知らないので・・・。
まだ、あきらめきれずに、もがいています。それは、
<?php $content =the_content(); $content = mb_convert_encoding($content, 'UTF-8', 'HTML-ENTITIES');//数値文字列を通常の文字で表現UTF-8 echo $content; ?>
このような、nobita様の方法みたいなので、
通常表示が出来ないものかと思ったからであります。ただ、この方法では、ご指示のように、直接、
文章を入力した場合は機能するのですが、$content =the_content();
このように変数で渡した場合には機能しません。
やはり、今まで通り、
ソースコードが、
文字実体参照で吐き出されてしまします。ちょっと気になるのは、
<div class="m10-b">&#12354;&#12394;&#12383;</div> <h4>&#12354;&#12394;&#12383;</h4>
このように、
<h4>、</div>
などのタグは、きちんと表示されていて、
日本語部分のみ、&#37202;のようなコードで表示されている事なのですが・・・。いずれにしても、もう少し、もがいてみます。
まずは、お時間を御取りしてしまった事にお詫びと、
また、ご対応いただいた事に対するお礼を申し上げます。有難うございました。
今からは、mb_convert_encoding(・・・のような方法を、
いろいろ試してみようと思います。フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?kjmtshさんへ、
すみません、自問自答が多くて、申し訳ないのですが、
じっくりとサイトの表示を確認してみると、
やはり、「ちなみに、the_content() は内部で get_the_content() を使い、次にフィルタを適応します。」
このフィルタがかかっていないせいか、
ショートコードが変換されていませんでした。そこで、<?php the_content(); ?>
の部分を、そっくり入れ替えて運用するのは、
選択肢から消えそうです。フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?kjmtshさんへ、
いろいろとご指導を頂き、
有難うございます。ちょっと、ご意見をお聴きしたい事があります。
当然ですが、突き詰めて、何とか原因はつかもうと思うのですが、
現状として、<?php the_content(); ?>
の部分を、
<?php $content = get_the_content(); //ここで本文部分に修正を加える $content = preg_replace("/\n/","<br />",$content); echo $content; ?>
と、そっくり入れ替えてしまえば、
何等か?の影響を受けず、きちんと、ソースコードが日本語で吐き出されるという事が、
判明しました。これは、
「ちなみに、the_content() は内部で get_the_content() を使い、次にフィルタを適応します。」のご意見を参考に考えた事です。
そこで、お聞きしたいのが、
現在、気に入らない、
<?php the_content(); ?>
の部分を、このように置き換えて運用した場合、
今後、何か、致命的な障害とか問題点が、発生する可能性はありますでしょうか?
もし、よろしければ、
kjmtsh様の、ご意見をお聴きしたいのですが・・・。もし、また訪問されて、
お時間でもござおましたら、ご教授いただければと思います。フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?nobitaさんへ、
気付きを頂き、有難うございます。
<?php the_content(); ?>
の部分を以下のようにして、表示してみましたが、
<?php $content =the_content(); echo mb_convert_encoding($content, 'HTML-ENTITIES', 'auto')."\n\n"; ?>
やはり、表示は、問題なくきれいに出来ているのですが、
その本文のソースコードのみ、やはり、まだ、実体参照での表示です。いったいどのような、
「テーマが、データを最終的に出力するときに使われるエスケープ関数」的なものが、適用されているのでしょうか???
ただ、いろいろ考えても、
いろいろなプラグインを入れたくらいしか思いあたらないのですが、
やはり、使用するプラグインが多すぎるんでしょうか・・・?ちなみに、こんなに入れてしまっています。
1-Akismetを選択
2-AntiVirusを選択
3-Category Orderを選択
4-CM Tooltip Glossaryを選択
5-Contact Form 7を選択
6-Crazy Bone (狂骨)を選択
7-CSV Importerを選択
8-Custom Post Templatesを選択
9-Delete-Revisionを選択
10-Disqus Comment Systemを選択・・・停止中
11-Duplicate Postを選択
12-Exec-PHPを選択
13-FancyBox for WordPressを選択
14-Google Analyticatorを選択
15-Google XML Sitemapを選択
16-Hello Dollyを選択・・・停止中
17-Login LockDownを選択
18-Pretty Link Liteを選択
19-PS Auto Sitemapを選択
20-PS Disable Auto Formattingを選択
21-Resize At Upload Plusを選択
22-Revision Controlを選択
23-ShowID for Post/Page/Category/Tag/Commentを選択
24-Twitter Widget Proを選択
25-Wordbookerを選択
26-WP Multibyte Patchを選択
27-WP No Category Baseを選択
28-WP Social Bookmarking Lightを選択
29-WP Super Cacheを選択
30-WP to Twitterを選択多すぎでしょうか??
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?kjmtshさんへ、
またまた、ご指導をいただき、ありがとうございます。
1.
私の使っているテーマでは、
<?php the_content(); ?>
は、single と、page でしか使用しておらず、index.php、archive.php、author.php、category.php、 search.php
では、
<?php the_excerpt(); ?>
で抜粋のみ表示しています。2.
global $wp_filter; print_r($wp_filter['the_content']);
については、
<?php the_excerpt(); ?>
の次の行に、<?php global $wp_filter; print_r($wp_filter['the_content']); ?>
を入れてみたら、
このようなソースコードが吐き出されました。Array ( [1] => Array ( [000000002f37ed00000000005441ab3afilter_user_content] => Array ( [function] => Array ( [0] => ExecPhp_Runtime Object ( [m_cache] => ExecPhp_Cache Object ( [m_option] => ExecPhp_Option Object ( [m_status] => 0 [m_version] => 4.9 [m_widget_support] => 1 ) [m_usermetas] => Array ( ) ) ) [1] => filter_user_content ) [accepted_args] => 1 ) ) [8] => Array ( [000000002f37e57c000000005441ab3arun_shortcode] => Array ( [function] => Array ( [0] => WP_Embed Object ( [handlers] => Array ( [10] => Array ( [googlevideo] => Array ( [regex] => #http://video\.google\.([A-Za-z.]{2,5})/videoplay\?docid=([\d-]+)(.*?)#i [callback] => wp_embed_handler_googlevideo ) ) [9999] => Array ( [audio] => Array ( [regex] => #^https?://.+?\.(mp3|ogg|wma|m4a|wav)$#i [callback] => wp_embed_handler_audio ) [video] => Array ( [regex] => #^https?://.+?\.(mp4|m4v|webm|ogv|wmv|flv)$#i [callback] => wp_embed_handler_video ) ) ) [post_ID] => [usecache] => 1 [linkifunknown] => 1 ) [1] => run_shortcode ) [accepted_args] => 1 ) [000000002f37e57c000000005441ab3aautoembed] => Array ( [function] => Array ( [0] => WP_Embed Object ( [handlers] => Array ( [10] => Array ( [googlevideo] => Array ( [regex] => #http://video\.google\.([A-Za-z.]{2,5})/videoplay\?docid=([\d-]+)(.*?)#i [callback] => wp_embed_handler_googlevideo ) ) [9999] => Array ( [audio] => Array ( [regex] => #^https?://.+?\.(mp3|ogg|wma|m4a|wav)$#i [callback] => wp_embed_handler_audio ) [video] => Array ( [regex] => #^https?://.+?\.(mp4|m4v|webm|ogv|wmv|flv)$#i [callback] => wp_embed_handler_video ) ) ) [post_ID] => [usecache] => 1 [linkifunknown] => 1 ) [1] => autoembed ) [accepted_args] => 1 ) ) [10] => Array ( [wptexturize] => Array ( [function] => wptexturize [accepted_args] => 1 ) [convert_smilies] => Array ( [function] => convert_smilies [accepted_args] => 1 ) [convert_chars] => Array ( [function] => convert_chars [accepted_args] => 1 ) [wpautop] => Array ( [function] => wpautop [accepted_args] => 1 ) [shortcode_unautop] => Array ( [function] => shortcode_unautop [accepted_args] => 1 ) [prepend_attachment] => Array ( [function] => prepend_attachment [accepted_args] => 1 ) [000000002f37e5df000000005441ab3areplace_sitemap_content] => Array ( [function] => Array ( [0] => ps_auto_sitemap Object ( [sitemap_prepared_styles] => Array ( [simple] => Simple [simple2] => Simple2 [checker] => Checker [marker] => Fluorescent marker [document] => Document tree [label] => Label [music] => Music [arrows] => Arrows [business] => Business [index] => Index [urban] => Urban [under_score] => Under score [cube] => Cube ) [option] => Array ( [home_list] => 1 [post_tree] => 1 [page_tree] => 1 [post_id] => [disp_level] => 0 [disp_first] => post [disp_posts] => combine [ex_cat_ids] => [ex_post_ids] => [prepared_style] => [use_cache] => 1 [suppress_link] => ) [wp_version] => 3.8.1 ) [1] => replace_sitemap_content ) [accepted_args] => 1 ) [wordbooker_append_post1] => Array ( [function] => wordbooker_append_post1 [accepted_args] => 1 ) [wp_social_bookmarking_light_the_content] => Array ( [function] => wp_social_bookmarking_light_the_content [accepted_args] => 1 ) ) [11] => Array ( [capital_P_dangit] => Array ( [function] => capital_P_dangit [accepted_args] => 1 ) [do_shortcode] => Array ( [function] => do_shortcode [accepted_args] => 1 ) ) [9998] => Array ( [CMTooltipGlossaryFrontend::cmtt_glossary_createList] => Array ( [function] => Array ( [0] => CMTooltipGlossaryFrontend [1] => cmtt_glossary_createList ) [accepted_args] => 1 ) ) [9999] => Array ( [CMTooltipGlossaryFrontend::cmtt_glossary_parse] => Array ( [function] => Array ( [0] => CMTooltipGlossaryFrontend [1] => cmtt_glossary_parse ) [accepted_args] => 1 ) ) [10000] => Array ( [CMTooltipGlossaryFrontend::cmtt_glossary_addBacklink] => Array ( [function] => Array ( [0] => CMTooltipGlossaryFrontend [1] => cmtt_glossary_addBacklink ) [accepted_args] => 1 ) ) )
いかがなものでしょうか?
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?みなさんへ、また、少し進捗がありました。
single.php
のページで、【1】
<?php the_content(); ?>
と
【2】
<?php echo mb_substr(get_the_content(), 0, 30); ?>
を並べてサイトを表示したところ、
【1】は、文字実体参照で表示
【2】は、いつも通りの日本語で表示!
となりました。
これで、確実に、
<?php the_content(); ?>
の動きが犯人であると確定しました。しかし、最近は、いくつかのプラグインは入れましたが、
特に、
<?php the_content(); ?>
に変なフックみたいのがかかる作業はしてないつもりなのですが・・・。どれかのプラグインが、変な動きをして、どこかのコードを書き換えてしまったのでしょうか?
そのせいで、プラグインを全部無効化しても、もとの状態にもどらないのでしょうか??もう一息で、解明しそうな気もしますが・・・立ち往生です。
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?みなさんへ、ダウングレードしようと思い、SQLデータベースのバックアップを取ったついでに、中身を見てみると、きちんと日本語で保存されていました。
つまり、
‘<?php the_content(); ?>’で、コードを吐き出す時のみ、
しかも、page.phpとsingle.phpの時のみ、
‘<?php the_content(); ?>’で吐き出されたコードが、
文字実体参照になっている事が判明しました。そこで、ダウングレードを中止して、
もうすこし、いろいろやってみます。フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?nobitaさんへ、はい、他のツールは使っていません。
WordPress のバージョン、PHP のバージョンは、
WordPress 3.8.1
PHP 5.3.3
です。1 プラグインを全て停止して、デフォルトのテーマを使い、表示を確認する。
2 変化がなければ、その状態で新たな投稿を作成してみる。
をやってみても変化なしです。一度wordpress をダウングレードしてみようと思います。
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?みなさんへ、まずは、
よく確認もせず、
異なる、フォーラムへ投稿して、誠に申し訳ございませんでした。それにも関わりませず、高度な、気付きをたくさん頂き、有難うございました。
本当に感謝したします。
stranger-jp 様へ、
申し訳ございませんでした。Takayuki Miyoshi様へ、
申し訳ございませんでした。digit@maetel様へ、
ご返答ありがとうございました。kjmtsh様へ、
さらに高度なご返答を頂き、有難うございました。意味不明な質問に、丁寧にご回答いただき、感謝いたします。
さっそく、そのようにしてみます。
注意点もご指導いただき、有難うございました。
皆さんへ、重ね重ね、ご迷惑をおかけいたしました。
引き続き、対応してみます。
フォーラム: 使い方全般
返信が含まれるトピック: プラウザでのソース表示が変?