最新公告
  • 欢迎您光临大资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • WordPressPostType(自定义文章类型)功能介绍

    WordPressPostType(自定义文章类型)功能介绍 最后编辑:2020-10-21
    增值服务: 自动发货 使用说明 安装指导 环境配置二次开发BUG修复

    创建一个新的 Post Type 需要使用 register_post_type 函数注,在你主题的 functions.php 文件下调用该函数:

    这时候我们可以新建 

    为 Post Type 添加自定义 Meta Box

    我们想要添加的电影类型不能仅仅只有正文内容,我们还需要额外添加一些 导演 之类的有关内容。那么就需要添加自定义 Meta Box,Meta Box 可以在文章发表页面中添加自定义的表单,编写文章的时候可以填写额外的信息然后在前端调用出来。

    自定义 Meta Box 需要用到 add_meta_box 函数:

    <code id=\”site_director\” style=\”width:100%\” name=\”site_director\” value=\”<?php echo esc_attr( $value ); ?>\” placeholder=\”输入网址链接\” >
    <?php
    }
    add_action( \’save_post\’, \’site_director_save_meta_box\’ );
    function site_director_save_meta_box($post_id){
    // 安全检查
    // 检查是否发送了一次性隐藏表单内容(判断是否为第三者模拟提交)
    if ( ! isset( $_POST[\’site_director_meta_box_nonce\’] ) ) {
    return;
    }
    // 判断隐藏表单的值与之前是否相同
    if ( ! wp_verify_nonce( $_POST[\’site_director_meta_box_nonce\’], \’site_director_meta_box\’ ) ) {
    return;
    }
    // 判断该用户是否有权限
    if ( ! current_user_can( \’edit_post\’, $post_id ) ) {
    return;
    }
    // 判断 Meta Box 是否为空
    if ( ! isset( $_POST[\’site_director\’] ) ) {
    return;
    }
    $site_director = sanitize_text_field( $_POST[\’site_director\’] );
    update_post_meta( $post_id, \’_site_director\’, $site_director );
    }

    添加自定义字段:

    add_action(\"manage_posts_custom_column\", \"site_custom_columns\");
    add_filter(\"manage_edit-site_columns\", \"site_edit_columns\");
    function site_custom_columns($column){
    global $post;
    switch ($column) {
    case \"site_director\":
    echo get_post_meta( $post->ID, \'_site_director\', true );
    break;
    }
    }
    function site_edit_columns($columns){

    $columns[\’site_director\’] = \’网址\’;

    return $columns;
    }

    显示 Meta Box 内容

    echo \'网址:\'.get_post_meta( get_the_ID(), \'_site_director\', true );

    调用 WP_Query 高度自定义调用 Post Type 的内容

    $args = array( \'post_type\' => \'site\', \'posts_per_page\' => 10 );
    $loop = new WP_Query( $args );
    while ( $loop->have_posts() ) : $loop->the_post();
    the_title();
    echo \'

    <div class=\”entry-content\”>\’;
    the_content();
    echo \'</div>\’;
    endwhile;

    文章来自大资源网https://www.dzy10.com转载请保留本链接,谢谢!

    猜你在找

    • 2020-06-08Hi,初次和大家见面了,请多关照!

    售后服务:

    • 售后服务范围 1、商业模板使用范围内问题免费咨询
      2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户
      3、单价超过200元的模板免费一次安装,需提供服务器信息。
      付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
      2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
      3、服务器环境配置(一般 ¥50-300)
      4、网站中毒处理(需额外付费,500元/次/质保三个月)
      售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
      免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 3482249445@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者
    升级SVIP尊享更多特权立即升级
    My title page contents
    召唤伊斯特瓦尔