admin管理员组

文章数量:1022712

I have created WordPress plugin for my custom post. I have tried all solution for archive, which I have found on Youtube and StackExchange but none of those are working.

I have refreshed permalink for many times tried alternative options.

localhost/westernlogan/articles/ - This archive link giving error (Oops! That page can’t be found.) (even i tried link removing end slash)

localhost/westernlogan/articles/what-is-computer-aided-design-cad/ - this link working fine

archive-articles.php - name of archive page

<?php
/*
Plugin Name: Westernlogan Dashboard
Plugin URI: /
Description: This is not just a Dashboard, it symbolizes the hope and 
enthusiasm of an entire generation summed up in two words sung most famously 
by Westernlogan.
Author: Harshad
Version: 1.0
Author: Westernlogan
Author URI: /
*/

add_action('init', 'articles_post_type');
add_action('init', 'custom_taxonomy');

function articles_post_type() {
$args = array(
        'labels'    => array(
            'name'               => _x( 'Articles', 'lr_article' ),
            'singular_name'      => _x( 'Article', 'lr_article' ),
            'menu_name'          => _x( 'Articles', 'lr_article' ),
            'name_admin_bar'     => _x( 'Article', 'lr_article' ),
            'add_new'            => _x( 'Add New', 'lr_article' ),
            'add_new_item'       => __( 'Add New article', 'lr_article' ),
            'new_item'           => __( 'New article', 'lr_article' ),
            'edit_item'          => __( 'Edit article', 'lr_article' ),
            'view_item'          => __( 'View article', 'lr_article' ),
            'all_items'          => __( 'All articles', 'lr_article' ),
            'search_items'       => __( 'Search articles', 'lr_article' ),
            'parent_item_colon'  => __( 'Parent articles:', 'lr_article' ),
            'not_found'          => __( 'No articles found.', 'lr_article' ),
            'not_found_in_trash' => __( 'No articles found in Trash.', 'lr_article' )
        ),
        'query_var' => 'Articles',
        'rewrite'   => array(
            'slug'          => 'articles',
            'with_front'    => false
        ),
        'public'        => true,
        // 'menu_position' => 5,
        'menu_icon'     => plugin_dir_url(__FILE__) . 'av-logo.png',
        'supports'      => array(
            'title',
            'editor',
            'thumbnail',
            'excerpt'
        )
    );
    flush_rewrite_rules();

    register_post_type('articles', $args);}

function custom_taxonomy() {

    $taxonomies = array(
        'hierarchical' => true,
        'query_var' => 'Articles_category',
        'rewrite' => array(
            'slug' => 'article-category',
        ),
        'labels' => array(
            'name' => 'Articles Category',
            'singular_name' => 'Articles Category',
            'edit_item' => 'Edit Articles Category',
            'update_item' => 'Update Articles Category',
            'add_new_item' => 'Add Articles Category',
            'new_item_name' => 'Add New Articles Category',
            'all_items' => 'All Articles Category',
            'search_items' => 'Search Articles Category',
            'popular_items' => 'Popular Articles Category',
            'separate_items_with_comments' => 'Separate articles Category with Commas',
            'add_or_remove_items' => 'Add or Remove articles Category',
            'choose_from_most_used' => 'Choose from most used articles Category'));

    register_taxonomy('articles_category', array('articles'), $taxonomies);}

Here is my .htaaccess setting (in case you need)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /westernlogan/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /westernlogan/index.php [L]
</IfModule>

# END WordPress

# WP Maximum Execution Time Exceeded
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_input_time 300

</IfModule>

I have created WordPress plugin for my custom post. I have tried all solution for archive, which I have found on Youtube and StackExchange but none of those are working.

I have refreshed permalink for many times tried alternative options.

localhost/westernlogan/articles/ - This archive link giving error (Oops! That page can’t be found.) (even i tried link removing end slash)

localhost/westernlogan/articles/what-is-computer-aided-design-cad/ - this link working fine

archive-articles.php - name of archive page

<?php
/*
Plugin Name: Westernlogan Dashboard
Plugin URI: http://www.westernlogan/
Description: This is not just a Dashboard, it symbolizes the hope and 
enthusiasm of an entire generation summed up in two words sung most famously 
by Westernlogan.
Author: Harshad
Version: 1.0
Author: Westernlogan
Author URI: http://www.westernlogan/
*/

add_action('init', 'articles_post_type');
add_action('init', 'custom_taxonomy');

function articles_post_type() {
$args = array(
        'labels'    => array(
            'name'               => _x( 'Articles', 'lr_article' ),
            'singular_name'      => _x( 'Article', 'lr_article' ),
            'menu_name'          => _x( 'Articles', 'lr_article' ),
            'name_admin_bar'     => _x( 'Article', 'lr_article' ),
            'add_new'            => _x( 'Add New', 'lr_article' ),
            'add_new_item'       => __( 'Add New article', 'lr_article' ),
            'new_item'           => __( 'New article', 'lr_article' ),
            'edit_item'          => __( 'Edit article', 'lr_article' ),
            'view_item'          => __( 'View article', 'lr_article' ),
            'all_items'          => __( 'All articles', 'lr_article' ),
            'search_items'       => __( 'Search articles', 'lr_article' ),
            'parent_item_colon'  => __( 'Parent articles:', 'lr_article' ),
            'not_found'          => __( 'No articles found.', 'lr_article' ),
            'not_found_in_trash' => __( 'No articles found in Trash.', 'lr_article' )
        ),
        'query_var' => 'Articles',
        'rewrite'   => array(
            'slug'          => 'articles',
            'with_front'    => false
        ),
        'public'        => true,
        // 'menu_position' => 5,
        'menu_icon'     => plugin_dir_url(__FILE__) . 'av-logo.png',
        'supports'      => array(
            'title',
            'editor',
            'thumbnail',
            'excerpt'
        )
    );
    flush_rewrite_rules();

    register_post_type('articles', $args);}

function custom_taxonomy() {

    $taxonomies = array(
        'hierarchical' => true,
        'query_var' => 'Articles_category',
        'rewrite' => array(
            'slug' => 'article-category',
        ),
        'labels' => array(
            'name' => 'Articles Category',
            'singular_name' => 'Articles Category',
            'edit_item' => 'Edit Articles Category',
            'update_item' => 'Update Articles Category',
            'add_new_item' => 'Add Articles Category',
            'new_item_name' => 'Add New Articles Category',
            'all_items' => 'All Articles Category',
            'search_items' => 'Search Articles Category',
            'popular_items' => 'Popular Articles Category',
            'separate_items_with_comments' => 'Separate articles Category with Commas',
            'add_or_remove_items' => 'Add or Remove articles Category',
            'choose_from_most_used' => 'Choose from most used articles Category'));

    register_taxonomy('articles_category', array('articles'), $taxonomies);}

Here is my .htaaccess setting (in case you need)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /westernlogan/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /westernlogan/index.php [L]
</IfModule>

# END WordPress

# WP Maximum Execution Time Exceeded
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_input_time 300

</IfModule>
Share Improve this question edited Apr 23, 2019 at 10:30 Harshad Gole asked Sep 28, 2017 at 19:21 Harshad GoleHarshad Gole 71 silver badge4 bronze badges 0
Add a comment  | 

1 Answer 1

Reset to default 4

why don't you try adding:

    'has_archive'        => true,

to your code?

so replace this line:

    'public'        => true,

with this:

    'public'        => true,
    'has_archive'        => true,

Then refresh your permalinks by visiting settings/permalinks.

I have created WordPress plugin for my custom post. I have tried all solution for archive, which I have found on Youtube and StackExchange but none of those are working.

I have refreshed permalink for many times tried alternative options.

localhost/westernlogan/articles/ - This archive link giving error (Oops! That page can’t be found.) (even i tried link removing end slash)

localhost/westernlogan/articles/what-is-computer-aided-design-cad/ - this link working fine

archive-articles.php - name of archive page

<?php
/*
Plugin Name: Westernlogan Dashboard
Plugin URI: /
Description: This is not just a Dashboard, it symbolizes the hope and 
enthusiasm of an entire generation summed up in two words sung most famously 
by Westernlogan.
Author: Harshad
Version: 1.0
Author: Westernlogan
Author URI: /
*/

add_action('init', 'articles_post_type');
add_action('init', 'custom_taxonomy');

function articles_post_type() {
$args = array(
        'labels'    => array(
            'name'               => _x( 'Articles', 'lr_article' ),
            'singular_name'      => _x( 'Article', 'lr_article' ),
            'menu_name'          => _x( 'Articles', 'lr_article' ),
            'name_admin_bar'     => _x( 'Article', 'lr_article' ),
            'add_new'            => _x( 'Add New', 'lr_article' ),
            'add_new_item'       => __( 'Add New article', 'lr_article' ),
            'new_item'           => __( 'New article', 'lr_article' ),
            'edit_item'          => __( 'Edit article', 'lr_article' ),
            'view_item'          => __( 'View article', 'lr_article' ),
            'all_items'          => __( 'All articles', 'lr_article' ),
            'search_items'       => __( 'Search articles', 'lr_article' ),
            'parent_item_colon'  => __( 'Parent articles:', 'lr_article' ),
            'not_found'          => __( 'No articles found.', 'lr_article' ),
            'not_found_in_trash' => __( 'No articles found in Trash.', 'lr_article' )
        ),
        'query_var' => 'Articles',
        'rewrite'   => array(
            'slug'          => 'articles',
            'with_front'    => false
        ),
        'public'        => true,
        // 'menu_position' => 5,
        'menu_icon'     => plugin_dir_url(__FILE__) . 'av-logo.png',
        'supports'      => array(
            'title',
            'editor',
            'thumbnail',
            'excerpt'
        )
    );
    flush_rewrite_rules();

    register_post_type('articles', $args);}

function custom_taxonomy() {

    $taxonomies = array(
        'hierarchical' => true,
        'query_var' => 'Articles_category',
        'rewrite' => array(
            'slug' => 'article-category',
        ),
        'labels' => array(
            'name' => 'Articles Category',
            'singular_name' => 'Articles Category',
            'edit_item' => 'Edit Articles Category',
            'update_item' => 'Update Articles Category',
            'add_new_item' => 'Add Articles Category',
            'new_item_name' => 'Add New Articles Category',
            'all_items' => 'All Articles Category',
            'search_items' => 'Search Articles Category',
            'popular_items' => 'Popular Articles Category',
            'separate_items_with_comments' => 'Separate articles Category with Commas',
            'add_or_remove_items' => 'Add or Remove articles Category',
            'choose_from_most_used' => 'Choose from most used articles Category'));

    register_taxonomy('articles_category', array('articles'), $taxonomies);}

Here is my .htaaccess setting (in case you need)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /westernlogan/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /westernlogan/index.php [L]
</IfModule>

# END WordPress

# WP Maximum Execution Time Exceeded
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_input_time 300

</IfModule>

I have created WordPress plugin for my custom post. I have tried all solution for archive, which I have found on Youtube and StackExchange but none of those are working.

I have refreshed permalink for many times tried alternative options.

localhost/westernlogan/articles/ - This archive link giving error (Oops! That page can’t be found.) (even i tried link removing end slash)

localhost/westernlogan/articles/what-is-computer-aided-design-cad/ - this link working fine

archive-articles.php - name of archive page

<?php
/*
Plugin Name: Westernlogan Dashboard
Plugin URI: http://www.westernlogan/
Description: This is not just a Dashboard, it symbolizes the hope and 
enthusiasm of an entire generation summed up in two words sung most famously 
by Westernlogan.
Author: Harshad
Version: 1.0
Author: Westernlogan
Author URI: http://www.westernlogan/
*/

add_action('init', 'articles_post_type');
add_action('init', 'custom_taxonomy');

function articles_post_type() {
$args = array(
        'labels'    => array(
            'name'               => _x( 'Articles', 'lr_article' ),
            'singular_name'      => _x( 'Article', 'lr_article' ),
            'menu_name'          => _x( 'Articles', 'lr_article' ),
            'name_admin_bar'     => _x( 'Article', 'lr_article' ),
            'add_new'            => _x( 'Add New', 'lr_article' ),
            'add_new_item'       => __( 'Add New article', 'lr_article' ),
            'new_item'           => __( 'New article', 'lr_article' ),
            'edit_item'          => __( 'Edit article', 'lr_article' ),
            'view_item'          => __( 'View article', 'lr_article' ),
            'all_items'          => __( 'All articles', 'lr_article' ),
            'search_items'       => __( 'Search articles', 'lr_article' ),
            'parent_item_colon'  => __( 'Parent articles:', 'lr_article' ),
            'not_found'          => __( 'No articles found.', 'lr_article' ),
            'not_found_in_trash' => __( 'No articles found in Trash.', 'lr_article' )
        ),
        'query_var' => 'Articles',
        'rewrite'   => array(
            'slug'          => 'articles',
            'with_front'    => false
        ),
        'public'        => true,
        // 'menu_position' => 5,
        'menu_icon'     => plugin_dir_url(__FILE__) . 'av-logo.png',
        'supports'      => array(
            'title',
            'editor',
            'thumbnail',
            'excerpt'
        )
    );
    flush_rewrite_rules();

    register_post_type('articles', $args);}

function custom_taxonomy() {

    $taxonomies = array(
        'hierarchical' => true,
        'query_var' => 'Articles_category',
        'rewrite' => array(
            'slug' => 'article-category',
        ),
        'labels' => array(
            'name' => 'Articles Category',
            'singular_name' => 'Articles Category',
            'edit_item' => 'Edit Articles Category',
            'update_item' => 'Update Articles Category',
            'add_new_item' => 'Add Articles Category',
            'new_item_name' => 'Add New Articles Category',
            'all_items' => 'All Articles Category',
            'search_items' => 'Search Articles Category',
            'popular_items' => 'Popular Articles Category',
            'separate_items_with_comments' => 'Separate articles Category with Commas',
            'add_or_remove_items' => 'Add or Remove articles Category',
            'choose_from_most_used' => 'Choose from most used articles Category'));

    register_taxonomy('articles_category', array('articles'), $taxonomies);}

Here is my .htaaccess setting (in case you need)

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /westernlogan/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /westernlogan/index.php [L]
</IfModule>

# END WordPress

# WP Maximum Execution Time Exceeded
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_input_time 300

</IfModule>
Share Improve this question edited Apr 23, 2019 at 10:30 Harshad Gole asked Sep 28, 2017 at 19:21 Harshad GoleHarshad Gole 71 silver badge4 bronze badges 0
Add a comment  | 

1 Answer 1

Reset to default 4

why don't you try adding:

    'has_archive'        => true,

to your code?

so replace this line:

    'public'        => true,

with this:

    'public'        => true,
    'has_archive'        => true,

Then refresh your permalinks by visiting settings/permalinks.

本文标签: pluginsCustom Post Archive is not working