前提・実現したいこと
WordPressにて、管理者がユーザーを作成するログイン必須のページを作成したいと思っております。
その際に、ユーザー編集ページのウェブサイトの項目に、プロフィールを掲載した外部サイトのURLを入力したいが、
URLの文字数が100字を超えるため登録ができませんでした。
発生している問題・エラーメッセージ
URLを入力して、ユーザーの更新を行うが、空欄または、以前に入力した文字列が反映された状態に戻る。
特にエラーメッセージは表示されない。
試したこと
http://が自動的に付与されるため、適当な数字を93字入力したところまで反映したのを確認。
94文字以降は反映されなかった。
WordPressのコアファイル類から関係ありそうなところを探していると、
wp-admin/include/schema.php
の190行以降で
user_url varcher(100)
を発見し、おそらくデータベースへの記録可能な文字数がここだろうと値を「255」に変更。
ほか、maxlengthで記述がないか検索をおこなったが、
ユーザー部分に関わる記述は探し出すことができませんでした。
URLから!"#$%&'()=~等の記号を全て抜いた状態でも、やはり100文字を超えると反映されませんでした。
補足情報(FW/ツールのバージョンなど)
wordpress: 5.3.2
Web Server: Apache
PHP Version: 7.3.12
MySQL Version: 5.7.28
使用テーマ: twenty twenty
考えること
ウェブサイトの入力項目だけでなく、テキストボックスやフォームの全てまたは複数にまたがって最大長が設定されている?
XSS対策等で最大長が標準で設定されているだろうとは思うのですが、ログイン必須のサイトにしているので多少のセキュリティ低下は仕方ないと思っています。
ユーザーのプロフィール(URL)の最大長の変更が行えるプラグイン等でも、ご存知の方いらっしゃったらご教示くだされば幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/27 04:26
2019/12/27 05:40 編集
2019/12/27 05:54
2019/12/27 06:22