Products
GG网络技术分享 2025-03-18 16:14 39
创建一个自定义分类法需要使用 register_taxonomy() 函数,这个函数接收 3 个参数。
$post_type用来指定对应的post_type分类,就是register_post_type注册的分类
$taxonomy:分类法的名称。这个名称不应包含中文,因为它不是给用户看的,而是类似于 ID 的作用
$post_type:分类法用于哪些文章类型。WordPress 的文章(post)默认已经有了两个分类法(分类和标签),你可以把这个分类法用于自带的文章类型(post、page、attachment、revision 和 nav_menu_item)和自定义文章类型,有三种填法:
只用于一个文章类型,列如:$post_type = ‘post’
用于多个文章类型,例如:$post_type = array(‘post’, ‘page’)
不应用给任何文章类型,例如:$post_type = null
$arg:参考下面的详细解释
先上例子,跟着例子看参数比较容易理解
label:分类法显示给用户的名字,可用使用中文和其它字符
labels:显示给用户的名词。这个数组用来设置显示给用户的关键文字,如果不填 WordPress 会自动给你设置好(参考下面的labels参数)
public:是否公开,如果公开会生成前台存档页面
show_ui:是否在后台的侧边管理菜单显示
show_in_nav_menus:是否在菜单页面里添加一个条款
show_tagcloud:分类法是否显示标签云的部件
meta_box_cb:显示在文章编辑器的分类法选择板块是什么形式
show_admin_column:是否显示在后台文章列表的数据列上
hierarchical:显示在文章编辑器的分类法选择板块是什么形式。设置成 True 则为分类形式(多选框),False 则为标签形式(文本框和添加按钮)【注意:分类法的管理界面像 “分类” 还是 “标签” 取决于你的 hierarchical 参数】
update_count_callback:分类法发生变化时的回调函数
query_var:查询存档页面的关键字,默认是分类法名(ID)。最好保持默认
rewrite:伪静态规则。设置成 False 将禁用伪静态;还可以设置一些元素,比如 “slug”
capabilities:分类法权限设置。最好保持默认
sort:查询分类法文章时的排序
_builtin:这是内置的分类法还是自定义分类法。最好保持默认或设置成 False。这个参数只有 WordPress 核心才有用
name’ – 分类的通用名称,通常为复数
‘singular_name’ – 此分类法的一个对象的名称
‘search_items’ – 搜索项目文字。默认为__(’搜索标签’)或__(’搜索类别’)
‘popular_items’ – 热门项目文字。默认为__(’热门标签’)或null
‘all_items’ – 所有项目文本。默认为__(’所有标签’)或__(’所有类别’)
‘parent_item’ – 父项文本。此字符串不用于非分层分类法,例如帖子标记。默认值为null或__(’父类别’)
‘parent_item_colon’ – 与结果相同parent_item,但:结尾为冒号,__(’父类别:’)
‘edit_item’ – 编辑项目文本。默认为__(’编辑标签’)或__(’编辑类别’)
‘update_item’ – 更新项目文本。默认为__(’更新标签’)或__(’更新类别’)
‘add_new_item’ – 添加新项目文本。默认为__(’添加新标签’)或__(’添加新类别’)
‘new_item_name’ – 新项目名称文本。默认为__(’新标签名称’)或__(’新类别名称’)
‘separate_items_with_commas’ – 分类项元框中使用逗号文本的单独项目。此字符串不用于分层分类法。默认值为__(’带逗号的单独标签’)或null
‘add_or_remove_items’ – 添加或删除项目文本,并在禁用JavaScript时在元框中使用。此字符串不用于分层分类法。默认值为__(’添加或删除标记’)或null
‘choose_from_most_used’ – 从分类法元框中使用的最常用文本中进行选择。此字符串不用于分层分类法。默认值为__(’从最常用的标签中选择’)或null
‘menu_name’ – 菜单名称文字。此字符串是提供菜单项的名称。默认为name的值
自定义分类法的分类列表页面模板文件是taxonomy.php或taxonomy-{taxonomy_slug}.php,taxonomy.php是所有自定义分类法默认调用的模板文件,taxonomy-{taxonomy_slug}.php则是指定自定义分类法调用的模板文件,比如本教程中创建的自定义分类法products,使用taxonomy-products.php文件即可指定调用。
强调一点,添加过新的自定义分类之后一定要更新下固定连接,只需要点击保存设置就行,不然前台是调用不出来的。
接下来如何创建分类法页面可以参考:wordpress创建你的第一个分类法页面。
本文实例讲述了WordPress添加前台注册功能的方法。分享给大家供大家参考。具体分析如下:
WordPress属于个人博客型的开源系统,是不是具备前台注册功能的,下面我来介绍自己给WordPress增加一个会员注册功能,有需要的朋友可参考.
一、添加注册表单
1、首先在当前主题的目录下新建一个php文件,命名为reg-page.php,然后将page.php中的所有代码复制到reg-page.php中;
2、删除reg-page.php开头的所有注释,即 /* 与 */,以及它们之间的所有内容;
3、搜索:the_content,可以查找到类似代码<?php the_content(); ?>,将其替换成代码一(注意使用UTF-8编码保存)
如果你在reg-page.php中找不到the_content,那么你可以查找:get_template_part,可找到类似代码:<?php get_template_part( \'content\', \'page\' ); ?>,将content-page.php中的所有代码替换这部分代码即可。再用下面的代码替换<?php the_content(); ?>
html代码如下:
| <?php the_content(); ?> <?php if(!emptyempty($error)) { echo \'<p class=\"ludou-error\">\'.$error.\'</p>\'; } if (!is_user_logged_in()) { ?> <form name=\"registerform\" method=\"post\" action=\"<?php echo $_SERVER[\"REQUEST_URI\"]; ?>\" class=\"ludou-reg\"> <p> <label for=\"user_login\">用户名 <input type=\"text\" name=\"user_login\" id=\"user_login\" class=\"input\" value=\"<?php if(!empty($sanitized_user_login)) echo $sanitized_user_login; ?>\" size=\"20\" /> <input type=\"text\" name=\"user_email\" id=\"user_email\" class=\"input\" value=\"<?php if(!empty($user_email)) echo $user_email; ?>\" size=\"25\" /> <p> <input id=\"user_pwd1\" class=\"input\" type=\"password\" tabindex=\"21\" size=\"25\" value=\"\" name=\"user_pass\" /> <p> <input id=\"user_pwd2\" class=\"input\" type=\"password\" tabindex=\"21\" size=\"25\" value=\"\" name=\"user_pass2\" /> <p class=\"submit\"> |
添加表单处理代码:在reg-page.php开头处中,将第一个 <?php 改成代码二(注意使用UTF-8编码保存)
php代码如下:
| <?php if( !emptyempty($_POST[\'ludou_reg\']) ) { $error = \'\'; $sanitized_user_login = sanitize_user( $_POST[\'user_login\'] ); $user_email = apply_filters( \'user_registration_email\', $_POST[\'user_email\'] ); // Check the username if ( $sanitized_user_login == \'\' ) { $error .= \'<strong>错误</strong>:请输入用户名。 \'; } elseif ( ! validate_username( $user_login ) ) { $error .= \'<strong>错误</strong>:此用户名包含无效字符,请输入有效的用户名 。\'; $sanitized_user_login = \'\'; } elseif ( username_exists( $sanitized_user_login ) ) { $error .= \'<strong>错误</strong>:该用户名已被注册,请再选择一个。 \'; } // Check the e-mail address if ( $user_email == \'\' ) { $error .= \'<strong>错误</strong>:请填写电子邮件地址。 \'; } elseif ( ! is_email( $user_email ) ) { $error .= \'<strong>错误</strong>:电子邮件地址不正确。! \'; $user_email = \'\'; } elseif ( email_exists( $user_email ) ) { $error .= \'<strong>错误</strong>:该电子邮件地址已经被注册,请换一个。 \'; } // Check the password if($error == \'\') { if ( ! $user_id ) { // 自动登录 |
希望本文所述对大家WordPress建站有所帮助。

Demand feedback