首页 >CMS教程 >WordPress >为WordPress创建一个URL Shortener插件

为WordPress创建一个URL Shortener插件

Christopher Nolan
Christopher Nolan原创
2025-02-17 11:29:101018浏览

为WordPress创建一个URL Shortener插件

URL缩短是一种使URL长度短的技术,并且仍然链接到所需页面。这是通过在域名短的域名上使用重定向来实现的,该域名链接到具有较长URL的网页。

在本教程中,我将向您展示如何使用Google的URL Shortener API为WordPress创建URL缩短插件。

钥匙要点

    >该教程提供了有关如何使用Google的URL缩短器API为WordPress创建URL缩短插件的分步指南。该插件对具有字符限制,印刷材料和QR码的平台可能是有益的。
  • 要使用Google URL Shortener API,需要一个API键。 Google使用此键来跟踪您的应用程序,可以通过Google Developers Console获取。
  • >教程还解释了如何为插件创建设置页面,管理员可以在其中输入URL Shortener API密钥。 API密钥作为WordPress选项存储在具有名称URL-shortener-Input-field的WordPress选项中。
  • >创建的插件将在“元编辑”屏幕中的元盒中显示缩短的URL,下面的每个帖子下方都显示了缩短的URL。它可以与Google URL Shortener Web服务无缝运行,并且并非每次都请求新的URL,而是将其存储在检索后。
  • >
  • URL缩短的原因
  • 在开始构建URL缩短插件之前
在Twitter和其他一些消息服务上,消息可以包含的字符数量有限制。因此,如果您要发送长URL,则它将占据大部分消息。

>

>印刷书籍或显示标牌通常会使用缩短的URL,因为它们易于读取和键入。

> QR码具有字符限制。很长的URL不适合,因此需要缩短URL。
  • >获取Google URL Shortener API键
  • 要使用Google URL Shortener API,您需要获取API密钥。 Google使用此API键来跟踪您的应用程序。
  • 这是获取API密钥的步骤:

访问Google Developers Console。

选择现有项目或创建一个新项目。

在左侧栏中,单击并展开APIS&AUTH。

接下来,单击API。在API列表中,请确保Google URL Shortener API的状态已打开。

> 在左侧的侧边栏中,选择凭据。如果还没有,则生成公共访问密钥。此公共访问密钥是API密钥。
  • 插件目录和文件
  • 我们的插件将包含一个目录和一个文件。这是结构:
  • 为了使插件可安装,我们将此代码放在url-shortener.php文件中:
  • >
--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。

这是设置页面的外观:

为WordPress创建一个URL Shortener插件> Google URL Shortener API

的概述

>要缩短一个长URL,您需要将邮政请求发送到https://www.googleapis.com/urlshortener/v1/url url带有API键和长URL。

这是示例请求的样子:

这是示例响应看起来像:
<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

>我们想在“邮政编辑”屏幕中的元框中显示缩短的URL。为了创建一个元框,我们将使用元盒API,对于URL缩短,我们将使用WordPress HTTP API。

这是在元框中显示我们的缩短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。

    这个插件在Google URL Shortener Web服务中播放很好
  • 这是元编辑屏幕中的meta框的样子:
  • 在前端显示短URL
  • >我们还希望在每个帖子下方显示缩短的URL。这是执行此操作的代码:

这是此代码的工作方式:

为WordPress创建一个URL Shortener插件>我们首先检查以确保WordPress正在处理帖子。如果是页面或自定义帖子类型,那么我们不会显示简短的URL。但是,如果要在每个页面中显示它,请从功能代码中删除前两行。

然后,我们在元盒中显示短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插件

如果您想查看现有插件,则WordPress.org插件中最受欢迎的两个shortener插件是URL Shortener和WP URL Shorten。

wp URL缩短使用ref.li缩短URL。 Ref.Li提供了实时统计数据和其他通过缩短URL访问您网站的流量信息。

URL Shortener插件可让您在bit.ly,su.pr,yourls,goo.gl和许多其他服务之间进行选择。该插件还可以生成QR码。

结论

在本教程中,我向您展示了如何轻松构建自己的URL缩短插件。现在,您可以继续扩展此功能,以添加更多功能,例如QR码支持并使用其他URL缩短服务。请在下面与自己的插件分享您的经验。

>

经常询问的问题(常见问题解答)有关WordPress创建URL Shortener插件

>什么是URL Shortener插件,为什么我需要它的WordPress网站?

一个URL Shortener插件是一种工具,可以帮助您为WordPress帖子和页面创建更短,更易于管理的URL。这些缩短的URL更容易在社交媒体,电子邮件和其他平台上共享。它们还使您的链接看起来更干净,更专业。如果您的WordPress网站具有长而复杂的URL,则URL Shortener插件可以大大改善您的用户体验和SEO。通过创建原始URL的独特,较短的版本。当用户单击缩短的URL时,它们会重定向到原始的长URL。这个过程是无缝的,不会影响用户的浏览体验。该插件还跟踪已缩短URL的点击次数,为您的营销工作提供有价值的数据。

我可以自定义缩短的URL吗?

是的,大多数URL Shorterer插件允许您自定义。您缩短的URL。您可以添加自己的关键字,以使URL更有意义和相关。这不仅使您的URL更容易记住,而且还可以改善您的SEO。

>是否可以在WordPress中恢复“ shortlink'按钮?获取WordPress中的短链接按钮。此按钮已在WordPress 4.4中删除,但是您可以使用插件或将代码段添加到主题的functions.php文件中。

是否有WordPress的免费URL缩短插件? 🎜>是的,有几个免费的URL缩短插件可用于WordPress。一些受欢迎的包括URL Shortify,漂亮的链接和刻薄的链接。这些插件提供基本的URL缩短功能,如果您不熟悉URL缩短,则是一个很好的起点。

>我如何跟踪缩短URL的性能?

大多数URL Shortener插件都提供分析功能,使您可以跟踪缩短的URL的性能。您可以看到单击URL的次数,用户的地理位置,推荐来源等等。这些数据可以帮助您更好地了解您的受众并优化营销策略。

>如果我不是精通技术的话,我可以使用URL Shortener插件吗?大多数URL Shortener插件设计为用户友好,不需要任何技术知识。它们具有易于使用的接口和详细说明。如果您可以浏览WordPress仪表板,则可以使用URL Shortener插件。

> URL ShortEner插件可以改善我的SEO?

是的,是的,URL Shortener插件可以改善您的SEO。缩短的URL对于搜索引擎而言更容易爬网和索引。他们还通过使您的链接更易于管理和共享来改善用户体验,这可以提高您网站在搜索引擎结果中的排名。

>

我可以使用URL Shortener插件作为我的会员链接吗? ,您可以将URL Shortener插件用于会员链接。实际上,强烈建议使用。缩短的URL看起来更干净,更专业,这可以提高点击率和转换。一些插件还允许您在会员链接中添加一个nofollow属性,这对SEO都很有用。

>

>是否存在与使用URL Shortener插件有关的风险?许多好处,也有一些风险。例如,如果插件的服务器下降,则缩短URL可能会停止工作。另外,某些用户可能会谨慎单击缩短的URL,因为他们看不到目的地URL。因此,重要的是要选择一个可靠的插件并明智地使用缩短的URL。

>

以上是为WordPress创建一个URL Shortener插件的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn