Languages: English • 中文(简体) • 中文(繁體) • (Add your language)
参见:
可以用PHP的info函数来获取你的服务器信息:
<?php phpinfo(); ?>
www.example.com/info.php
)以上操作会给出php版本信息和mod_rewrite信息。
info.php文件返回的页面中列出了PHP安装的具体信息。我们可以在apache页头下已加载模块中查看mod_rewrite是否列在其中。
为什么新用户在后台注册,WordPress没有给用户发送包含注册信息的Email?是不是WordPress程序的问题?其实这样的问题大多数是有你所使用的主机引起的。
为什么你的WordPress无法发送Email中介绍了更多这方面的内容。
参见:
WordPress加强版的版本号并不依照严格的数字编号(在测试发布版则是字母编号)顺序,这是因为加强版反映的是已有版本的改进和完善。例如,WP 1.2是对WP 1.0的重大修改(60%的代码被修改),与此同时WP 1.1就被“忽略”了。
参见:
参见:
近来的WordPress新版本用角色和权限代替了用户级别的概念。
这是将PHP设置在服务器上的一个缺点。如果之前使用了MovableType,那么suexec就可能会对Perl进行设置,于是Movable Type成为根用户。这样PHP的角色就成了web服务器用户,其属性至少为444。phpsuexec功能可用,但很多虚拟主机都不使用这一功能。
然而在如今的共享主机上,这已经不再是个问题。这是因为即使文件是所有人都可读的,但每个账户都设置了一个“牢固的门”,将其他用户挡在门外。我们可以利用open_basedir修改PHP的权限,阻止其他用户修改PHP脚本以访问我们的文件。如果仍然担心权限问题,可以联系虚拟主机商,了解他们的保护措施。
如果你会更改代码(手把手教你更改),以下文章可以给你带来很大的帮助: WordPress登陆之后返回登陆前的页面
另外可以使用插件帮你解决这个问题,安装插件From where you came,如果用户在博客首页点击登录,登录成功后会被重定向到该首页。
参见:
可以用.htaccess文件来保护图片不被链接到其它网站(即盗链)。盗链严重消耗我们的带宽,一旦有人直接链接到我们网站上的图片,我们的带宽就会流失。
学会分析网站原始访问日志 防盗链中介绍了更多这方面的内容。
A List Apart's Smarter Image Hotlinking Prevention中介绍了更为复杂具体的阻止盗链的方法。
参见:
评论轰炸指的是大量评论(通常都是垃圾评论)在一个很短的时期内发布到同一个网站上。 Mark Ghosh在Comment flood prevention-a really simple solution以及Comment flood prevention hack中提到了一个阻止评论轰炸的方法,用户可以自己设定评论发布的时间间隔,防止有人过于频繁地发布连续性评论。
WordPress防范垃圾评论的简单方法(无插件) 中介绍了如何防范凶猛的英文垃圾评论。大多数中文博客中,90%以上的垃圾评论都是英文评论,通过使用该方法可以有效阻止垃圾评论。
下面给出了代码修改的复本(适用于WP 1.2):
在wp-comments-post.php中(各个评论之间),添加以下代码:
// Simple flood-protection $lasttime = $wpdb->get_var("SELECT comment_date FROM $tablecomments ORDER BY comment_date DESC LIMIT 1″); if (!empty($lasttime)) { $time_lastcomment= mysql2date(’U', $lasttime); $time_newcomment= mysql2date(’U', $now); if (($time_newcomment - $time_lastcomment) < 300) die( __(’Sorry, this blog only allows a new comment once every 300 seconds. If you really want to write a comment, just wait a few and hit refresh on this page. Chances are you tried to add a comment about halfway between 0 and 300 seconds. Comment flooders are annoying. Thank you for being patient.’) ); }
WordPress后台管理菜单的分类选项下,所有# of Posts值为非零的分类目录都不可被删除。未分类分类目录下可能也有几篇文章,但所有页面都被划分在未分类下。因此即使未分类下没有任何文章,# of Post中也将所有页面包含在内。
WordPress默认分类无法被删除,即使分类下没有任何内容,但用户可以在WordPress后台设置菜单下的撰写选项中指定文章或链接的默认文章分类目录和默认链接分类目录。
撰写或编辑页面时,如果没有页面模板选项,可能是因为模板文件结构不当。如果有页面相对应且可用的页面模板框,那么主题中至少需要有一个模板文件的开头部分具有如下结构:
<?php /* Template Name: Links */ ?>
上面这个例子来自WordPress的默认主题Default的wp-content/themes/default/links.php文件,因此要将代码中的Links替换成自己需要的目标名称。
Note: 有时为了使模板选择出现,不得不将当前主题转换到WordPress的Default主题,等选择完毕后再转回之前使用的主题!
参见:
选择WordPress为内容发布系统时,我们可能会希望展示给读者一个静态主页,然后在一个叫做Blog的页面上显示我们撰写的文章。为了达到这种效果,需要执行以下操作:
如果希望进一步定制主页,可以创建一个模板,设计模板以符合自己的需要:
<?php /** * @package WordPress * @subpackage Default_Theme */
更改为:
<?php /* Template Name: MyFront */ ?>
<?php /* Template Name: MyFront */ ?> <?php get_header(); ?> <div id="content" class="narrowcolumn"> <?php query_posts('p=1'); //set p=x where x is post id of post you want to see or use query_posts('cat=1&showposts=1); to show one post from Category 1 if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <div <?php post_class() ?> id="post-<?php the_ID(); ?>"> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2> <small><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?> --></small> <div class="entry"> <?php the_content('Read the rest of this entry »'); ?> </div> <p class="postmetadata"><?php the_tags('Tags: ', ', ', '<br />'); ?> Posted in <?php the_category(', ') ?> | <?php edit_post_link('Edit', '', ' | '); ?> <?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?></p> </div> <?php endwhile; ?> <div class="navigation"> <div class="alignleft"><?php next_posts_link('« Older Entries') ?></div> <div class="alignright"><?php previous_posts_link('Newer Entries »') ?></div> </div> <?php else : ?> <h2 class="center">Not Found</h2> <p class="center">Sorry, but you are looking for something that isn't here.</p> <?php get_search_form(); ?> <?php endif; ?> </div> <?php get_sidebar(); ?> <?php get_footer(); ?>
参见:
有些时候我们需要知道特定文章,页面,分类,标签,链接,链接分类以及用户的ID。用下面的几种方法可以取得相应的ID:
参见:
See:
参见:
参见:
要更改日志分类的显示方式,请打开index.php文件,找到<div class meta>。我们会看到以下代码: <?php the_category() ?> 在括号( )和引号内添加或修改内容,使之显示自己期望的样式。
如果希望用逗号隔开各分类,新标签应为:
<?php the_category(',') ?>
如果希望用箭头隔开分类,新标签应为:
<?php the_category(' > ') ?>
如果希望用项目符号隔开各分类,标签应为:
<?php the_category(' • ') ?>
而用竖线( | )隔开各分类的标签则应为:
<?php the_category(' | ') ?>
尽情发挥自己的创意,让分类的显示方式与众不同。
如果不希望所有评论都要经过审核才能发表,请查看管理面板设置菜单下的讨论选项,确保审核所有评论复选框没有被选中。如果该复选框被选中,所有评论都会被发送到待审核队列,等待管理用户审核。在当一条评论有X个或更多超链接时放入等待审核队列中的空白位置上填入一个大于零的数字。如果空白部分留空或数值小于零,所有带有链接的评论都将被审核。如果“审核所有评论”复选框没有被选中且链接审核值大于零,但仍然会出现垃圾评论,这可能是因为评论垃圾词列表的各个垃圾词之间出现了空行、标点符号或单个字母等。评论垃圾词列表中各个词之间应该用空格隔开,并且每个词都应该占据一行位置。以上都设置完毕后,升级已安装的反垃圾插件。如果仍然不能解决问题,逐个禁用插件,找出罪魁祸首,然后联系插件作者寻求帮助。
如果你想禁用评论中的所有HTML代码,可以参考: WordPress转义评论内容,防止恶意代码
如果你想允许部分HTML,可以在wp-includes文件夹下的kses.php文件中设置是否可以在评论中使用HTML标签。
在文本编辑器中打开kses.php文件,找到文件最上方的HTML标签列表。每个HTML标签都单独成行,构成一个合法标签的PHP数组。以//开始的标签行或被标注或被禁用,因此这些标签实际上指明了评论中不允许出现的HTML标签。
为了阻止人们在评论中使用HTML,可编辑kses.php文件,在列表相应标签行的开始部分添加//,使之按自己的意志接收或禁止特定HTML标签。如果不希望任何HTML标签出现在评论中,可标注所有允许HTML标签的标签行。完成修改时记住保存文件。
注意:不标注HTML标签,直接删除自己不需要的标签行也可以达到同样的效果,但删除前可保留标签列表以便将来再次激活。
首先,在管理界面的设置菜单的讨论>选项下,取消允许人们发表新文章的评论的选中状态。但这只是禁止了人们对将来的文章进行评论。要完全禁止所有评论,就必须要在编辑文章 子面板中编辑过去的每篇文章,取消允许评论的选中状态。或者可以在shell账号的命令行中或用phpMyAdmin执行以下 MySQL语句:UPDATE wp_posts SET comment_status="closed";
如果目标是永久性禁止评论,还需要删除wp-comments-post.php文件。
首先,在管理界面的设置菜单的讨论>选项下,取消接收来自外部博客的引用通告(trackback和pingback)的选中状态。但这只是禁止了人们对将来的文章使用引用通告。要完全禁止所有引用通告,就必须要在“编辑文章”子面板中编辑过去的每篇文章,取消允许引用通告的选中状态。或者可以在shell账号的命令行中或用PhpMyAdmin执行以下 MySQL语句:UPDATE wp_posts SET ping_status="closed";
如果目标是永久性禁止引用通告,还需要删除wp-trackback.php文件。
删除wp-atom.php, wp-commentsrss2.php, wp-feed.php, wp-rdf.php, wp-rss.php, and wp-rss2.php文件以禁用RSS等聚合订阅服务。
但上述方法可能只适用于WordPress早期版本!在新版本中,直到我们将 wp-includes/feed-*.php文件也删除后,聚合订阅服务才彻底停止工作。这时请求订阅将会返回一个错误信息,方式有些不妥,但确实有效。
在WordPress管理面板的用户菜单下用户->配置选项中可更改网站管理员昵称。但在管理面板中无法完成对网站用户名的更改。更改网站用户名必须直接在MySQL数据库中进行,但由于网站用户名曝光的次数并不多,因此我们不推荐更改网站用户名。
参见:
absolutepath.zip可以帮助用户确定网页的绝对路径。下载并解压该压缩文件,将文件通过FTP上传到页面/图片/文件夹所在位置,之后在浏览器中访问该文件—— http://www.example.com/images/absolutepath.php
下列文件影响到博客的对外显示样式,我们可以通过管理面板中模板选项中的内置编辑器来修改这些文件:
* index.php 该文件决定博客内容整体布局。
* style.css 该文件决定博客的样式和外观。
* wp-comments.php 该文件决定用户提交的评论和trackback以及评论提交框的样式。
* wp-comments-popup.php 当用户需使用弹出式评论窗口时可使用该文件(默认情况下弹出式评论功能被关闭)。
根据不同的WordPress版本用不同方式激活弹出式评论功能。
在WordPress 2.0的默认(Default)主题中
在header.php文件中的:
<?php comments_popup_script(); ?>
上方添加以下代码:
<?php wp_head(); ?>
例:
<?php comments_popup_script(); ?> <?php wp_head(); ?> </head>
在WordPress 2.0的主题Classic中
在header.php文件中找到以下代码(第21行):
<?php //comments_popup_script(); // off by default ?>
然后删除前面的注释标记,将之改为:
<?php comments_popup_script(); // off by default ?>
在WordPress 1.5的Default主题中
在header.php文件中添加:
<?php comments_popup_script(); // off by default ?>
下方添加以下代码:
<?php wp_get_archives('type=monthly&format=link'); ?>
例:
<?php wp_get_archives('type=monthly&format=link'); ?> <?php comments_popup_script(); // off by default ?> <?php wp_head(); ?>
在WordPress 1.5的Classic主题中
在header.php中找到以下代码行:
<?php //comments_popup_script(); // off by default ?>
将之替换为
<?php comments_popup_script(); // off by default ?>
WordPress1.2版本
在index.php中找到以下代码:
<?php //comments_popup_script(); // off by default ?>
将之替换为
<?php comments_popup_script(); // off by default ?>
要允许图片上传到网站::
在管理面板中进入设置菜单的选项->杂项
目前(自WordPress2.0起)WordPress Database Plugin插件将备份保存在wp-content/backup-xxxxxx(xxxxxx是一个任意生成的数列)文件夹中。要更改备份的存放位置,需要更改wp-db-backup.php文件。
在WordPress Database Plugin 1.7版中,可以将wp-db-backup.php文件第22行的:
define('WP_BACKUP_DIR', 'wp-content/backup-' . $rand);
改为:
define('WP_BACKUP_DIR', 'mydir/mysubdir');
参见:
参见:
参见:
参见:
参见:
参见:
在主题的header.php模板文件的<head>部分添加以下内容:
<base target="_blank" />
参见:
参见:
WordPress version 1.2 This will stop WP from sending you a mail if the email address you used when you posted the comment was the same as the email address for the author of the post (which is the address the notification email gets sent to). This applies to v1.2 / 1.2.1 code ONLY.
In functions.php change the following line:
if ( == $user->user_email) return false; // If there's no email to send the comment to
to
if ( == $user->user_email || $comment->comment_author_email == $user->user_email) return false; // If there's no email to send the comment to
关闭评论功能:
WordPress version 1.2
WordPress version 1.3
WordPress version 2.5
具体请见wp-includes/template-functions-post.php文件的第19行。
WordPress1.2之前的版本
If you would like to override the $allowedtags variable in kses.php you may do so in your my-hacks.php file, provided you add the following code after you set up the $allowedtags array.
define('CUSTOM_TAGS', true);
参见:
用户编辑日志时,可通过新日志编辑框上方的"上传/插入"按钮或"添加媒体"按钮为日志添加图片(参见图片和附件的使用)。可以在设置菜单的杂项选项中设定图片的上传路径。
作如下设置允许图片上传:
参考下列文章了解如何设置文章内图片的文字环绕效果:
参见:
参见:
参见:
参见:
参见:
参见:
参见:
参见:
参见:
如果本来不需要审核的评论现在也被发送到审核队列,这可能是管理面板>设置>讨论中的常见垃圾评论用语列表的问题。列表中可能出现了单个字符,也可能出现空行或多余空格。删除这些字符、空行或空格。
右击垃圾评论用语框,“全选”并复制到记事本中,在记事本中检查垃圾评论用语的错误。
在常见垃圾评论用语列表中加入垃圾插件后,查找错误变得更不容易了,多个空行却容易被忽略。记事本会简化检查过程。
请仔细检查 :)
如果WordPress导出的WordPress WXR文件、XML文件容量过大而不能导入,可以试试以下方法。
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wp="http://wordpress.org/export/1.0/" > <channel> including all info like category, tags, etc to just before the first <item>
</channel> </rss>
参见:
从另一个WordPress博客中导入链接(博客链接)其实非常简单。假设现在有一个存储了大量链接的“旧”博客,还有一个需要被导入链接的新博客。
或者