12
12
Text Domain: quick-weblog
13
13
*/
14
14
15
- function quick_weblog_form () {
16
-
15
+ function quick_weblog_form ()
16
+ {
17
+
17
18
$ api_key = get_option ('quick_weblog_api_key ' , '' );
18
19
19
- ?>
20
+ ?>
20
21
<style>
21
22
#quick-weblog {
22
23
padding: 1em 0;
23
24
}
25
+
24
26
#quick-weblog div {
25
27
padding: 0.75em 0;
26
28
}
29
+
27
30
#quick-weblog div:nth-last-child(1) {
28
31
padding-bottom: 0;
29
- }
32
+ }
33
+
30
34
#quick-weblog div:nth-child(1) {
31
35
padding-top: 0;
32
- }
36
+ }
37
+
33
38
#quick-weblog div label {
34
39
font-weight: 600;
35
40
}
41
+
36
42
#quick-weblog-description {
37
43
max-width: 520px;
38
44
}
45
+
39
46
#quick-weblog div input,
40
47
#quick-weblog div textarea,
41
48
#quick-weblog div select {
42
49
display: block;
43
50
max-width: 600px;
44
51
width: 99%;
45
52
}
53
+
46
54
#quick-weblog div input[type=submit] {
47
55
width: auto;
48
56
}
49
57
</style>
50
58
51
- <script src="<?php echo plugin_dir_url ( __FILE__ ); ?> quick-weblog.js"></script>
59
+ <script src="<?php echo plugin_dir_url (__FILE__ ); ?> quick-weblog.js"></script>
52
60
53
61
<script>
54
62
window.addEventListener("DOMContentLoaded", (event) => {
55
63
document.getElementById("quick-weblog-auto").addEventListener("click", (click_event) => {
56
64
click_event.preventDefault();
57
- getArticle(document.getElementById("quick-weblog-url").value, "<?php echo esc_js ( wp_kses ( $ api_key , array () ) ); ?> " );
65
+ getArticle(document.getElementById("quick-weblog-url").value, "<?php echo esc_js (wp_kses ($ api_key , array ()) ); ?> ");
58
66
});
59
67
});
60
68
</script>
61
69
62
70
<p id="quick-weblog-description">Quickly create a simple Post that highlights an existing news article. Posts include a captioned image and quote with URL citation of original article. All fields are required.</p>
63
71
64
72
<div class="card">
65
- <form id="quick-weblog" method="post" action="<?php echo esc_url ( admin_url ('admin-post.php ' ) ); ?> ">
73
+ <form id="quick-weblog" method="post" action="<?php echo esc_url (admin_url ('admin-post.php ' )); ?> ">
66
74
<div>
67
- <label for="url"><?php _e ( 'Post URL ' , 'quick-weblog ' ); ?> </label>
75
+ <label for="url"><?php _e ('Post URL ' , 'quick-weblog ' ); ?> </label>
68
76
<input type="text" name="url" id="quick-weblog-url" required>
69
77
</div>
70
78
@@ -74,55 +82,56 @@ function quick_weblog_form() {
74
82
</div>
75
83
76
84
<div>
77
- <label for="title"><?php _e ( 'Post Title ' , 'quick-weblog ' ); ?> </label>
85
+ <label for="title"><?php _e ('Post Title ' , 'quick-weblog ' ); ?> </label>
78
86
<input type="text" name="title" id="quick-weblog-title" required>
79
87
</div>
80
88
81
89
<div>
82
- <label for="image_url"><?php _e ( 'Image URL ' , 'quick-weblog ' ); ?> </label>
90
+ <label for="image_url"><?php _e ('Image URL ' , 'quick-weblog ' ); ?> </label>
83
91
<input type="text" name="image_url" id="quick-weblog-image_url" required>
84
92
</div>
85
93
86
94
<div>
87
- <label for="image_description"><?php _e ( 'Image Description ' , 'quick-weblog ' ); ?> </label>
95
+ <label for="image_description"><?php _e ('Image Description ' , 'quick-weblog ' ); ?> </label>
88
96
<input type="text" name="image_description" id="quick-weblog-image_description" required>
89
97
</div>
90
98
91
99
<div>
92
- <label for="quote"><?php _e ( 'Quote ' , 'quick-weblog ' ); ?> </label>
100
+ <label for="quote"><?php _e ('Quote ' , 'quick-weblog ' ); ?> </label>
93
101
<textarea name="quote" id="quick-weblog-quote" rows="6" required></textarea>
94
102
</div>
95
103
96
104
<div>
97
- <label for="category"><?php _e ( 'Category ' , 'quick-weblog ' ); ?> </label>
98
- <?php wp_dropdown_categories ( array ( 'name ' => 'category ' , 'orderby ' => 'name ' , 'taxonomy ' => 'category ' , 'selected ' => 1 ) ); ?>
105
+ <label for="category"><?php _e ('Category ' , 'quick-weblog ' ); ?> </label>
106
+ <?php wp_dropdown_categories (array ('name ' => 'category ' , 'orderby ' => 'name ' , 'taxonomy ' => 'category ' , 'selected ' => 1 )); ?>
99
107
</div>
100
108
101
109
<div>
102
- <label for="tags"><?php _e ( 'Tags ' , 'quick-weblog ' ); ?> </label>
110
+ <label for="tags"><?php _e ('Tags ' , 'quick-weblog ' ); ?> </label>
103
111
<input type="text" name="tags" id="quick-weblog-tags" required>
104
112
</div>
105
113
106
114
<div>
107
- <label for="post_date"><?php _e ( 'Post Date ' , 'quick-weblog ' ); ?> </label>
108
- <?php $ default_date = date ( 'Y-m-d\TH:i ' ); ?>
115
+ <label for="post_date"><?php _e ('Post Date ' , 'quick-weblog ' ); ?> </label>
116
+ <?php $ default_date = date ('Y-m-d\TH:i ' ); ?>
109
117
<input type="datetime-local" name="post_date" id="quick-weblog-post_date" required value="<?php echo $ default_date ; ?> ">
110
118
</div>
111
119
112
120
<div>
113
121
<input type="hidden" name="action" value="quick_weblog_submit_form">
114
- <?php wp_nonce_field ( 'quick_weblog_submit_form ' , 'quick_weblog_form_nonce ' ); ?>
115
- <input type="submit" value="<?php _e ( 'Submit ' , 'quick-weblog ' ); ?> ">
122
+ <?php wp_nonce_field ('quick_weblog_submit_form ' , 'quick_weblog_form_nonce ' ); ?>
123
+ <input type="submit" value="<?php _e ('Submit ' , 'quick-weblog ' ); ?> ">
116
124
</div>
117
125
</form>
118
126
</div>
119
- <?php
127
+ <?php
120
128
}
121
129
122
- function quick_weblog_add_menu_page () {
130
+ function quick_weblog_add_menu_page ()
131
+ {
123
132
add_menu_page (
124
- __ ( 'Quick Weblog ' , 'quick-weblog ' ), // Page title
125
- __ ( 'Quick Weblog ' , 'quick-weblog ' ), // Menu title
133
+ __ ('Quick Weblog ' , 'quick-weblog ' ), // Page title
134
+ __ ('Quick Weblog ' , 'quick-weblog ' ), // Menu title
126
135
'manage_options ' , // Capability required to access the page
127
136
'quick-weblog ' , // Menu slug
128
137
'quick_weblog_menu_page ' , // Callback function to render the page
@@ -132,73 +141,76 @@ function quick_weblog_add_menu_page() {
132
141
133
142
add_submenu_page (
134
143
'quick-weblog ' , // Parent slug
135
- __ ( 'API Settings ' , 'quick-weblog ' ), // Page title
136
- __ ( 'API Settings ' , 'quick-weblog ' ), // Menu title
144
+ __ ('API Settings ' , 'quick-weblog ' ), // Page title
145
+ __ ('API Settings ' , 'quick-weblog ' ), // Menu title
137
146
'manage_options ' , // Capability required to access the page
138
147
'quick-weblog-settings ' , // Menu slug
139
148
'quick_weblog_settings_page ' // Callback function to render the page
140
149
);
141
150
}
142
151
143
- add_action ( 'admin_menu ' , 'quick_weblog_add_menu_page ' );
152
+ add_action ('admin_menu ' , 'quick_weblog_add_menu_page ' );
144
153
145
- function quick_weblog_menu_page () {
146
- ?>
154
+ function quick_weblog_menu_page ()
155
+ {
156
+ ?>
147
157
<div class="wrap">
148
- <h1><?php _e ( 'Quick Weblog ' , 'quick-weblog ' ); ?> </h1>
158
+ <h1><?php _e ('Quick Weblog ' , 'quick-weblog ' ); ?> </h1>
149
159
<?php quick_weblog_form (); ?>
150
160
</div>
151
- <?php
161
+ <?php
152
162
}
153
163
154
- function quick_weblog_submit_form () {
164
+ function quick_weblog_submit_form ()
165
+ {
155
166
// Check the nonce to verify the form submission
156
- if ( ! isset ( $ _POST ['quick_weblog_form_nonce ' ] ) || ! wp_verify_nonce ( $ _POST ['quick_weblog_form_nonce ' ], 'quick_weblog_submit_form ' ) ) {
157
- wp_die ( __ ( 'Error: Invalid nonce. ' , 'quick-weblog ' ) );
167
+ if (! isset ($ _POST ['quick_weblog_form_nonce ' ]) || !wp_verify_nonce ($ _POST ['quick_weblog_form_nonce ' ], 'quick_weblog_submit_form ' ) ) {
168
+ wp_die (__ ('Error: Invalid nonce. ' , 'quick-weblog ' ) );
158
169
}
159
170
160
171
// Get the form data
161
- $ title = sanitize_text_field ( $ _POST ['title ' ] );
162
- $ image_url = sanitize_text_field ( $ _POST ['image_url ' ] );
163
- $ image_description = sanitize_text_field ( $ _POST ['image_description ' ] );
164
- $ quote = sanitize_text_field ( $ _POST ['quote ' ] );
165
- $ url = esc_url_raw ( $ _POST ['url ' ] );
166
- $ category = intval ( $ _POST ['category ' ] );
167
- $ tags = sanitize_text_field ( $ _POST ['tags ' ] );
172
+ $ title = sanitize_text_field ($ _POST ['title ' ]);
173
+ $ image_url = sanitize_text_field ($ _POST ['image_url ' ]);
174
+ $ image_description = sanitize_text_field ($ _POST ['image_description ' ]);
175
+ $ quote = sanitize_text_field ($ _POST ['quote ' ]);
176
+ $ url = esc_url_raw ($ _POST ['url ' ]);
177
+ $ category = intval ($ _POST ['category ' ]);
178
+ $ tags = sanitize_text_field ($ _POST ['tags ' ]);
168
179
169
180
// Create block content
170
181
$ image_block = '<!-- wp:image {"url":" ' . esc_attr ($ image_url ) . '","alt":" ' . esc_attr ($ image_description ) . '"} --> ' .
171
- '<figure class="wp-block-image"> ' .
172
- '<img src=" ' . esc_url ($ image_url ) . '" alt=" ' . esc_attr ($ image_description ) . '"> ' .
173
- '<figcaption> ' . esc_html ($ image_description ) . '</figcaption> ' .
174
- '</figure><!-- /wp:image --> ' ;
182
+ '<figure class="wp-block-image"> ' .
183
+ '<img src=" ' . esc_url ($ image_url ) . '" alt=" ' . esc_attr ($ image_description ) . '"> ' .
184
+ '<figcaption> ' . esc_html ($ image_description ) . '</figcaption> ' .
185
+ '</figure><!-- /wp:image --> ' ;
175
186
176
187
$ quote_block = '<!-- wp:quote {"citation":" ' . esc_attr ($ url ) . '"} --> ' .
177
- '<blockquote class="wp-block-quote"> ' .
178
- '<p> ' . esc_html ($ quote ) . '</p> ' .
179
- '<cite><a href=" ' . esc_url ($ url ) . '" target="_blank" rel="noreferrer noopener"> ' . esc_html ($ url ) . '</a></cite> ' .
180
- '</blockquote><!-- /wp:quote --> ' ;
188
+ '<blockquote class="wp-block-quote"> ' .
189
+ '<p> ' . esc_html ($ quote ) . '</p> ' .
190
+ '<cite><a href=" ' . esc_url ($ url ) . '" target="_blank" rel="noreferrer noopener"> ' . esc_html ($ url ) . '</a></cite> ' .
191
+ '</blockquote><!-- /wp:quote --> ' ;
181
192
182
193
$ block_content = $ image_block . $ quote_block ;
183
194
184
195
// Create a new post
185
196
$ post_data = array (
186
197
'post_title ' => $ title ,
187
198
'post_content ' => $ block_content ,
188
- 'post_category ' => array ( $ category ),
199
+ 'post_category ' => array ($ category ),
189
200
'tags_input ' => $ tags ,
190
201
'post_status ' => 'publish '
191
202
);
192
- $ post_id = wp_insert_post ( $ post_data );
203
+ $ post_id = wp_insert_post ($ post_data );
193
204
194
205
// Redirect to the new post
195
- wp_redirect ( get_permalink ( $ post_id ) );
206
+ wp_redirect (get_permalink ($ post_id) );
196
207
exit ();
197
208
}
198
209
199
- add_action ( 'admin_post_quick_weblog_submit_form ' , 'quick_weblog_submit_form ' );
210
+ add_action ('admin_post_quick_weblog_submit_form ' , 'quick_weblog_submit_form ' );
200
211
201
- function quick_weblog_settings_init () {
212
+ function quick_weblog_settings_init ()
213
+ {
202
214
add_settings_section ('quick_weblog_api_section ' , 'API Settings ' , null , 'quick-weblog ' );
203
215
add_settings_field ('quick_weblog_api_key ' , 'API Key ' , 'quick_weblog_api_key_callback ' , 'quick-weblog ' , 'quick_weblog_api_section ' );
204
216
@@ -208,30 +220,33 @@ function quick_weblog_settings_init() {
208
220
209
221
add_action ('admin_init ' , 'quick_weblog_settings_init ' );
210
222
211
- function quick_weblog_api_key_callback () {
223
+ function quick_weblog_api_key_callback ()
224
+ {
212
225
$ value = get_option ('quick_weblog_api_key ' , '' );
213
226
echo '<input type="text" name="quick_weblog_api_key" value=" ' . esc_attr ($ value ) . '" /> ' ;
214
227
}
215
228
216
- function quick_weblog_add_settings_link ($ links ) {
217
- $ settings_link = '<a href=" ' . admin_url ('options-general.php?page=quick-weblog ' ) . '"> ' . __ ( 'Settings ' , 'quick-weblog ' ) . '</a> ' ;
229
+ function quick_weblog_add_settings_link ($ links )
230
+ {
231
+ $ settings_link = '<a href=" ' . admin_url ('options-general.php?page=quick-weblog ' ) . '"> ' . __ ('Settings ' , 'quick-weblog ' ) . '</a> ' ;
218
232
array_push ($ links , $ settings_link );
219
233
return $ links ;
220
234
}
221
235
222
236
add_filter ('plugin_action_links_ ' . plugin_basename (__FILE__ ), 'quick_weblog_add_settings_link ' );
223
237
224
- function quick_weblog_settings_page () {
225
- ?>
238
+ function quick_weblog_settings_page ()
239
+ {
240
+ ?>
226
241
<div class="wrap">
227
- <h1><?php _e ( 'API Settings ' , 'quick-weblog ' ); ?> </h1>
242
+ <h1><?php _e ('API Settings ' , 'quick-weblog ' ); ?> </h1>
228
243
<form method="post" action="options.php">
229
244
<?php settings_fields ('quick_weblog_settings ' ); ?>
230
245
<?php do_settings_sections ('quick-weblog ' ); ?>
231
246
<?php submit_button (); ?>
232
247
</form>
233
248
</div>
234
- <?php
249
+ <?php
235
250
}
236
251
237
- ?>
252
+ ?>
0 commit comments