echizenya
フォーラムへの返信
-
フォーラム: テーマ
返信が含まれるトピック: 自作テーマ作成後のチェックについて@nobita さん。 @ishitaka さん。 @ishitaka さん。
みなさまからのアドバイスのおかげで、下記の状態までテーマ作成を進めることができました!
https://github.com/echizenyayota/e-yota/tree/private_lesson_20170307_9_wpforum
確認した上でのお礼が遅くなり誠におそれいります。今後ともどうぞよろしくお願いします。
フォーラム: テーマ
返信が含まれるトピック: 自作テーマ作成後のチェックについて@ishitaka さん
それぞれアドバイスありがとうございます。下記の項目についてチェックを行いました。1.
テーマユニットテストによるチェック
→ @nobita さんに先のコメントで述べたとおり、パスできない箇所については、WordBench大阪でどなたかに質問をしようと思います。2.
W3C Markup Validation Serviceによるチェック
→ ErrorとWarningを合計で45ヶ所の指摘をされましたので、それぞれ確認の上、修正するようにします。3.
JavaScript エラーチェック(ブラウザのデベロッパーモード等)
→ Chromeデベロッパーツールで確認したところ、幸いにしてエラーは発生しませんでした。4.
脆弱性対策について
→ 今回の個人ブログに関して、外部から文字入力できるのは、ウィジェットにある「検索ボックス」だけなので、特にXSS、SQLインジェクション、CSRFの各対策は、行わないことにしました。フォーラム: テーマ
返信が含まれるトピック: 自作テーマ作成後のチェックについて@msio さん。
いつもコメントありがとうございます。プログラムの確認作業、いわゆるデバッグなどの作業というものそのものがプログラミングといっても過言ではないくらい重要なものだと私は考えています。
アドバイスありがとうございます。プログラミングの学習をしていると、諸先輩方から変数をデバッグするように言われます。改めてその重要性を再確認いたしました。
例えて確認項目として変数の定義を確認する必要を挙げます。固定長を利用している、文字列と数字の受け取り、クラス間での名前の統一、使用時期に応じて宣言、破棄などひとしきり確認する必要があるため、それらをリストアップすることになるでしょう。
自分は、IT企業やWebサイト制作会社などにつとめたことがないせいか、おっしゃっていることについて考えが及びませんでした。
また固定長やER図など聞いたことがあっても、実際にはよく分かっていない用語についても再確認する良い機会になりました。
【参考ページ】
http://wa3.i-3-i.info/word12067.html
http://it-koala.com/entity-relationship-diagram-1897フォーラム: テーマ
返信が含まれるトピック: 自作テーマ作成後のチェックについて@nobita さん
コメントありがとうございます。
アドバイスに基づいて修正したコードをGitHub上にUPしました。修正内容の詳細は下記のとおりです。
1.
get_the_dateは、コアの時刻フォーマットを引き継ぐと思いますので、’y-m-d’を外して、管理パネルから操作するようにしてはどうでしょう。
ご指摘のとおり、管理パネル → 一般設定 → 日付のフォーマットで’Y-m-d’を設定しておくと、
投稿日:<?php echo get_the_date(); ?>
としていても、2015-08-06と表示されるようになりました。
2.
wp_trim_wordsは、英語での単語分割なので、日本語だと意図した動作にならない可能性があります。日本語なら、wp_html_excerpt()等文字数ベースでカウントするものを検討するといいかも、、、
wp_html_excerpt()に変更してもcontent=””には、日本語の抜粋文が抽出されましたので、wp_html_excerpt()に変更しました。
3.
全体的に、属性値でのesc_attr()は、意識されていないように感じます。検討してみてはどうでしょう。
property、name、contentの一部の各属性値に対して、echo esc_attr()を適用しました。
4.
datatime属性に使用する時刻は、フォーマットが決まっています。調べてみてください。
datetime="<?php echo get_the_date( 'Y-m-d' ); ?>"
と使っていた箇所を
datetime="<?php the_time('c'); ?>"
としました。
5.
シングルクウォートで囲ってありますが、動作しますか?
テーマユニットテスト 等で検索して表示上の問題がないか十分検査してみてください
テーマユニットテストで検査して、各ページをざっと確認したところ、下記のような指摘を受けました。
ただ自分にとってこれらが何を意味しているのか、よく分かりません。- タイトルが長い英単語の時、コンテンツエリアをはみ出すべきではない。
- テンプレート: アイキャッチ画像 (縦)Notice: Trying to get property of non-object in /var/www/wordpress/wp-content/themes/mytheme/single.php on line 51
- テンプレート: アイキャッチ画像 (横)Notice: Trying to get property of non-object in /var/www/wordpress/wp-content/themes/mytheme/single.php on line 51
- テンプレート: 抜粋 (自動生成)レイアウトの問題が出ないことを保証するために、ぜひ自動生成の抜粋の整形をテストしてください。また、
excerpt_length
やexcerpt_more
などすべてのフィルターが適用され、正しく表示されることを確認してください。
3/25(土)にWordBench大阪でもくもく会が開催されますので、参加してどなたかにお聞きしようと思います。
フォーラム: テーマ
返信が含まれるトピック: 自作テーマ作成後のチェックについてフォーラム: プラグイン
返信が含まれるトピック: ユーザーロールに新しい権限が追加されないのはなぜでしょうか?msioさん。
いつもコメントありがとうございます。—
follow_developer_activities はその記載のとおり
「開発者が実行した結果」でチェックは「なりました」の意味をしていて
アンダーバーで文字を区切ったりチェックをいれたりということでまるでコードのように
表記されてはいるものの、「開発者の任意設定が反映されますよ」という「表現」だったということはないでしょうか。再度、参考書の該当箇所及び、msioさんが先のコードでコメントアウトしてくださった箇所を読み返すと、
follow_developer_activitiesはがMembersプラグインで表示されるのは、あくまでも「一例」だと思うようになりました。public function add_application_user_capabilities() { //フォロワーという権限を読み出す★追加注釈 $role = get_role( 'follower' ); //読みだした権限に機能を付与する★追加注釈 //-------------ここで付与する権限機能がCodexページで見た中に存在していませんがどうなのでしょうか-----------★追加注釈 $role->add_cap( 'follow_developer_activities' ); }
‘follow_developer_activities’ ← これがまずない ← 個人で作る?(必要性が…)
ないので付与されない = つくる = つくれば付与できる画像ファイルで教えてくださったとおり、もしfollow_developer_activitiesに権限機能を新しく追加したかったら、
$role = get_role( 'follower' );
と
$role->add_cap( 'follow_developer_activities' );
の間に自分で何か定義をしないといけないと思います。—
まだ不慣れなもので、follow_developer_activitiesに権限機能をどうやって付けるのかは
分かりませんが、参考書の意図が読み取れたことは大きな成果だと思いますので、このトピックを終了いたします。msioさん。本当にご丁寧なアドバイスありがとうございました!
フォーラム: プラグイン
返信が含まれるトピック: ユーザーロールに新しい権限が追加されないのはなぜでしょうか?msioさん。
ご丁寧なメッセージありがとうございます!—
ここで付与する権限機能がCodexページで見た中に存在していませんがどうなのでしょうか
ご指摘のとおり、Codexの中には当該権限機能は存在しませんね。一方で参考書のP.32からP.39を読み返すと、
ただCodexで指し示されている権限以外にも、新たに権限を作ることができるようなことが書かれています。
なので、新たな権限を追加できるのかどうかは、何とも言い難いところです。follow_developer_activities というロールセットを準備して これはフォロワーが制作作業をどうにかする的なことに必要な権限を許可されるセットとしてくまれているのであれば追加されてしかるべきかと思いますが
私は地味に「書き込み可能、読み取りのみ可能、削除可能、変更不可能」といった具合に地味に追加して「フォロワー」というロールを作成するものなのではないかと思います。このアドバイスに基づいて、add_application_user_rolesメソッドの定義を
add_role( 'follower', 'Follower', array( 'follow_developer_activities' => true ) );
や
add_role( 'follower', 'Follower', array( 'read' => true, 'follow_developer_activities' => true ) );
のように書き換えてみましたが、相変わらず’follow_developer_activities’権限をMembersプラグインで
確認することはできませんでした。今回の写経は自分の練習用としてローカル開発環境で行っています。また一般公開するつもりもないので、
参考書の通りに表示されなくても、先に進めようかと考えています。せっかくアドバイスを頂いたにも関わらず、生かし切れずに心苦しい限りですが、いかがでしょうか?
以上、よろしくお願い申し上げます。フォーラム: プラグイン
返信が含まれるトピック: register_activation_hook関数で使われている引数の解釈みなさま、コメントやアドバイスありがとうございます!
—
@hideokamotoさん。
add_actionのページについて、最後まで読んでいませんでした。
“Using with a Class”の例文のご紹介ありがとうございます。十分参考にさせていただきました。—
@kimipoohさん。
PHPのドキュメンテーションのご紹介ありがとうございます。受け渡し
オブジェクトのインスタンスを渡すには配列を使います。 配列の 0 番目の要素にオブジェクトを、
そして 1 番目の要素にメソッド名を指定します。 protected メソッドや private メソッドは、クラスの内部からはアクセスできます。↑の説明を読むと、register_activation_hook()の第二引数で、なぜarray()や$thisを使うのか、分かってきました。
—
@msioさん。
わたしの「配列になるのはなぜか」という疑問について、詳細な説明ありがとうございます。
WordPressのプラグインやアプリケーション開発についてはまだ始めたばかりなので、とても参考になりました。“フック”という用語は今ひとつ何をさしているのか、今まで分かっていませんでしたが、「ピザ屋さんの例え」が大変分かりやすく、理解が進みました。
二つで運用して二つ目が「is_array」判定されたらレスポンスを指定のオブジェクトへ返す仕様のほうがスマートだからではないかと思います。
そこまではとても考えは及びませんでした。今後自分でプラグインやアプリケーションを作れるようになったときの
参考にさせていただきたいと思います。—
みなさまので、register_activation_hook( __FILE__ , array( $this, ‘add_application_user_roles’ ) );
について解釈できるようになりました。参考書の「WordPressによるWebアプリケーション開発」の写経を続けるようにします。
ありがとうございました。フォーラム: プラグイン
返信が含まれるトピック: register_activation_hook関数で使われている引数の解釈kimipoohさん。
ご丁寧な説明ありがとうございます!array( $this, ‘add_application_user_roles’ ) の部分は、add_action の $function のへ引き渡されます。
つまりクラス内で register_activation_hook や add_action を使うなら第二引数は array($this, ‘関数’);をクラスを使わないなら、 ‘関数’を使えばいいってことですね。
了解しました!
ただhttps://developer.wordpress.org/reference/functions/add_action/#parameters
add_action関数の第二引数を確認すると、
$function_to_add (callable) (Required) The name of the function you wish to be called.
となっています。この英文から、第2引数でarrayを使い、疑似変数 $thisを入れるという解釈が自分の頭の中では繋げることができません。お手数をおかけして誠に恐れ入りますが、add_action関数の第二引数に関する解釈も、合わせてご教示いただければ幸いです。
以上、よろしくお願い申し上げます。
フォーラム: 使い方全般
返信が含まれるトピック: Bigdumpで作成したファイルの配置についてishihara takashiさま
コメントありがとうございます。>説明文を読む限り、以下のような形での作業となるかと思います。
>1. wp-content と同じ階層に dump というフォルダを作り、
その中にアップロードしたい sql ファイル と bigdump.php を設置する。
( フォルダ名等は何でもいいです。 )>2. http://www.yourdomain.com/dump/bigdump.php にブラウザからアクセス。
( http://www.yourdomain.com の部分はご自身のドメインとしてお考え下さい。 )>これで、bigdumpのページが表示されます。
アドバイスありがとうございます。
ただwp-content と同じ階層にフォルダを作成してsql ファイルを入れて、
http://www.yourdomain.com/dump/bigdump.phpにアクセスすると、Parse error: syntax error, unexpected ‘データベース名’ (T_STRING) in /home/yourdomain/www/dump/bigdump.php on line 46
というエラーが表示されます。bigdump.phpの46行目をみると、
$db_name=’データベース名’;
と記述されています。
再設定したWordPressのデータベース名と、
bigdump.php内で指定したデータベース名が違うということでしょう。2つのデータベース名は、コピペして使っているので
なぜデータベース名の違いを指摘されるのか分かりません。今回の実験で使用しているWordPressとそのデータベースは削除して、
bigdump.phpともども、最初から作成していきたいと思います。
その過程でどこが間違っているのか、観察していきます。フォーラム: 使い方全般
返信が含まれるトピック: ユーザー登録なしで記事は投稿できるか?User Submitted Postsを紹介したページのリンクが上手くかからなかったので、
修正します。【User Submitted Posts】 管理画面以外から投稿するプラグイン 【その2】
WP ゲストユーザの投稿 User Submitted Postsプラグイン
ユーザーからの記事の寄稿を簡略化するWordPressプラグイン・User Submitted Postsと文字化けの直し方
フォーラム: 使い方全般
返信が含まれるトピック: ユーザー登録なしで記事は投稿できるか?taku-kさん。
コメントありがとうございます!
UPしていただいたブログ、拝見させていただきました。
Post From Site、はじめて知りました。o6asanさん。
アドバイス助かります。
Post From Site以外に、User Submitted Postsという
プラグインを見つけることができました。- <a href=”http://milkveil.com/archives/2660
“>【User Submitted Posts】 管理画面以外から投稿するプラグイン 【その2】 - <a href=”http://gate.rickeluster.com/c15_wp/1396/
“>WP ゲストユーザの投稿 User Submitted Postsプラグイン - <a href=”http://kachibito.net/wordpress/user-submitted-posts.html
“>ユーザーからの記事の寄稿を簡略化するWordPressプラグイン・User Submitted Postsと文字化けの直し方
Google検索すると、使い方に関するいくつかブログ記事も出てきます。
これらの記事とPost From Siteを比較検討したいと思います。みなさん、ありがとうございました。
フォーラム: その他
返信が含まれるトピック: 日本語フォーラム:タイトルが消える報告トピックタイトルの文字数(日本語)が多いと、
トピックが表示されない現象が発生しました
(2014年7月20日)私の場合、次のようにタイトルを短くしたら、
トピックが表示されるようになりました。修正前:「ユーザー登録」せずともダッシュボードにアクセスして記事を投稿できるようにしたい
修正後:ユーザー登録なしで記事は投稿できるか?
以上よろしくお願い申し上げます。
フォーラム: プラグイン
返信が含まれるトピック: BackWPupのログで"WARNINGS"が出続ける原因について