2017-07-26 106 views
4

我刚完成我的第一个Wordpress网站的客户端,并通过FTP传输文件发送到他们的服务器。我刚刚收到以下评论 -WordPress的 - 如何更改相对链接的绝对链接

...有些东西似乎没有正确显示,或正确链接......看起来好像他们使用了绝对链接而不是相对的链接,所以某些东西不能正常拉动...

我甚至没有意识到这将是一个问题,因为我认为所有的链接都需要改变。是否有代码函数可以在functions.php文件中修改?我见过有一个wp_make_link_relative及以下过滤器 -

add_filter('post_link', 'wp_make_link_relative');  // Normal post link 
add_filter('post_type_link', 'wp_make_link_relative'); // Custom post type link 
add_filter('page_link', 'wp_make_link_relative');  // Page link 
add_filter('attachment_link', 'wp_make_link_relative'); // Attachment link 
add_filter('get_shortlink', 'wp_make_link_relative'); // Shortlink 

我应该运用这些我functions.php文件?这会解决所有问题还是需要应用其他任何内容,如插件?

+0

绝对链接,他们在你的主题文件或存储在数据库中的帖子内容? – Junaid

+0

@Junaid他们肯定在我已经构建的主题文件中 - 这里没有任何内容存储在我的知识点上。 –

+0

这听起来像是我刚刚通过更改指向相对URL的链接回答的另一个问题... –

回答

0

您必须确保代码中没有包含静态绝对URL。

如果不是这种情况,请不要通过ftp传输文件!

我建议您使用Akeeba Backup插件对您的网站进行备份。 您可以免费使用它。

这个插件负责绝对URL和数据库中的所有文件和数据集。 之后,您可以使用Akeeba的Kickstart将evrything恢复到另一个服务器和数据库。 希望这可以帮助你。

1

为了实现图片/图标的相对链接,JS和CSS资源执行以下操作。

我想你已经在自己的资产,奠定了这个样子,

- theme-name 
- - assets 
- - - images 
- - - css 
- - - js 

因此,要访问一个名为scripts.js文件在您js目录,使用下面的代码链接到它

get_stylesheet_directory_uri() . '/assets/js/scripts.js' 

它会返回以下URL

http://example.com/wp-content/themes/theme-name/assets/js/scripts.js