WordPressのAmazonJSはWordPress5になっても使える便利なアフィリエイトコード用のプラグインなのだが、iPhone7Plusから使おうとすると、検索が終わってテンプレートを挿入しようと「選択」ボタンを押したタイミングで「挿入」ボタンが画面下にはみ出してしまい、どうやっても挿入できなくなる。Enterキーでもあればいいのだが……。
そこでプラグインをいじって解決する。
目次
環境
- WordPress 5.2.1
- AmazonJS 0.9
手順など
/wp-content/plugins/amazonjs/media-upload-type-amazonjs.php
というファイルの383行目あたりに、showTemplateFormという関数がある。
296行目のvar top = ($(window).height() / 2 - $templateForm.height() / 2) + $(window).scrollTop();
という行が、どうもiPhoneではうまく機能していないらしい。40くらいにしちゃってはどうか。
// template form function showTemplateForm(item) { $imageTemplateSelect.attr({disabled: (item.SmallImage) ? null : 'disabled'}); if (item.SmallImage) { $imageTemplateSelectLabel.removeClass('disabled'); } else { $imageTemplateSelectLabel.addClass('disabled'); } $overlay.height($container.height() + 40).show(); $preview.empty(); $previewCode.val(''); $templateSelect.attr('checked', null); $insert.attr({disabled: 'disabled'}); $templateForm.show(); // var top = ($(window).height() / 2 - $templateForm.height() / 2) + $(window).scrollTop();//←この値がおかしい。 var top = 40;//ここの値を適当にいい感じにしてやる $templateForm.css('top', top < 0 ? 0 : top); $('#template_amazonjs').attr('checked', 'checked').change(); }