编辑整理:整理来源:搜狗问问,浏览量:62,时间:2023-04-05 14:32:02
可以用插件Seamless Sticky Custom Post Types实现,插件小,代码简洁,实现的置顶功能完全与post一样,你可以参考一下。
其实不是不支持自定义文章类型,只是wp默认状态下,限定了置顶功能只在post类型下出现。
可参考wp-admin/inc气正消象负约ludes/met话谁假乐看维镇尔a_boxes.php中的post_submit_meta_box()函数.其中:
<?php if ( $post_type == 'post' && current_user_can( 'edit_others_画省务posts' ) ) : ?>$post_type == 'post'这段代码限定了这个置顶表单元素的出现,如果不想将用插件,直接去掉这段代码就可以了。
哪种方便就选厂级倒棉止策名集二哪种。
上一篇我们介绍了一个函数就搞定 WordPress 自定义文章选项开发,今天继续,给大家讲解如何使用一个函数就搞定 WordPress 自定义分类选项开发,也是一个函数,非常方便快速。
WordPress 自定义分类选项是在 WordPress 后台分类新增和编辑页面,给分类添加一些字段选项来实现功能,比如分类的 SEO 标题,关键字和描述等,所以要学会快速开发 WordPress 自定义分类选项是 WordPress 二次开发必备的技能。
这次的教程会简单直接一点,原来我们都会说 WordPress 原生的开发比较麻烦,这次不再重复了,我们直接讲解怎么使用 WPJAM Basic 进行 WordPress 自定义分类选项开发,因为原生开发有点复杂,如果介绍的话,文章篇幅过长,但是我们的重点是基于 WPJAM Basic 进行二次开发,所以直接来。
使用 WPAJAM BASIC 创建自定义选项我们继续使用一个函数就搞定 WordPress 设置页面开发里面创建的「WPJAM SEO」插件来演示怎么创建自定义分类选项页面,今天我们会创建分类的 SEO 选项,让你输入分类的 SEO 标题,关键字和描述。
直接上代码:
add_action('plugins_loaded', function(){ // 所有插件都已经加载 if(!did_action('wpjam_loaded')){ // 确保已加载 WPJAM Basic 插件 return; } wpjam_register_term_option('seo', [ 'title' => 'SEO设置', // 自定义选项标题 'list_table' => true, // 后台分类列表页也支持设置 'page_title' => 'SEO设置', // 分类列表点击弹窗的标题 'submit_text' => '设置', // 弹窗的提交按钮名称 'fields' => [ 'seo_title' => ['title'=>'SEO标题', 'type'=>'text', 'class'=>'large-text', 'placeholder'=>'不填则使用标题'], 'seo_description' => ['title'=>'SEO描述', 'type'=>'textarea'], 'seo_keywords' => ['title'=>'SEO关键字','type'=>'text', 'class'=>'large-text'] ] ]);});代码都加了注释,懂得同学应该已经知道怎么做了,还有些困惑的同学,请听我解释 ,首先还是先确保 WPJAM Basic 已加载,这方面一个函数就搞定 WordPress 设置页面开发中已经做了详细的介绍,这里就不再赘述了。
wpjam_register_term_option这个就是标题中说的那个牛逼的函数,是的,我们只用了 wpjam_register_term_option 这一个函数就在 WordPress 后台搞定自定义分类选项:
title:这个参数定义自定义选项的标题。list_table:定义后台分类列表页是否也支持通过弹窗设置fields:那么这个自定义选项框有哪些字段呢?就是这个参数决定的,这里定义了两个输入框和一个文本框。和自定义文章选项不同,分类新增和编辑页面没有 meta_box 的,字段是直接展示的,所以上面代码就是在分类列表和编辑页新增三个字段,分别是「SEO标题」,「SEO描述」和「SEO关键字」,我截图一下新增页面的字段:
然后在分类列表页右侧的分类列表也可以进行设置操作:
点击上面「SEO设置」按钮也可以进行同样的设置:
在页面上使用自定义分类选项创建了选项之后,那么我们就要把他们用起来,WordPress 提供了获取分类自定义字段的函数:
get_term_meta($term_id, $met_key, $single); // 获取分类自定义字段首先把在分类/标签/自定义分类页将页面标题改成上面定义的「SEO标题」:
add_filter('document_title', function($title){ if((is_category() || is_tag() || is_tax()) && get_query_var('paged') < 2){ return get_term_meta(get_queried_object_id(), 'seo_title', true) ?: $title; } return $title;});然后把「SEO描述」和「SEO关键字」输出到分类/标签/自定义分类页的 head 中:
add_action('wp_head', function(){ if((is_category() || is_tag() || is_tax()) && get_query_var('paged') < 2){ // 分类/标签/自定义分类页并且第一页 foreach(['description', 'keywords'] as $type){ if($meta_value = get_term_meta(get_queried_object_id(), 'seo_'.$type, true)){ echo "<meta name='{$type}' content='{$meta_value}' />\n"; // 只有设置才输出 } } }});就是这么简单,如果你是 WordPress 主题或者插件开发者,使用 WPJAM Basic 进行二次开发都是超简单的一件事情,我会把二次开发做成一个专题,下篇教程预告:一个函数搞定 WordPress 自定义分类列表自定义栏目开发。
有以来自下几步
首先需要做的是安装和取片车热场社激活Sticky Custom Post Types插件。然后到设置-阅读进行设置让哪一个wordpress支持置顶通这阻达功能。
这里有两个选项,一个是设置自定义文章类型,一个是设置显示在首页。如果你的自定义文章类型不再首页主循环之内,就无需勾选首页。由于我那个项目自定义文章类夜鸡条记天督振型不在主循环之内,所以套团没有勾选“首页”。
但你设置之后,在发布自定义文章类型文章的时候,你就会看到置顶功能,勾选即可。
件已所留判袁保误料守诉希望您能采纳,谢受虽商谢
wordpress 自定义分类,wordpress分类主题,wordpress分类信息主题
作者:整理来源:搜狗问问,时间:2023-04-05 14:32,浏览:63