1、在comments.php评论表单中添加自己想要的字段,如:
<p>
<input type="text" name="tel" id="tel" size="22" tabindex="4"/>
<label for="tel">电话</label>
</p>
tabindex这个属*按照从小到大排,为什么要这样?你可以自己试试….
2、如果评论表单是使用系统自带的,那么请用以下方法添加表单字段,如果不是,请略过
add_filter('comment_form_default_fields','comment_form_add_ewai');
function comment_form_add_ewai($fields){
$label1= __('**/地区');
$label2= __('Skype账号');
$label3= __('电话');
$label4= __('传真');
$label5= __('地址');
$value1= isset($_POST['guojia'])?$_POST['guojia']: false;
$value2= isset($_POST['skype'])?$_POST['skype']: false;
$value3= isset($_POST['tel'])?$_POST['tel']: false;
$value4= isset($_POST['fax'])?$_POST['fax']: false;
$value5= isset($_POST['address'])?$_POST['address']: false;
$fields['guojia']=<<<HTML
<p>
<label for="guojia">{$label1}</label>
<input id="guojia" name="guojia" type="text" value="{$value1}" size="30"/>
</p>
HTML;
return$fields;
}
3、接收表单字段并写入数据库
在主题目录的 functions.php添加以下代码
add_action('wp_insert_comment','wp_insert_tel',10,2);
function wp_insert_tel($comment_ID,$commmentdata){
$tel= isset($_POST['tel'])?$_POST['tel']: false;
//_tel是存储在数据库里的字段名字,取出数据的就会用到
update_comment_meta($comment_ID,'_tel',$tel);
}
这两步就可以将数据写入数据库了,不信你试试看
add_action()参数中的10和2分别表示该函数执行的优先级是10(默认值,值越小优先级越高),该函数接受2个参数。
4、在后台显示额外字段
前面两步只是接收和写入到数据库,那么要怎么在后台评论列表中显示呢?将以下代码复制到主题目录的functions.php中:
add_filter('manage_edit-comments_columns','my_comments_columns');
add_action('manage_comments_custom_column','output_my_comments_columns', 10, 2);
function my_comments_columns($columns){
$columns['_tel' ]= __('电话');//电话是代表列的名字
return$columns;
}
function output_my_comments_columns($column_name,$comment_id){
switch($column_name){
case"_tel":
echo get_comment_meta($comment_id,'_tel', true);
break;
}
如果要在前台的留言列表中调用,就用以下代码,_tel就是你在数据库中存储的字段名字
<?php
$tel= get_comment_meta($comment->comment_ID,'_tel',true);
if(!empty($tel)){
echo"电话".$tel;
}
?>
5、大功告成,看看后台的评论列表,是不是多了一列电话,那样的话就没错了。
6、如果要移除某一个自带的表单字段,可以使用以下代码
function tel_filtered($fields){
if(isset($fields['tel']))
unset($fields['tel']);
return$fields;
}
add_filter('comment_form_default_fields','tel')
建立*客**步:
把下载好的WordPress*客程序用FTP上传到根目录里面,然后解压出来,比如拿我空间的根目录为例:我的根目录是public_html这个文件,那么你把WordPress程序上传到根目录里面,那么你的路径应该是这样public_html/WordPress.zip(压缩包),把它解压出来,根目录里面就有两个文件(一个是压缩包,另一个是解压出来的文件),到这里就是*重要的一步,就是把解压出来的文件夹里面的所有文件移动到根目录里面,就是把public_html/WordPress/这个路径地址里面的所有文件移动到public_html/这个路径下面就可以了。
建立*客第二步:
1.在浏览器地址栏里面输入你的域名,它会提示安装WordPress*客程序的提示;
2.然后提示你需要准备数据库名称,用户名和密码这些资料;
3.然后按照它的要求填写好之后提交;
4.之后填写站点标题和管理员帐号和密码(帐号和密码一定要记住);
5.到了这一步基本完成,登录你的网站后台对网站进行布局,WordPress*客后台地址有两种路径一种是:你的域名/wp-admin,另一种是你的域名/wp-login.php这两种路径都可以访问到。
在开始之前,需要注意三件事情
I、给插件取一个个*化的名字,越个*化越好,以防和其他插件重名冲突。
II、代码里面,一定要包含注释,不为自己,也要为想修改你代码的别人想想。
III、尽量用**版的 WordPress进行开发和测试。
插件名称和插件结构
一般来说,都是在 wp-content\plugins目录下建立一个文件夹,文件夹名就是插件的名称,我们插件名字为"copyright_plugin",文件结构如下。
\wp-content\plugins\copyright_plugin下有copyright_plugin.php和readme.txt
这里的 readme.txt文件中包含了一些插件的介绍,使用说明等信息,主要是提交到 WordPress**网站时候用到的,可以参考他们给的模板,另外还有插件截图预览的功能,需要另外添加图片,但是我们现在是练习,不需要提交到**,所以暂时先不涉及这些。
插件的核心
总的来说,插件的核心是两个 function,用来添加 Hooks(中文译为钩子)
add_action($hookname,$callbackfunction)
add_filter($hookname,$callbackfunction)
这两个方法相当重要,几乎所有的插件都要用到他们。
Actions,我理解就是 wordpress核心代码预留的一些特殊的切入点,或者说是在执行一些特定**时候发生,例如文章发布时,或者访客留言时触发。
Filters,应该就是 wordpress执行时,对数据传输过程的一种过滤机制,例如当文章保存到数据库的过程,或者文章从事数据库中取出,展现到浏览器中的这个过程。
我们今天要制作的插件,应该是用 Filters,因为我们要在文章显示在浏览器之前,在*后面加上一段字符窜,用来显示版权信息,后面添加菜单项的时候,也要用到 Actions。
插件概要信息
用文本编辑器打开 copyright-plugin.php文件,输入如下信息:
<?php
/*
Plugin Name: Copyright plugin
Plugin URI:
Description:此插件将在文章正文*下面,显示一行版权信息
Version: 1.0.0
Author: xcxc
Author URI:
License: GPL
*/
?>
保存好文件,然后登录 WordPress后台,打开插件菜单,应该就可以看到这个插件,已经显示在插件列表里面了,并且可以启用这个插件试试,不过没有任何效果,因为到目前为止,这个插件还没有实现任何功能。
为插件实现功能
修改copyright_plugin.php
<?php
/*
Plugin Name: Copyright plugin
Plugin URI:
Description:此插件将在文章正文*下面,显示一行版权信息
Version: 1.0.0
Author: xcxc
Author URI:
License: GPL
*/
/*此插件将在文章正文*下面,显示一行版权信息*/
function display_copyright(){
return"<p style='color:red'>本站点所有文章均为原创,转载请注明出处!</p>";
}
?>
保存好这个文件,然后打开正在用的主题文件夹,打开index.php文件夹,找到 get_template_part('content', get_post_format());并在下面添加如下代码
if(function_exists('display_copyright')){
echo display_copyright();
}
function_exists是判断 display_copyright函数是否存在,因为当插件停用的时候,主题代码里面是找不到这个函数的,所以要判断一下,防止出错。
然后在 wordpress后台启用该插件,再打开首页看看效果吧!
至此,这段代码,应该可以勉强算是一个插件了。之所以说勉强,是因为这个插件存在一个问题,需要手工去修改主题代码,如果用户换了主题的话,需要在新主题里面再次修改代码,这个不好。
改良插件
还记得我们前面说过的 Hooks(钩子)吗,我们要开始用 Filter钩子了!
代码修改copyright_plugin.php如下:
<?php
/*
Plugin Name: Copyright plugin
Plugin URI:
Description:此插件将在文章正文*下面,显示一行版权信息
Version: 1.0.0
Author: xcxc
Author URI:
License: GPL
*/
add_filter('the_content','display_copyright');
/*这个函数在日志正文结尾处添加一段版权信息,并且只在首页页面才添加*/
function display_copyright($content){
if( is_home())
$content=$content."<p style='color:red'>本站点所有文章均为原创,转载请指明出处!</p>";
return$content;
}
?>
参看以上代码,其中 the_content是钩子的名字,display_copyright是回调函数名称。这样一来,只要启用插件就可以实现功能,无需去修改主题了,请把刚才在index.php文件中添加的代码删掉,然后启用插件,看看效果吧,显示效果应该是一样的,无论怎么换主题,还是会自动显示版权信息。
is_home是判断是不是主页
更进一步
至此一个真正的插件算是完成了。但是此插件将版权信息直接写在代码里,如果用户想自定义版权信息的话,需要修改插件的源代码,仍然不方便,所以此插件仍需改进。其实,我们可以在 WordPress后台中为插件单独添加一个菜单和页面,用户可以在这里来自定义设置设置版权信息,信息可以保存在数据库里面。
先附上完整代码,后面会做说明
<?php
/*
Plugin Name: Copyright plugin
Plugin URI:
Description:此插件将在文章正文*下面,显示一行版权信息
Version: 1.0.0
Author: xcxc
Author URI:
License: GPL
*/
/*注册**插件时要调用的函数*/
register_activation_hook( __FILE__,'display_copyright_install');
/*注册停用插件时要调用的函数*/
register_deactivation_hook( __FILE__,'display_copyright_remove');
function display_copyright_install(){
/*在数据库的 wp_options表中添加一条记录,第二个参数为默认值*/
add_option("display_copyright_text","<p style='color:red'>本站点所有文章均为原创,转载请注明出处!</p>",'','yes');
}
function display_copyright_remove(){
/*删除 wp_options表中的对应记录*/
delete_option('display_copyright_text');
}
if( is_admin()){
/*利用 admin_menu钩子,添加菜单*/
add_action('admin_menu','display_copyright_menu');
}
function display_copyright_menu(){
/* add_options_page($page_title,$menu_title,$capability,$menu_slug,$function);*/
/*页名称,菜单名称,访问级别,菜单别名,点击该菜单时的回调函数(用以显示设置页面)*/
add_options_page('Set Copyright','Copyright Menu','administrator','display_copyright','display_copyright_html_page');
}
function display_copyright_html_page(){
?>
<div>
<h2>Set Copyright</h2>
<form method="post" action="options.php">
<?php/*下面这行代码用来保存表单中内容到数据库*/?>
<?php wp_nonce_field('update-options');?>
<p>
<textarea
name="display_copyright_text"
id="display_copyright_text"
cols="40"
rows="6"><?php echo get_option('display_copyright_text');?></textarea>
</p>
<p>
<input type="hidden" name="action" value="update"/>
<input type="hidden" name="page_options" value="display_copyright_text"/>
<input type="submit" value="Save" class="button-primary"/>
</p>
</form>
</div>
<?php
}
add_filter('the_content','display_copyright');
/*这个函数在日志正文结尾处添加一段版权信息,并且只在首页页面才添加*/
function display_copyright($content){
if( is_home())
$content=$content. get_option('display_copyright_text');
return$content;
}
?>
说明:
以下代码自己要是在启用插件时和停用插件时调用,注释中已经写得很详细了。
/*注册**插件时要调用的函数*/
register_activation_hook( __FILE__,'display_copyright_install');
/*注册停用插件时要调用的函数*/
register_deactivation_hook( __FILE__,'display_copyright_remove');
function display_copyright_install(){
/*在数据库的 wp_options表中添加一条记录,第二个参数为默认值*/
add_option("display_copyright_text","<p style='color:red'>本站点所有文章均为原创,转载请注明出处!</p>",'','yes');
}
function display_copyright_remove(){
/*删除 wp_options表中的对应记录*/
delete_option('display_copyright_text');
}
添加菜单和页面的代码如下:
if( is_admin()){
/*利用 admin_menu钩子,添加菜单*/
add_action('admin_menu','display_copyright_menu');
}
function display_copyright_menu(){
/* add_options_page($page_title,$menu_title,$capability,$menu_slug,$function);*/
/*页名称,菜单名称,访问级别,菜单别名,点击该菜单时的回调函数(用以显示设置页面)*/
add_options_page('Set Copyright','Copyright Menu','administrator','display_copyright','display_copyright_html_page');
}
至此,已经可以在后台看到菜单项了,但是点击的话,还会出错,因为还没有添加对应的页面(如何自定义添加后台菜单位置)
下面开始添加页面,主要代码如下:
function display_copyright_html_page(){
?>
<div>
<h2>Set Copyright</h2>
<form method="post" action="options.php">
<?php/*下面这行代码用来保存表单中内容到数据库*/?>
<?php wp_nonce_field('update-options');?>
<p>
<textarea
name="display_copyright_text"
id="display_copyright_text"
cols="40"
rows="6"><?php echo get_option('display_copyright_text');?></textarea>
</p>
<p>
<input type="hidden" name="action" value="update"/>
<input type="hidden" name="page_options" value="display_copyright_text"/>
<input type="submit" value="Save" class="button-primary"/>
</p>
</form>
</div>
<?php
}
现在再去点击刚才新加的菜单,可以显示出来一个页面了,我们可以在这里设置版权信息文本。
另外还有如下代码要修改
/*这个函数在日志正文结尾处添加一段版权信息,并且只在首页页面才添加*/
function display_copyright($content){
if( is_home())
$content=$content. get_option('display_copyright_text');
return$content;
}
将原来的静态化文本,改成动态的,之所以要这么改,是因为我们已经将数据存到数据库里面了,这里要从数据库里面取出数据。
提高网站加载速度是SEO优化的关键要素,快的加载速度往往能**增加页面访问量,尤其是对于大型网站,*能优化带来的效益*为可观。 在网站*能优化的策略中,减少不必要的功能和代码只是其中一部分,实施图片和视频的懒加载策略同样能**提升页面加载速度。 虽然WordPress有许多插件可以实现懒加载功能,但有时候使用插件反而可能增加页面加载时间。因此
一些常用的wordpress插件: 1、Akismet Akismet是 WordPress**推荐的一款 WordPress防垃圾评论插件,也是默认已安装的插件。 2、WP-Postviews *好且*流行的WordPress浏览次数统计插件莫过于WP-Postviews,该插件可以统计每篇文章的浏览次数,并且可以获取*受欢迎(浏览次数*多)的文章列表。 3、WP No Category
1、鼠标指针移到wordpress后台中的“文章”处,选择“分类目录” 2、在分类目录中,需要把“名称”和“别名”分别填写好,名称就是显示在导航栏里的名字,而另外是在URL里的,所以*好是英文字母,方便简洁 3、其他的随便填写不填写都没什么关系,然后添加到新分类目录中。如果已经在分类目录的,那么直接点击“编辑”,即可更改名称别名等信息 4、然后看到左侧的“外观”,鼠标放上去后会显示一些选项
打开wordpress进入管理后台 1,进入后台管理前,您所需要的是先已经安装好了wordpress,一般安装wordpress的时候,系统会指引您先注册一个管理员账号,用于管理后台的账号。 2,您的网站站点后台管理地址为:域名站点网址/wp-admin/ 3,之前如果没有注册过管理账号,可以点击下方的注册按钮进行“注册”。 4,在弹出的对话框中输入:用户名,邮件地址。点击注册按钮