WordPress.org

Ready to get started?Download WordPress

Forums

Arconix FAQ
FAQ and Breadcrumb (7 posts)

  1. cotp
    Member
    Posted 1 year ago #

    Hello John :)

    I have some breadcrumbs on my theme.

    When I am on FAQ, the title appears well in the Breadcrumb. But if I use search and go inside a breadcrumb post I can't get to work a link to the main FAQ page inside the breadcrumb it appears empty like this:

    Home » » Name of the question

    Where I would like:

    Home » FAQ » Name of the question

    (where FAQ is a link to FAQ main page)

    Here is example of code on my breadcrumb:

    <?php } elseif (is_single()) { ?>
    					<?php $category = get_the_category();
    						  $catlink = get_category_link( $category[0]->cat_ID );
    						  echo ('<a href="'.esc_url($catlink).'">'.esc_html($category[0]->cat_name).'</a> '.'<span class="raquo">&raquo;</span> '.get_the_title()); ?>
    				<?php } elseif (is_category()) { ?>
    					<?php single_cat_title(); ?>

    Do you have an idea of what code I could add to achieve this ?

    Thanks in advance for your help...

    http://wordpress.org/extend/plugins/arconix-faq/

  2. John Gardner
    Member
    Plugin Author

    Posted 1 year ago #

    Hi cotp,

    Thanks for using my plugin. Your code would have to take into account the different post type, in this case, FAQ. That code you show only accounts for the 'Post' post type, which is why it's returning a blank space.

    The way I'd tackle it would be to set up a switch statement on the $post->$post_type (assuming you have global $post inside your function, otherwise there are other ways to get the current post_type) and set up your breadcrumb by the post type. Your existing code would run when the $post_type == 'post'.

    The problem you're going to run into is setting the hyperlink back to the main FAQ page. The way those crumbs are generally set up is the parent crumbs link to the respective archive. For example, when you view a post, the crumb sets the category the post is assigned to. Clicking on that category brings up that category's post archive (see archive.php). All the breadcrumb scripts I've seen all want to link to that post type's archive. That's not going to be the same thing as the main FAQ page in our case. Unfortunately I don't know a way around that unless you hard code the URL you want to use as the link.

    Justin Tadlock has an excellent breadcrumb script, and you can view it here... hopefully it will provide some inspiration.

  3. cotp
    Member
    Posted 1 year ago #

    Thanks John for your answer.

    If I try to hard code the URL could I write somthing like this ? :

    <?php if( is_faq() ) { ?>
    					<a href="http://www.mydomain.com/faq/"><span class="raquo">&raquo;</span>
    
    <?php } ?>

    can you help me on what I should write to replace "is_faq" by the correct code ? your faq plugin if I understand well what you said is a certain "type" of post ? Does it have a special category ?

    Thanks in advance for your help and sorry if my level in php is so basic... I try to understand though the best I can...

  4. John Gardner
    Member
    Plugin Author

    Posted 1 year ago #

    I'll give it a shot. Can you paste your entire breadcrumb function at pastebin.com and post the link here?

  5. cotp
    Member
    Posted 1 year ago #

    Thanks John, I didn't know pastbin nice :)

    Hee is the link:
    http://pastebin.com/PTrK6Y2q

  6. John Gardner
    Member
    Plugin Author

    Posted 1 year ago #

    All due respect to Elegant Themes, but that breadcrumb script is inefficiently coded and so basic it's almost not worth using unless all you ever plan on using are posts and pages. The best breadcrumb script I've seen is Hansel and Gretel. I have a support ticket into them to see how much work it would be to allow the user to override the default URL. If they update their plugin to allow that, I'd definitely recommend it over the breadcrumb script you're using now, and it's as simple to implement as changing out 1 line of code.

    All that said, put the following inside the is_single() if statement:

    $pt = get_post_type_object();
            if( $pt->name == 'faq' ) {
                echo '<a href="http://mysite.com/faq">' . $pt['labels']['name'] . '</a>' . '<span class="raquo">&raquo;</span>' . get_the_title();
            }
            else {
                $category = get_the_category();
                $catlink = get_category_link( $category[0]->cat_ID );
                echo ('<a href="' . esc_url( $catlink ) . '">' . esc_html( $category[0]->cat_name ) . '</a> ' . '<span class="raquo">&raquo;</span> ' . get_the_title());
            }

    Now, I don't have a way to test this, but it should work. Let me know how you make out.

  7. cotp
    Member
    Posted 1 year ago #

    Hello John and thanks again for your help on that.

    So far I added your code inside after
    <?php } elseif (is_single()) { ?>

    but it didn't work :/
    I had twice the same title with no link in it...

    Well I guess I will have to try to stick with what I have for now it is not that big of a bug anyway...

    Let me know about the other script if I can implement it I will try it.

Topic Closed

This topic has been closed to new replies.

About this Plugin

About this Topic

Tags