質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

320閲覧

wp-adminに配置されているpost.jsの内容を知りたい

SomaTakuya

総合スコア15

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2019/04/09 08:32

編集2019/04/09 09:05

##質問背景
記事の投稿でタイトル入力後にパーマリンクが生成される仕組みを理解したいと思い、質問させていただきました。

##内容
デバック試験をしながら、下記のファイル配下のコードまでたどり着きました。
wp-admin/post.min.js

*ロードされているのはpost.min.jsですが、難読化されているため、
ここではpost.jsに置き換えて質問させていただきます。

##コード
wp-admin/post.js
222行目あたりから236行目まで。

html

1 if ( ! $('#edit-slug-box > *').length && ! titleHasFocus ) 2 //すべての要素から#edit-slug-boxの要素数かつ??titleHasFocus??分からない 3 $.post( ajaxurl, { 4 //下記内容のリクエストを送る??どこに? 5 action: 'sample-permalink', 6 post_id: $('#post_ID').val(), 7 new_title: $('#title').val(), 8 samplepermalinknonce: $('#samplepermalinknonce').val() 9 }, 10 function( data ) { 11 if ( data != '-1' ) { 12 $('#edit-slug-box').html(data); 13 } 14 }

ここのコードがパーマリンク生成に関係していると考えております。

##求回答
js初学者コード内容がわかりません。
解説頂ければ幸いです。
if ( ! $('#edit-slug-box > *').length && ! titleHasFocus ) このif文とかもなにしているかさっぱりです、、、

大変恐縮ではありますが、ご教示頂ければ幸いです。
なにとぞよろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/04/09 08:44

セレクタの指定の仕方の話でしょうか?
SomaTakuya

2019/04/09 08:48

添付コードの処理の流れをご教示頂ければ幸いです。 セレクタの指定方法も恥ずかしながら分かっておりません。。
m.ts10806

2019/04/09 08:55

分かってるところだけでもコメント書いてもらえるとアドバイスもしやすいのですが、いかがでしょうか。(全部わからない、だと丸投げのデバッグ依頼と変わらないので)
SomaTakuya

2019/04/09 09:06

ほとんどわからないのですが、雰囲気でコメントを入れてみました。 ご確認いただければ幸いです。
kei344

2019/04/09 09:18

最終的に何がしたいのでしょうか。
SomaTakuya

2019/04/09 09:22

フォーカスアウトした時の内部の動きを理解したいです。 可能であればjsでパーマリンク生成を制御したいです。
kei344

2019/04/09 09:43

制御とは具体的にどのようなことがしたいのでしょうか。パーマリンクはjsで作成されているのではなく、記事のスラッグとパーマリンク設定により生成されています。フォーカスアウトで作成されるその部分はあくまで「サンプル」程度なので、実際のパーマリンクと違った表示になることもあります。
SomaTakuya

2019/04/09 09:48

サンプルパーマリンク生成の部分を勉強したいと思っております。 勉強不足でゴールを明示できなくて申し訳ございません。
guest

回答1

0

ベストアンサー

サンプルパーマリンク生成の部分を勉強したいと思っております。

ajaxurlはWordPress の管理画面内で使えるAjaxエンドポイントで、そこにactionを投げると(登録されていれば)関数が実行され、値がかえってくる。

あとはそのコードを読んでください。

【wp_ajax_sample_permalink() | Function | WordPress Developer Resources】
https://developer.wordpress.org/reference/functions/wp_ajax_sample_permalink/

【get_sample_permalink_html() | Function | WordPress Developer Resources】
https://developer.wordpress.org/reference/functions/get_sample_permalink_html/

【get_sample_permalink() | Function | WordPress Developer Resources】
https://developer.wordpress.org/reference/functions/get_sample_permalink/

投稿2019/04/09 09:59

kei344

総合スコア69364

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SomaTakuya

2019/04/10 00:54

いつも丁寧なご回答ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問