任何问题请联系WX:uu16853

买模板送网站采集器 让你轻松放开双手运营网站!

购买更多有优惠!

WordPress 技巧:如何彻底关闭 Trackbacks

什么是 Trackbacks Trackbacks 是 Web 2.0 发展初期的产物,你在自己的博客引用别人的日志,那么在发表完日志之后,对方的博客就会自动在你所评论的日志评论区添加你的引用信息,其他人就可以很清楚看到你的引用,并且方便地点击就可以来看你的文章,所以 Trackbacks 就成为了博客之间一种通讯的机制和协议,可以看到别人是如何看待自己的日志。 虽然 WordPress 这样的开源程序还使用 Pingbacks 机制,使用户不必输入 Trackbacks 地址就能实现 Trackbacks,并且 Trackbacks 功能还能让你看到谁链接了你的博客(当然也包括抄袭者),但是 Trackbacks 实际用途并没有按照当初设计那样被要用于交流,更多的是 Spammer 滥用,Spamer 利用只要知道日志的 Trackbacks 地址就可以发送 Trackbacks 这一漏洞,频发 Trackbacks,并且 Akismet 也经常漏掉,如果不慎其烦的话,就可以关闭 WordPress 的 Trackbacks。 如何彻底关闭 Trackbacks 关闭 Trackbacks 首先需要到 WordPress 后台,Setting(设置)-> Discussion(评论设置)中,把 Allow link notifications from other blogs (pingbacks and trackbacks.) (允许接受来自其它 Blog 的链接通告(包括引用和通告) )这一项取消。 […]

WordPress 技巧:自定义上传路径和生成文件的 URL 地址

WordPress 3.5 一个最大的改变就是更加简洁化,把一些用户不常使用的设置去掉或者隐藏了,比如后台的媒体(Media)设置页面隐藏上传路径(upload_path)和文件 URL 地址(upload_url_path)的设定就被隐藏了。如果你还要进行设置这两个选项,现在只能在 options.php 中进行设置,或者使用 UPLOADS 常量,也可以使用 upload_dir 这个 filter。下面分别介绍下这三种方法: 1. options.php 中设置 直接访问:http://site_url/wp-admin/options.php,然后找到下面选项,将其设置为你所需的参数。 2. 定义 UPLOADS 常量 在 wp-config.php 文件中定义 UPLOADS 这个常量: define(‘UPLOADS’,’my-uploads’); 这个方法有个不好的地方:只能指定上传的相对目录,生成文件的 URL 地址不能使用子域名,这样在做静态文件 CDN 加速的时候就不是很方便。 3. 使用 upload_dir filter 这个方法,效果其实和第一个方法基本一致: add_filter( ‘upload_dir’, ‘wpjam_custom_upload_dir’ ); function wpjam_custom_upload_dir( $uploads ) { $upload_path = ”; $upload_url_path = ”; if ( empty( $upload_path […]

WordPress 技巧:非管理员可以设置自定义分类

如果你是一个 WordPress 开发者,给自己的日志(或者自定义类型的日志)添加自定义分类模式(custom taxonomy),并且你的系统还支持注册用户在前台通过一个表单来投稿,并且需要用户也能输入自定义分类,这个时候你就使用 wp_insert_post 函数来插入日志,但是 wp_insert_post 函数内部是有权限判断的: if ( current_user_can($taxonomy_obj->cap->assign_terms) ) wp_set_post_terms( $post_ID, $tags, $taxonomy ); 自定义分类模式(custom taxonomy)默认的 assign_terms 权限是:manage_categories,可以管理分类,而只有管理员或者编辑(editor)可以管理分类。所以我们在创建自定义分类的时候,就要将其 assign_terms 权限设置为支持订阅者。比如: register_taxonomy( ‘device’, ‘post’, array( ‘hierarchical’ => true, ‘label’ => ‘适用设备’, ‘query_var’ => true, ‘rewrite’ => array(‘slug’ => ‘device’,’with_front’=>false), ‘capabilities’ => array( ‘manage_terms’ => ‘manage_categories’, ‘edit_terms’ => ‘manage_categories’, ‘delete_terms’ => ‘manage_categories’, ‘assign_terms’ => […]

WordPress 技巧:如何解决“Fatal error: Call to a member function get() on a non-object”

在自己代码的函数中使用 require(BASE_PATH . ‘wp-load.php’); 引入 WordPress 核心代码,然后执行 WP_Query 获取特定的日志,然后就发生下面的错误: Fatal error: Call to a member function get() on a non-object in [path to site]\site\wp-includes\query.php on line 27 这是因为全局变量不正确使用引起的问题,默认 $wp_query 是在 wp-setting.php 中定义的,因为是定义在最外层,所以 $wp_query 自然就是一个全局的变量。但是这里在自己的函数中通过 require(BASE_PATH . ‘wp-load.php’); 引入 WordPress 核心代码,$wp_query 反而变成这个函数中的本地变量,所以其他代码调用 $wp_query 的时候,就发生了错误。 解决方法是:在 require(BASE_PATH . ‘wp-load.php’); 代码上面加入以下代码,预先将 $wp_query 定义为全局变量: define(‘WP_USE_THEMES’, false); global $wp, $wp_query, […]

WordPress 技巧:关闭后台的文件编辑功能

我已经介绍了在 WordPress 后台移除主题编辑器,今天继续加深,直接关闭 WordPress 后台的文件编辑功能。 在 wp-config.php 添加下面两行代码: define(‘DISALLOW_FILE_EDIT’, true); define(‘DISALLOW_FILE_MODS’,true); 标签:WordPress 技巧

WordPress:企业建站利器

WordPress 是一款风靡全球的开源 CMS 系统。在过去,它更多的应用于开设个人或多用户博客系统;但现在,它开始越来越多地应用于企业门户网站设计中。 WordPress:企业建站利器 作为国内最早使用并对 WordPress 进行二次开发的爱好者之一,自从2006年初次接触 WordPress 系统开始,我就为其强大的功能,灵活的可扩展性,以及方便的可定制性所深深吸引。WordPress 的这些特性,为我的使用和二次开发带来了良好的用户体验,这也是我以及国内 WordPress 爱好者乐于长期向新用户宣传和推荐 WordPress 的一个重要理由。事实上,绝大多数的新用户与我当初的感受并无不同,WordPress 用户也因此获得了越来越多中国人的喜爱,用户群逐年快速扩大。 出于对 WordPress 高效灵活特性的信心,包括本人在内的几个 WordPress 爱好者于组成了名为 WordPress JAM 的工作室,开始尝试将 WordPress 这款优秀的CMS系统应用于企业门户网站的设计。我们很快发现,WordPress 在各个方面不但达到了我们的期望,在很多方面甚至还拥有超乎预想的表现,这些经验和心得都值得我与各位朋友分享。 WordPress 非常容易使用 首先, WordPress 的易用性超乎了我们的预期。根据客户反馈的信息,大多数不拥有 CMS 使用经验的客户,都能在3~7天内熟练的掌握 WordPress 的各项基础和扩展功能;而对于一些功能繁杂的 CMS 系统,这个时间往往在3个月左右,甚至很大程度上必须设立有经验的专职岗位,才能对其进行管理和维护。WordPress 这一易用性的优点,或许源于其诞生之日起就秉持的开源和集思广益的精神,正是全球无数开发者的智慧凝结,使得这款 CMS 天生就拥有简单易用的基因。 WordPress 非常容易扩展 其次, WordPress 拥有强大的可扩展性。很多企业网站过去的经验告诉我们,在网站上线1~2年后,往往面临升级改版的需求,需要加入建站当初难以预料到的新功能,如果一款 CMS 的扩展性很差,他带给企业的将是灾难性的改版升级成本。 WordPress 优秀的可扩展架构,使得这一难题不再成为一项困扰,他拥有的功能完备的 API 和 Hook 接口,使得你理论上可以为其添加你所能想到的任何功能,甚至制作为插件重复使用。WordPress 的这一特点,使得网站功能只局限于你的想象力,而不会受 […]

Dreamweaver CS5 中启用 WordPress 代码提示功能

代码提示功能的好处 使用 Dreamweaver 这样的可视化的 IDE 工具进行编程的最大的一个好处是它的代码提示功能,只要输入几个字符,IDE 工具就会智能的给出一系列可选的函数或者变量让你输入。 代码提示功能的好处是非常明显的,比如你对某个函数记不清楚,就可以通过代码提示功能快速输入,而不用去搜索和查资料,即使非常清楚,也可以通过代码提示功能快速输入而无需输入每个字符,这样的对编程效率提高是非常明显的。 Dreamweaver CS5 支持 WordPress 代码提示 我们知道 Dreamweaver 代码提示功能支持 HTML,PHP,JavaScript 这些动态语言,而最新发布的 Dreamweaver CS5 则更进一步,支持 WordPress,Drupal,Joomla 这些开源程序的私有函数的代码提示。 这样使用 Dreamweaver CS5 来开发 WordPress 插件和主题,只要输入 WordPress 内置函数的前几个字符,就会显示整个函数,再也不用辛苦记住函数名称了。 如何在 Dreamweaver CS5 中启用 WordPress 代码提示功能 下面就讲解下如何在 Dreamweaver CS5 中启用 WordPress 代码提示功能: 将本地的测试站点添加到 Dreamweaver CS5 首先要在本地安装好 WordPress 测试网站,如果是 Windows 系统,可以查看这篇教程:如何在 Windows 系统上安装 WordPress 本地测试,并保证网站已经能在本地正常浏览。 […]

WordPress 自定义菜单功能介绍和使用详解

一个常规的网站,一般都会有一个网站导航。这里的导航,通常包含网站的栏目、特殊的页面等等。对于一个博客来说,我们也需要一个这样的导航。如果仅仅是调用文章分类 或者页面链接作为导航的话,会比较难控制,无法自由的添加链接等。当然,成熟的 WordPress 系统已经为我们考虑到了这一点,添加了一个 “自定义菜单” 功能。使用这个功能,可以在 后台 > 外观 > 菜单 中编辑,当然最好前提是你使用的主题支持这一个功能。 在 WordPress 后台使用自定义菜单 当我们在后台打开 “菜单” 的时候,通常会看到类似这样的界面: 没有配置之前,是无法使用的。我们需要先输入一个菜单名称才能继续使用。这里的菜单名称,仅仅作为一个关联数据用的标记,所以可以随便起名。完成之后,左边的区域就可以配置使用了。 如果你的主题不支持自定义菜单功能,那么左边的 主题位置 面板会提示你,这个自定义菜单的选项将会在侧边栏显示。如果主题支持自定义菜单功能,那么这个面板则会提示有支持几个自定义菜单、自定义菜单的名称(需要定义)是什么。 上面提示,有一个自定义菜单,并且名称为 topnav 。现在,我要制作这个自定义菜单的内容。在左边有三个面板:分类目录、自定义链接、页面。里面包含着你当前博客里面的相关数据。 我们只需要勾选相应的内容或者直接拖动到右边的刚刚设置的菜单面板中即可。 注意的是,可以通过拖动改变显示顺序,而且还可以修改显示的名称。所以说,这个功能非常的强大而且灵活。这样,一个导航链接就做好了。 让 WordPress 主题支持自定义菜单功能 下面来详细讲解如何在主题中,添加这个功能。也很简单,只需要在两个地方,添加两小段代码即可! register_nav_menus 首先,需要在主题的 functions.php 文件中,声明一下存在这个功能。只需要添加下面一段代码即可: if(function_exists(‘register_nav_menus’)){ register_nav_menus( array( ‘header-menu’ => __( ‘topnav’ ) ) ); } 这段代码首先判断当前主题是否支持这个功能,然后注册一个名称为 topnav 的自定义菜单。也就是上面在 主题位置 面板中看到的自定义菜单名称。 实现 WordPress 自定义菜单功能这个功能有两个函数 register_nav_menu […]

迁移 WordPress 到 SAE 完全操作攻略

什么是 SAE 在迁移 SAE 之前,有必要先简单的介绍下什么是 SAE。SAE 的全称是 Sina App Engine,翻译过来就是新浪应用平台。这个平台提供了一些方便开发的组件和优质高速的网络基础设施,方便开发者进行应用的开发。狭义的讲,就是一个网站空间,可以把网站放上去,但是和普通的虚拟主机、VPS等又有很多不同的地方。在后面你会了解到。它的地址:http://sae.sina.com.cn SAE 的优势 之所以迁移到 SAE 上,是因为 SAE 有以下几个优点。 硬件质量高,网站访问速度快。 专业,不用怕数据丢失或者服务商跑路。 按照你使用的资源进行收费,收费合理,性价比高。 最看重的是 SAE 平台的稳定、高速和非常强的性价比,与一般的空间相比,可以说是低价高质量。 但是 SAE 的缺点也是很明显的,因为是云服务,所以没有一般主机那么使用灵活,没有 FTP,不能进行 I/O 操作,更不要指望可以安装系统组件了。 如何开通 SAE 打开 SAE 的网站(http://sae.sina.com.cn),然后点击右上方的注册即可。 SAE使用新浪微博作为账号。其中还要区分几个概念,包括安全邮箱、安全密码等等。 此外,SAE 平台使用 SVN 的方式上传文件,它的使用要比传统的 FTP 上传方便简单,但是需要学习和适应,这点官方文档写的非常详细。你需要花费一点时间,查看一下他们的帮助文档,这些很简单,也不是本文要说的重点。 帮助文档:http://sae.sina.com.cn/?m=devcenter 迁移 WordPress 到 SAE 下面就是本文的重点:如何合理正确高效地把 WordPress 博客从之前的主机中迁移到 SAE 中。 安装 WordPress 应用 SAE […]

WordPress 的6种固定链接优缺点对比

有人说 WordPress 本身的 SEO 就比较好,我想这个和 WordPress 可以方便的自定义文章的固定链接有分不开的联系。在众多的 WordPress 博客中,有很多种的固定连接,本文就是把这些固定链接的形式和效果跟大家分析一下,然后根据你自己的需求,选择适合你博客的固定连接。 默认固定链接样式 没有在后台的 “设置->>固定链接” 中设置链接样式的话,就属于默认的固定连接样式,它的形式如下 http://blog.wpjam.com/?p=123 优点 链接短小 移植性好,当 WordPress 搬家时,新主机万一不支持 Rewrite 模块,你不需要进行301定向 缺点 缺乏语义性,对搜索引擎收录稍稍有影响,但是不大 日期、月份和名称链接样式 这是官方默认的链接样式,分日期、月份和名称两种,形式如下 http://blog.wpjam.com/2012/09/11/sample-post/ http://blog.wpjam.com/2012/09/sample-post/ 优点 语义性增强,增加了文章发布时间和文章名称 文章发布时间和文章名称在链接中,有利于搜索引擎理解 缺点 生成的链接长度太长,不利于发送等 文章标题直接显示在连接中,有的时候并不希望这样 名称型链接样式 直接加一个文章名称,形式如下 http://blog.wpjam.com/sample-post/ 优点 语义性强,文章名称在链接中,便于搜索引擎理解 缺点 生成链接长度过长,中文链接会被编码,链接乱且长 关键词类型链接样式 将文章中的关键词提取出来,然后自定义固定连接,用“-”链接关键词,很多高手博客使用这种链接,样式如下 http://blog.wpjam.com/m/limit-login-attempts/ 优点 语义性强,便于搜索引擎理解 生成链接长度合适 缺点 需要博主有一定的英语水平和耐心 对中文博客的效果不大,几乎没有中国人会搜索一个英文单词来看你的中文文章 数字型链接样式 直接把文章的ID写在链接中,样式如下 http://blog.wpjam.com/123 优点 链接极短 缺点 […]

WordPress 批量替换插件 Search & Replace 和中文包

Search and Replace(搜索和替换)是一个允许你搜索和替换数据库中任意文本的 WordPress 插件。 Search and Replace 介绍 Search and Replace 使用非常简单,在后台插件添加页面,搜索 Search and Replace,点击安装并激活之后,到后台 > 工具 > 搜索和替换就能使用到这个插件,然后就可以对 WordPress 数据库中那个数据表中哪个字段进行替换操作,你只需要输入想搜索和替换的文本,点击替换即可。 WordPress 批量替换插件 Search & Replace 这个插件在对博客内容进行大批量相同修改动作的时候,特别有用,比如博客的图片更换了服务器,图片地址都更改了,就可以使用这个插件一次性修改所有的图片地址。 Search and Replace 存在的风险 但是这个插件同样也在存在着风险,因为它是直接使用 SQL 进行文本替换,它直接操作修改了数据库,并且这样的修改时不可撤销的,所以不建议 WordPress 初级用户使用这个插件,对于 WordPress 有一定熟悉的用户,建议使用这个插件进行操作之前,对数据库进行备份,这样万一出错还有修正的机会。 Search and Replace 是直接使用 MySQL 的 Replace 进行替换操作的,所以这个插件是大小写敏感的,并且不支持使用正则表达式进行文本替换,所以这是这个插件小小的一个缺憾,但是它完整的界面和易用性,保证了它能够完成了我们大部分的批量文本修改替换工作,并且这个插件只在后台使用,所以使用之后我们可以直接关闭它,完全不会占用任何系统资源。 Search and Replace 中文版 因为经常使用这个插件,所以就给这个插件制作了中文包,下载地址:Search & Replace 和中文包。 […]

100% Secure Checkout

PayPal / MasterCard / Visa