我们希望访客能够链接到我们的网站并与他人分享我们的链接。但是,WordPress 通常会生成非常长的 URL,这很难分享。我将向您展示如何生成简短且不会断行的 URL。
请看这个页面:
http://wpml.org/documentation/getting-started-guide/language-setup/
这个 URL 包含 68 个字符。
这是中文翻译页面:
它包含 114 个字符。对于 Twitter 来说有点长,并且在电子邮件中很可能会断行。
当然,您可以使用众多 URL 缩短服务中的一种,但您真的需要吗?对于如此简单的事情,您真的需要让访客通过不同的域名进行代理吗?
看看 wpml.org 上每个页面的底部。您会看到它写着“此页面的短链接”。
这些链接的长度大约为 22 个字符。比之前的短了一些。
而且,当您点击它时,您会看到该页面的默认链接。这不是我们发明的。这就是 WordPress 的工作原理。每个页面都有一个 ID。当您链接到该 ID 时,您就链接到了该页面。WordPress 会将访客重定向到当前的固定链接,因此他们会看到美观的“SEO 友好”URL。
要将其添加到您的主题中,首先,创建一个生成这些默认链接的函数。此函数会检查当前的内容类型并为其生成 URL。
您可以复制这整段代码并将其添加到您站点的 functions.php 中。
function wpml_default_link($anchor){
global $sitepress;
$qv = false;
if(is_single()){
$qv = 'p=' . get_the_ID();
}elseif(is_page()){
$qv = 'page_id=' . get_the_ID();
}elseif(is_tag()){
$tag = &get_term(intval( get_query_var('tag_id') ), 'post_tag', OBJECT, 'display');
$qv = 'tag=' . $tag->slug;
}elseif(is_category()){
$qv = 'cat=' . get_query_var('cat');
}elseif(is_year()){
$qv = 'year=' . get_query_var('year');
}elseif(is_month()){
$qv = 'm=' . get_query_var('year') . sprintf('%02d', get_query_var('monthnum'));
}elseif(is_day()){
$qv = 'm=' . get_query_var('year') . sprintf('%02d', get_query_var('monthnum')) . sprintf('%02d', get_query_var('day'));
}elseif(is_search()){
$qv = 's=' . get_query_var('s');
}elseif(is_tax()){
$qv = get_query_var('taxonomy') . '=' . get_query_var('term');
}
if($qv){
$link = '<a rel="nofollow" href="' . $sitepress->language_url($sitepress->get_default_language()) . '?' . $qv . '">' . $anchor . '</a>';
}else{
$link = '';
}
return $link;
}接下来,编辑您的主题并调用此函数。
我们将其添加到了 footer.php 中:
<?php echo(wpml_default_link(__('Short link to this page','wpml-theme'))); ?>这就是全部内容。现在,每个页面都有了这个简洁的短链接,并鼓励人们分享它。
快去试试吧。


