Skip to content

Commit 31b29ff

Browse files
committed
WIP
1 parent 2e1ae73 commit 31b29ff

File tree

2 files changed

+70
-0
lines changed

2 files changed

+70
-0
lines changed

quick-weblog.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
2+
const backup = 'https://article-extractor2.p.rapidapi.com/article/parse?url=https%3A%2F%2Frapidapi.com%2Fblog%2Frapidapi-marketplace-is-now-rapidapi-hub%2F';
3+
4+
function getArticle(url) {
5+
const options = {
6+
method: 'GET',
7+
headers: {
8+
'X-RapidAPI-Key': api_key,
9+
'X-RapidAPI-Host': 'article-extractor2.p.rapidapi.com'
10+
}
11+
};
12+
13+
fetch(url, options)
14+
.then(response => response.json())
15+
.then(response => console.log(response))
16+
.catch(err => console.error(err));
17+
}
18+
19+
console.log('quick-weblog.js success');
20+
21+
22+
{/* <script type="module" src="<?php echo plugin_dir_url( __FILE__ ); ?>quick-weblog.js"></script> */}

quick-weblog.php

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
Text Domain: quick-weblog
1313
*/
1414

15+
$api_key = get_option('quick_weblog_api_key', '');
16+
1517
function quick_weblog_form() {
1618
?>
1719
<style>
@@ -104,7 +106,17 @@ function quick_weblog_add_menu_page() {
104106
'dashicons-welcome-write-blog', // Icon
105107
4.9021042 // Position in the menu
106108
);
109+
110+
add_submenu_page(
111+
'quick-weblog', // Parent slug
112+
__( 'API Settings', 'quick-weblog' ), // Page title
113+
__( 'API Settings', 'quick-weblog' ), // Menu title
114+
'manage_options', // Capability required to access the page
115+
'quick-weblog-settings', // Menu slug
116+
'quick_weblog_settings_page' // Callback function to render the page
117+
);
107118
}
119+
108120
add_action( 'admin_menu', 'quick_weblog_add_menu_page' );
109121

110122
function quick_weblog_menu_page() {
@@ -163,4 +175,40 @@ function quick_weblog_submit_form() {
163175

164176
add_action( 'admin_post_quick_weblog_submit_form', 'quick_weblog_submit_form' );
165177

178+
function quick_weblog_settings_init() {
179+
add_settings_section('quick_weblog_api_section', 'API Settings', null, 'quick-weblog');
180+
add_settings_field('quick_weblog_api_key', 'API Key', 'quick_weblog_api_key_callback', 'quick-weblog', 'quick_weblog_api_section');
181+
182+
register_setting('quick_weblog_settings', 'quick_weblog_use_api', 'boolval');
183+
register_setting('quick_weblog_settings', 'quick_weblog_api_key', 'sanitize_text_field');
184+
}
185+
186+
add_action('admin_init', 'quick_weblog_settings_init');
187+
188+
function quick_weblog_api_key_callback() {
189+
$value = get_option('quick_weblog_api_key', '');
190+
echo '<input type="text" name="quick_weblog_api_key" value="' . esc_attr($value) . '" />';
191+
}
192+
193+
function quick_weblog_add_settings_link($links) {
194+
$settings_link = '<a href="' . admin_url('options-general.php?page=quick-weblog') . '">' . __( 'Settings', 'quick-weblog' ) . '</a>';
195+
array_push($links, $settings_link);
196+
return $links;
197+
}
198+
199+
add_filter('plugin_action_links_' . plugin_basename(__FILE__), 'quick_weblog_add_settings_link');
200+
201+
function quick_weblog_settings_page() {
202+
?>
203+
<div class="wrap">
204+
<h1><?php _e( 'API Settings', 'quick-weblog' ); ?></h1>
205+
<form method="post" action="options.php">
206+
<?php settings_fields('quick_weblog_settings'); ?>
207+
<?php do_settings_sections('quick-weblog'); ?>
208+
<?php submit_button(); ?>
209+
</form>
210+
</div>
211+
<?php
212+
}
213+
166214
?>

0 commit comments

Comments
 (0)