PluginProbe ʕ •ᴥ•ʔ
SEO SIMPLE PACK / 2.2.3
SEO SIMPLE PACK v2.2.3
1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 2.0.0 2.1.0 2.1.1 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 2.3.0 2.3.1 2.4.0 2.4.1 2.4.2 2.5.0 2.5.1 3.0.0 3.1.0 3.1.1 3.1.2 3.2.0 3.2.1 3.3.0 3.3.1 3.4.0 3.5.0 3.5.1 3.5.2 3.6.0 3.6.1 3.6.2 3.6.3 3.7.0 trunk 1.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2
seo-simple-pack / src / js / mediauploader.js
seo-simple-pack / src / js Last commit date
common.js 5 years ago mediauploader.js 5 years ago ssp.js 5 years ago
mediauploader.js
85 lines
1 // 画像選択処理
2 console.log('Loaded media-uploader.js.');
3
4 (function ($) {
5 let customUploader = null;
6
7 // 画像選択時の処理
8 function mediaSelectBtnClick(btnId) {
9
10 // プレビューエリア
11 const previewid = 'preview_' + btnId;
12 const previewArea = $('#' + previewid);
13
14 // inputタグ
15 const srcInputId = 'src_' + btnId;
16 const srcInputField = $('#' + srcInputId);
17
18 // Create a new media frame
19 customUploader = wp.media({
20 // title: '画像を選択',
21 // button: { text: '画像を選択' },
22 library: { type: 'image' },
23 multiple: false,
24 });
25
26 // When an image is selected in the media frame...
27 customUploader.on('select', function () {
28 // Get media attachment details from the frame state
29 const images = customUploader.state().get('selection');
30
31 // Get media attachment details from the frame state
32 const theImage = images.first().toJSON();
33
34 // inputタグにURLをセット
35 srcInputField.val(theImage.url);
36 srcInputField.change();
37
38 // プレビューエリアを更新
39 previewArea.html(
40 '<img src="' + theImage.url + '" alt="" />'
41 );
42
43 // クローズ
44 // $('.media-modal-close').click();
45 });
46
47 // Finally, open the modal on click
48 customUploader.open();
49 }
50
51 //画像削除の処理
52 function mediaClearBtnClick(btnId) {
53 // プレビューエリア
54 const previewid = 'preview_' + btnId;
55 const previewArea = $('#' + previewid);
56
57 // inputタグ
58 const srcInputId = 'src_' + btnId;
59 const srcInputField = $('#' + srcInputId);
60
61 // inputタグのvalueをリセット
62 srcInputField.val('');
63 srcInputField.change();
64 // srcInputField.focus(); // ブロックエディターの要素にchange()が反応しない
65
66 // プレビューエリアをリセット
67 previewArea.empty();
68 }
69
70 // 画像選択ボタンをクリックした時
71 $(document).on('click', '[name=ssp-media-upload]', function (e) {
72 e.preventDefault();
73 const btnId = $(this).attr('data-id');
74 console.log(btnId);
75 mediaSelectBtnClick(btnId);
76 });
77
78 // クリアボタンを押した時
79 $(document).on('click', '[name=ssp-media-clear]', function () {
80 const btnId = $(this).attr('data-id');
81 mediaClearBtnClick(btnId);
82 });
83
84 })(window.jQuery);
85