※社内専用

jQueryで親要素を取得する ~jQuery初心者

外注データ検品 logo-ogp.jpg、法人1人称
で作ったツールに改修点があり、わからないなりにやってみる。

通常通りwp初期設定を行えばプライバシーポリシーのidは5なので
‘http://ドメイン/wp-admin/post.php?post=5&action=edit’のurlで編集できるが
外注が入れ込んだ場合、物件の固定ページ入れてから、あ初期設定忘れてたとなって後から初期設定する場合があるのでプライバシーポリシーのidが5じゃない場合がある。
上記のツールでは対応できない形になっていた。なので改修する。

プライバシーポリシーの編集urlを取得したい

固定ページ一覧ページにいって編集urlを取得する
→ajaxで固定ページ一覧ページにいってhtmlを取得する
取得したhtmlの中からプライバシーポリシー編集urlを探す

各ページのタイトルは.post_nameが使われているのでそこを軸にurlをさがしてみようと思った。
参照:
http://www.hp-stylelink.com/news/2013/11/20131122.php
http://www.task-notes.com/entry/20140725/1406216933

以下をコンソールでたたくと

 $('.post_name').each(function() {
   console.log($(this).html());
 });

こんな感じで表示される。

policyが取得できてるのが確認できた。ここからどうやって取得するか

以下を軸に編集urlはどこになるかというと

<div class="post_name">policy</div>

親に位置しているのがわかった。以下参照によると
http://uxmilk.jp/8150
要素の親の要素が取得できるらしい。

編集urlは直近の親ではなくその先の親の配下に位置しているので
対象の要素の祖父の配下のaタグのhrefを取得の記述。

$(this).parent().parent().find('a').attr("href");
$('.post_name').each(function() {
  if($(this).html() == 'policy') {
    let url = $(this).parent().parent().find('a').attr("href");
    console.log(url);
  }
});


取得できた。

このやり方は多分ベストではないので
このやり方のほうがいいよ、など投稿してもらえるとありがたいです。