Site icon Hip-Hop Website Design and Development

How To Create Dynamic Permalink To Custom Taxonomy List of Current Posts?

I’m looking for help with a problem I’ve run into and can’t seem to workout myself. I have created my own custom taxonomy called series (code below). I am calling the custom taxonomy posts in a widget using a plugin called "Flexible Posts Widget" (screenshot for widget below and code for plugin below).

This works fine and it calls the posts. But I want to create a "View All" link that goes to whatever "Series" (my custom taxonomy) that is being called within the widget. I tried the permalink but it goes to the last post being called and not to a page that lists all the posts under the taxonomy currently being called in that widget. I’m looking for a way to link to that page and make it dynamic as the custom taxonomy "Series" will change depending which series is being called in the widget.

Guidance is greatly appreciated – I will be very responsive!

functions.php / Where I register the taxonomy

function create_series_hierarchical_taxonomy() {
    $labels = array(
        'name'              => _x( 'series', 'taxonomy general name' ),
        'singular_name'     => _x( 'series', 'taxonomy singular name' ),
        'search_items'      => __( 'search series' ),
        'all_items'         => __( 'all series' ),
        'parent_item'       => __( 'parent series' ),
        'parent_item_colon' => __( 'parent series:' ),
        'edit_item'         => __( 'edit series' ),
        'update_item'       => __( 'update series' ),
        'add_new_item'      => __( 'add new series' ),
        'new_item_name'     => __( 'new series name' ),
        'menu_name'         => __( 'series' ),
    );

    $args = array(
        'hierarchical'      => true,
        'labels'            => $labels,
        'show_ui'           => true,
        'show_admin_column' => true,
        'query_var'         => true,
        'rewrite'           => array( 'slug' => 'series' ),
        'show_in_rest'      => true,
    );

    register_taxonomy('series', array('post'), $args );
}

The Flexible Posts Widget Code Template I edited to call my posts

// Block direct requests
if ( !defined('ABSPATH') )
    die('-1');

echo $before_widget;

if ( !empty($title) )
    echo $before_title . $title . $after_title;

if( $flexible_posts->have_posts() ):
    ?>

    <div>
    <?php
    // This sets out a variable called $term - we'll use it ALOT for what we're about to do.
    $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); ?>
    <?php while( $flexible_posts->have_posts() ) : $flexible_posts->the_post(); global $post; ?>

        <h2><?php echo $term->name; ?></h2><!-- Prints the term name as set in the Widget -->

        <a href="<?php the_permalink(); ?>"><p><?php the_title();?></p></a>

    <?php endwhile; ?>
    </div>

    <a href="<?php the_permalink(); ?>">View All</a> <!-- This doesn't link to the current "Series" taxonomy page like I want it to -->

<?php else: // No Posts ?>
    <div class="dpe-flexible-posts no-posts">
        <p><?php _e( 'Empty', 'flexible-posts-widget' ); ?></p>
    </div>
<?php
endif; // End have_posts()

echo $after_widget;

Widget Screenshot For Visual Reference If It Helps

UPDATE

The answer provided by @bdtheme returns this error message, still looking for solution:

( ! ) Catchable fatal error: Object of class WP_Error could not be
converted to string in
C:..wordpresswp-contentpluginsflexible-posts-widgetviewsseries-template.php
on line 46

Call Stack #TimeMemoryFunctionLocation 10.0005240784{main}(
)…index.php:0 20.0008243888require(
‘C:..wordpresswp-blog-header.php’ )…index.php:17

30.717639617200require_once( ‘C:..wordpresswp-includestemplate-loader.php’
)…wp-blog-header.php:19 40.721039663800include(
‘C:..wordpresswp-contentthemeshffront-page.php’
)…template-loader.php:74 50.892539948680dynamic_sidebar(
)…front-page.php:95 60.894139952688
call_user_func_array:{C:..wordpresswp-includeswidgets.php:743} (
)…widgets.php : 743 70.894139953272WP_Widget->display_callback(
)…widgets.php : 743 80.894339963256Flexible_Posts_Widget->widget(
)…class-wp-widget.php : 372 90.902740010816include(
‘C:..wordpresswp-contentpluginsflexible-posts-widgetviewsseries-template.php’
)…class-fpw-widget.php : 197