URL缩短是一种使URL长度短的技术,并且仍然链接到所需页面。这是通过在域名短的域名上使用重定向来实现的,该域名链接到具有较长URL的网页。
在本教程中,我将向您展示如何使用Google的URL Shortener API为WordPress创建URL缩短插件。钥匙要点
> QR码具有字符限制。很长的URL不适合,因此需要缩短URL。
选择现有项目或创建一个新项目。
在左侧栏中,单击并展开APIS&AUTH。接下来,单击API。在API列表中,请确保Google URL Shortener API的状态已打开。
> 在左侧的侧边栏中,选择凭据。如果还没有,则生成公共访问密钥。此公共访问密钥是API密钥。--url-shortener -url-shortener.php
我们需要为插件创建一个设置页面,管理员可以在其中输入URL Shortener API密钥。这是使用WordPress设置API创建设置页面的代码
<span><span><?php </span></span><span> </span><span><span>/* </span></span><span><span>Plugin Name: URL Shortener </span></span><span><span>Plugin URI: http://www.sitepoint.com </span></span><span><span>Description: Create's a Shortened URL of every post. </span></span><span><span>Version: 1.0 </span></span><span><span>Author: Narayan Prusty </span></span><span><span>*/</span></span>>我们将API密钥存储为WordPress选项,名称为url-shortener-input-field。
这是设置页面的外观:
这是示例请求的样子:
这是示例响应看起来像:
<span><span><?php </span></span><span> </span><span><span>function url_shortener_settings_page() </span></span><span><span>{ </span></span><span> <span>add_settings_section("section", "Enter Key Details", null, "url-shortener"); </span></span><span> <span>add_settings_field("url-shortener-input-field", "API Key", "url_shortener_input_field_display", "url-shortener", "section"); </span></span><span> <span>register_setting("section", "url-shortener-input-field"); </span></span><span><span>} </span></span><span> </span><span><span>function url_shortener_input_field_display() </span></span><span><span>{ </span></span><span> <span>?></span> </span> <span><span><span><input</span> type<span>="text"</span> name<span>="url-shortener-input-field"</span> value<span>="<span><?php echo get_option('url-shortener-input-field'); ?></span>"</span> /></span> </span> <span><span><?php </span></span><span><span>} </span></span><span> </span><span><span>add_action("admin_init", "url_shortener_settings_page"); </span></span><span> </span><span><span>function url_shortener_page() </span></span><span><span>{ </span></span><span> <span>?></span> </span> <span><span><span><div</span> class<span>="wrap"</span>></span> </span> <span><span><span><h1</span>></span>URL Shortener Setting<span><span></h1</span>></span> </span> <span><span><span><form</span> method<span>="post"</span> action<span>="options.php"</span>></span> </span> <span><span><?php </span></span><span> <span>settings_fields("section"); </span></span><span> <span>do_settings_sections("url-shortener"); </span></span><span> <span>submit_button(); </span></span><span> <span>?></span> </span> <span><span><span></form</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><?php </span></span><span><span>} </span></span><span> </span><span><span>function menu_item() </span></span><span><span>{ </span></span><span> <span>add_submenu_page("options-general.php", "URL Shortener", "URL Shortener", "manage_options", "url-shortener", "url_shortener_page"); </span></span><span><span>} </span></span><span> </span><span><span>add_action("admin_menu", "menu_item");</span></span>
注意:您每天都不能使用相同的API键发送超过100万个请求。
<span>POST https://www.googleapis.com/urlshortener/v1/url </span><span>Content-Type: application/json </span> <span>{"longUrl": "https://www.sitepoint.com/"}</span>>
>在元盒中显示缩短的URL
以下是此代码的工作方式:
>
<span>{ </span> <span>"kind": "urlshortener#url", </span> <span>"id": "http://goo.gl/fqsT", </span> <span>"longUrl": "https://www.sitepoint.com/" </span><span>}</span>我们使用add_meta_box函数创建了一个元框。
我们正在使用get_permalink()函数检索帖子的长URL。 然后,我们正在检查数据库中是否已经在数据库中作为WordPress选项中的该长URL的短URL。如果不是,那么我们将使用HTTP API检索它,并将其存储为WordPress选项。否则,我们使用现有的简短URL。
这是此代码的工作方式:
这是它在前端的外观:
<span>function url_shortener_meta_box_markup($object) </span><span>{ </span> <span>$key = get_permalink($object->ID); </span> <span>if(get_option('url-shortener-input-field', '') != "") </span> <span>{ </span> <span>if(get_option($key, "") != "") </span> <span>{ </span> <span>echo get_option($key, ""); </span> <span>return; </span> <span>} </span> <span>$url = 'https://www.googleapis.com/urlshortener/v1/url'; </span> <span>$result = wp_remote_post( </span> <span>add_query_arg( </span> <span>'key', </span> <span>get_option('url-shortener-input-field'), </span> <span>'https://www.googleapis.com/urlshortener/v1/url' </span> <span>), </span> <span>array( </span> <span>'body' => json_encode(array('longUrl' => esc_url_raw($key))), </span> <span>'headers' => array( 'Content-Type' => 'application/json') </span> <span>) </span> <span>); </span> <span>if(is_wp_error($result)){echo "Error"; return;} </span> <span>$result = json_decode($result['body']); </span> <span>$shortlink = $result->id; </span> <span>update_option($key, $shortlink); </span> <span>echo $shortlink; </span> <span>} </span><span>} </span> <span>function url_shortener_meta_box() </span><span>{ </span> <span>add_meta_box("url-shortener-meta-box", "Shorten URL", "url_shortener_meta_box_markup", "post", "side", "default", null); </span><span>} </span> <span>add_action("add_meta_boxes", "url_shortener_meta_box");</span>
现在,我们已经完成了为WordPress构建一个很棒的URL Shortener插件!
>WordPress.org插件目录中的流行URL Shortener插件wp URL缩短使用ref.li缩短URL。 Ref.Li提供了实时统计数据和其他通过缩短URL访问您网站的流量信息。
URL Shortener插件可让您在bit.ly,su.pr,yourls,goo.gl和许多其他服务之间进行选择。该插件还可以生成QR码。
结论
在本教程中,我向您展示了如何轻松构建自己的URL缩短插件。现在,您可以继续扩展此功能,以添加更多功能,例如QR码支持并使用其他URL缩短服务。请在下面与自己的插件分享您的经验。>什么是URL Shortener插件,为什么我需要它的WordPress网站?
是的,是的,URL Shortener插件可以改善您的SEO。缩短的URL对于搜索引擎而言更容易爬网和索引。他们还通过使您的链接更易于管理和共享来改善用户体验,这可以提高您网站在搜索引擎结果中的排名。
>>是否存在与使用URL Shortener插件有关的风险?许多好处,也有一些风险。例如,如果插件的服务器下降,则缩短URL可能会停止工作。另外,某些用户可能会谨慎单击缩短的URL,因为他们看不到目的地URL。因此,重要的是要选择一个可靠的插件并明智地使用缩短的URL。
>以上是为WordPress创建一个URL Shortener插件的详细内容。更多信息请关注PHP中文网其他相关文章!