WordPress新手复制代码时常见的3个错误
复制一些有趣或实用的代码片段,扩展WordPress的功能,这对于WordPress用户并不陌生。这样的操作对…
复制一些有趣或实用的代码片段,扩展WordPress的功能,这对于WordPress用户并不陌生。这样的操作对于了解PHP语言的用户来说很简单;然而,对于那些不了解PHP的用户来说却有点难度。在这篇文章里,WPChina向你介绍一下WP新手复制代码是常犯的一些错误。
WordPress新手在复制代码的时候,经常会把这些修改放在主题目录中的 funcitons.php 文件里,或者放在一个网站专用的插件中。主题的 functions.php 文件位于 /wp-content/themes/zhutimingcheng 文件夹内,zhutimingcheng 是你所用主题名称的拼音,代表你所使用主题的目录。
要理解你所复制的代码并进行正确地复制粘贴,你需要了解PHP的基本语法。
//PHP代码的开始标记 <?php //PHP代码的结束标记 ?>
你要牢记这段代码,因为很多使用WordPress专业主机的新手遭遇的错误,都是这种简单的问题导致的。由于代码放错了位置,导致程序逻辑出现混乱。因此,了解PHP语法会很有帮助的。下面,我们来给大家介绍一下新手常见的三种错误。
第1类常见错误
用户在网上发现一段有用的代码,包括在PHP的开始和结束标记内,在复制粘贴的时候放错了位置。代码是这样的:
<?php add_filter( 'login_headerurl', 'custom_loginlogo_url' ); function custom_loginlogo_url($url) { return 'https://wpchina.org'; } ?>
这是自定义WordPress后台登陆页面Logo网址的一段代码,我们在15个WordPress实用技巧一文中介绍过,也可以通过插件来实现。不过这不是本文的重点。
用户复制代码之后,可能变成了这样:
<?php //在funcitons.php文件中,可能还有很多别的代码 //用户在复制粘贴代码片段的时候,放在了这里: <?php add_filter( 'login_headerurl', 'custom_loginlogo_url' ); function custom_loginlogo_url($url) { return 'https://wpchina.org'; } ?> ?>
这样,WordPress会立即提示错误,因为PHP的开始标记和结束标记不能嵌套,必须正确地使用开始标记和结束标记。对于这个错误,有两种解决办法。办法一,先结束上一段PHP代码,然后再开始新的PHP代码:
<?php //在funcitons.php文件中,可能还有很多别的代码 ?> //用户在复制粘贴代码片段的时候,放在了这里: <?php add_filter( 'login_headerurl', 'custom_loginlogo_url' ); function custom_loginlogo_url($url) { return 'https://wpchina.org'; } ?>
第二个办法是,复制粘贴代码的时候,删除其对应的PHP开始标记和结束标记:
<?php //在funcitons.php文件中,可能还有很多别的代码 //用户在复制粘贴代码片段的时候,放在了这里: add_filter( 'login_headerurl', 'custom_loginlogo_url' ); function custom_loginlogo_url($url) { return 'https://wpchina.org'; } ?>
第2类常见错误
不同的教程写作者,有不同的写作风格。有的作者喜欢将代码放在PHP开始和结束标记内,如同上面的例子。而有的作者,写代码的时候喜欢省略掉PHP的开始和结束标记。这又引发了第二类问题。
比如说你看到了这样的代码片段,这段代码用来修改WordPress后台登录页面中Logo图片:
function custom_loginlogo() { echo '<style type="text/css"> h2 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; } </style>'; } add_action('login_head', 'custom_loginlogo');
这里作者假设你知道PHP代码应该放在PHP开始和结束标签内。有些作者甚至会直接建议你,放在主题 funcitons.php 文件的最底部。于是,有些用户就这样了:
<?php //这里可能还有许多其他的代码片段 ?> //用户将代码粘贴在这里(注意,PHP结束标签已经在上面关闭了): function custom_loginlogo() { echo '<style type="text/css"> h2 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; } </style>'; } add_action('login_head', 'custom_loginlogo');
在这里,用户将代码放在了PHP结束标签的外面。WordPress无法理解这样的代码,因此也会发生错误。正确的写法是这样的:
<?php //这里可能还有许多其他的代码片段 //用户将代码粘贴在这里(注意,PHP结束标签已经在上面关闭了): function custom_loginlogo() { echo '<style type="text/css"> h2 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; } </style>'; } add_action('login_head', 'custom_loginlogo'); ?>
第3类常见错误
上面两类问题,都是由于没有正确使用PHP开始和结束标记而引起的。下面我们要介绍的最后一种常见错误,是用户复制粘贴的代码放在了其他的函数之内。
函数结构通常是这样的:
function custom_function_name() { // 函数开始 // 函数的具体代码 } // 函数结束
如果你将另外一个函数的代码插入到这个函数中,那么网站就会出现错误。错误的代码就像下面这样:
function custom_function_name() { // 函数开始 // 函数的具体代码 function custom_loginlogo() { echo '<style type="text/css"> h2 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; } </style>'; } add_action('login_head', 'custom_loginlogo'); } // 函数结束
这样做是错误的。每个函数都是独立的,你不能将两个函数混在一起。复制粘贴代码的正确方式是这样的:
function custom_function_name() { // 函数开始 // 函数的具体代码 } // 函数结束 function custom_loginlogo() { echo '<style type="text/css"> h2 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; } </style>'; } add_action('login_head', 'custom_loginlogo');
以上三类错误,是WordPress新手在复制代码到funcitons.php文件中,经常遇到的三类错误。
其他技巧
WordPress新手遇到的之类错误,很多时候都是由于复制粘贴代码出错造成的。有些时候使一些无心之错,比如教程作者写代码的时候忘记了在语句结尾加上;符号,或者忘记了关闭某个标签。还有一些错误是代码本身存在错误,或者用户没有按照步骤进行操作。
还有一种严重的错误。有些教程的作者在写作的时候,需要用到某个插件所提供的函数,但是在教程的代码片段中,不测试函数是否存在,直接调用函数。用户在使用这样的代码时,必须安装并激活所需插件,代码才能工作;否则将会出现错误。
你在使用WordPress的过程中,都遇到过那些错误呢?你是怎么处理所遇到的错误呢?你是否还遇到过其他的一些错误呢?如果你愿意和我们一起分享,欢迎你通过下面的评论留言,跟我们进行交流。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
评论功能已经关闭!