web-dev-qa-db-ja.com

カスタム投稿タイプによりページが見つかりません

私はオンラインで基本的なチュートリアルを見つけました。それは最初からプラグインを作成する方法と新しいカスタム投稿タイプを設定する方法についての概要を示しました。自分が欲しいものを成し遂げるための基本的なクーポンプラグインを見つけることができなかった、なぜ自分で自分でプラグインを作ることにしたのか。

残念ながら、チュートリアルを完了した後、私は自分の投稿を公開したにもかかわらず「ページが見つかりません」と迎えられるだけのために、実際にページを表示する部分に来ました。誰もがこれをチェックアウトして、私が間違っていることを正確に私に知らせることができますか?

<?php

/**
* Plugin Name: Coupons
* Plugin URI: http://coupon.net
* Description: A coupon system plugin
* Version: 1.0.0
* Author: Brett Powell
* Author URI: http://coupon.net
**/

// Register the Custom Post Type "Coupon"
function register_cpt_coupon()
{
    $labels = array(
        'name' => _x( 'Coupons', 'coupon' ),
        'singular_name' => _x( 'Coupon', 'coupon' ),
        'add_new' => _x( 'Add New', 'coupon' ),
        'add_new_item' => _x( 'Add New Coupon', 'coupon' ),
        'edit_item' => _x( 'Edit Coupon', 'coupon' ),
        'new_item' => _x( 'New Coupon', 'coupon' ),
        'view_item' => _x( 'View Coupon', 'coupon' ),
        'search_items' => _x( 'Search Coupons', 'coupon' ),
        'not_found' => _x( 'No coupons found', 'coupon' ),
        'not_found_in_trash' => _x( 'No coupons found in Trash', 'coupon' ),
        'parent_item_colon' => _x( 'Parent Coupon:', 'coupon' ),
        'menu_name' => _x( 'Coupons', 'coupon' ),
    );

    $args = array(
        'labels' => $labels,
        'hierarchical' => true,
        'description' => 'Coupons filterable by company',
        'supports' => array( 'title', 'editor', 'thumbnail', 'revisions', 'page-attributes' ),
        'taxonomies' => array( 'genres' ),
        'public' => true,
        'show_ui' => true,
        'show_in_menu' => true,
        'menu_position' => 5,
        'menu_icon' => 'dashicons-format-audio',
        'show_in_nav_menus' => true,
        'publicly_queryable' => true,
        'exclude_from_search' => false,
        'has_archive' => true,
        'query_var' => true,
        'can_export' => true,
        'rewrite' => true,
        'capability_type' => 'post'
    );

    register_post_type( 'coupon', $args );
}

add_action( 'init', 'register_cpt_coupon' );

// Create Genre Taxonomy type
function genres_taxonomy()
{
    register_taxonomy(
        'genres',
        'coupon',
        array(
            'hierarchical' => true,
            'label' => 'Genres',
            'query_var' => true,
            'rewrite' => array(
                'slug' => 'genre',
                'with_front' => false
            )
        )
    );
}
add_action( 'init', 'genres_taxonomy');

// Function used to automatically create Coupon page.
function create_coupon_pages()
{
   //post status and options
    $post = array(
          'comment_status' => 'open',
          'ping_status' =>  'closed' ,
          'post_date' => date('Y-m-d H:i:s'),
          'post_name' => 'coupon',
          'post_status' => 'publish' ,
          'post_title' => 'Coupons',
          'post_type' => 'page',
    );
    //insert page and save the id
    $newvalue = wp_insert_post( $post, false );

    //save the id in the database
    update_option( 'couponpage', $newvalue );
}

// // Activates function if plugin is activated
register_activation_hook( __FILE__, 'create_coupon_pages');

?>
2
Aidan Knight

更新するには、パーマリンク設定ページにアクセスするだけでよいのです。管理>設定>パーマリンクに移動します。それからフロントエンドであなたのURLをもう一度試してください。

6
jdm2112