自分のサイトからWordPressのログインページを新しいタブで開き、ログイン情報を自動入力したいです。
以前は動いていた(らしい)ソースコードを頂いていて、それを見てみると、
html
1<form class="form-inline d-inline" id="loginform" action="ログイン画面のURL" method="post" name="ページ名" target="_blank"> 2 <input type="hidden" name="log" id="user_login" class="input" value="ログインID" size="20"> 3 <input type="hidden" name="pwd" id="user_pass" class="input" value="ログインパスワード" size="20"> 4 <input type="hidden" name="redirect_to" value="ログイン後のリダイレクト先"> 5 <input type="hidden" name="testcookie" value="1"> 6 <button class="card-link btn btn-sm btn-primary px-2 waves-effect waves-light" name="submit" value=""> 7 ログイン 8 <i class="fa fa-external-link" aria-hidden="true"></i></button> 9</form>
このように書かれていました。
※一部日本語で書かれている部分は私が書き換えました。正しくURLやID、パスワードが入っています。
具体的なコードは見つけられませんでしたが、似たような内容のことを書いてあるサイトを少し見つけて、
以前はこのようなフォームで自動で入力されたのでしょうか?
現在は、このフォームをsubmitしても、ログインページが開かれるだけでIDとパスワードは入力されません。
なので、新しく下記のスクリプトを書きました。
JavaScript
1function openLoginPage(formname){ 2 var form = document.getElementsByName(formname)[0]; 3 var wnd = window.open("ログインページURL"); 4 wnd.addEventListener("load", () => { 5 wnd.document.loginform.log.value = form.log.value; 6 wnd.document.loginform.pwd.value = form.pwd.value; 7 }); 8}
このfunctionをbuttonタグのonclick属性に入れてみたのですが、
同じドメイン(localhostで試しました)だとうまく動きますが、localhostから別ドメイン(WordPressサイト)だと、loadイベントが呼ばれません。
documentも取得できません。
HTMLとJavaScriptでこれらを解決することはできないでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/07 16:02
2020/07/07 16:44