Tagged: 

Viewing 16 posts - 1 through 16 (of 16 total)
  • Author
    Posts
  • #93465
    Will
    Participant

    I’m trying to increase my ranking’s with Google by including Breadcrumbs for the user’s. However, once I selected the two Breadcrumb options under customize>>Theme Options>>Breadcrumb Options and saved it, Google’s structured-data testing-tool see’s 2 errors in the theme’s Breadcrumbs. It says, A value for the “title” field is required. And, A value for the “url” field is required.
    How can I rectify this issue in the Catch Responsive Pro theme so that Google finds these missing fields and improves my rankings?
    Please keep in mind that I have no software knowledge at all if coding or altering a script is necessary.
    Thank you

    Oh, it would have been nice to include attachments in these messages.

    #93472
    Mahesh
    Keymaster

    @aaspedia: Please do not repeat the same post. I have already replied in your other thread. I’ll skip this one.

    Regards,
    Mahesh

    #93478
    Will
    Participant

    Sorry, that was my first post ever on here and it was placed in the wrong theme section of the forum. I wanted to delete it once I realized I posted it wrong, but didn’t see the option in doing so. Please use this post as it’s correct for my theme as I spelled out in my post.
    The url is fortlauderdalelawfirms.us
    Thanks in advance for your time and efforts.
    Regards,
    Will

    #93561
    Mahesh
    Keymaster

    @aaspedia:
    For the fix, you’ll need to edit catch-responsive-pro/inc/catchresponsive-breadcrumb.php.
    Replace line 82 with the following line:
    echo $linkBefore . '<a href="' . esc_url( $homeLink ) . '" ' . $linkAttr . '>' . $text['home'] . '</a>' . $linkAfter;
    This will be fixed in next update.

    Regards,
    Mahesh

    #93977
    Will
    Participant

    Yeah that didn’t work. Here’s the white page error message:
    Parse error: syntax error, unexpected ‘&’ in /home/miamilawyer/public_html/wp-content/themes/catch-responsive-pro/inc/catchresponsive-breadcrumb.php on line 82

    #94002
    Mahesh
    Keymaster

    @aaspedia: Do you have & in line 82? there should not be any. Please check the codes in line 82 again. Let me know problem persists.

    Regards,
    Mahesh

    #94011
    Will
    Participant

    Mahesh, my bad. I was using the email text file and not the file on this forum. Completely different format which gave me the error.
    Once I copied and pasted the right text file, my website worked. However, it did not remove both error messages that Google Web Master pointed out. Please look into removing the “URL” error message as well.
    Here’s the error message.
    “is not a known valid target type for the http://rdf.data-vocabulary.org/#url property”

    #94053
    Mahesh
    Keymaster

    @aaspedia: It should have worked fine. I checked it too and got no error. Have you corrected the code, I don’t see the changes in the home page html. The link html should have following attributes after code replacement
    property="v:title" rel="v:url" as can be seen in other pages beside home page.
    Let me know further.

    Regards,
    Mahesh

    #94059
    Will
    Participant

    Since you only sent half the code, perhaps you can fill in the remaining half of the code so this script works as intended.
    Complete it in it’s proper position in the code itself so I only need to copy and paste it in.

    global $post, $paged, $page;
    $homeLink = home_url( ‘/’ );
    $linkBefore = ‘<span class=”breadcrumb” typeof=”v:Breadcrumb”>’;
    $linkAfter = ‘</span>’;
    $linkAttr = ‘ rel=”v:url” property=”v:title”‘;
    $link = $linkBefore . ‘<a’ . $linkAttr . ‘ href=”%1$s”>%2$s ‘ . $delimiter . ‘‘ . $linkAfter;

    if( is_front_page() ) {

    if( $showOnHome ) {
    echo ‘<div id=”breadcrumb-list”>
    <div class=”wrapper”>’;

    echo $linkBefore . ‘‘ . $text[‘home’] . ‘‘ . $linkAfter;

    echo ‘</div><!– .wrapper –>
    </div><!– #breadcrumb-list –>’;

    #94062
    Mahesh
    Keymaster

    @aaspedia: Please find the full function code in the link below:
    http://goo.gl/OERhPY
    Hope this helps. Let me know if any problem.

    Regards,
    Mahesh

    #94082
    Will
    Participant

    Have you actually gone into Googles Structured Data Testing Tool to check your work or are you assuming you’ve fixed this problem?? Cause if you had gone and used the support tool, it clearly would show you your work hasn’t fixed anything.
    Try using the tool and when there isn’t a RED error message in the Breadcrumb section, than send your fix to me.
    Here is some help getting to Googles Structured Data Testing Tool with my website attached:
    https://search.google.com/structured-data/testing-tool#url=http%3A%2F%2Ffortlauderdalelawfirms.us%2F

    #94103
    Mahesh
    Keymaster

    @aaspedia: Of course I’ve tested the Google Structured Data. As it didn’t give any error message I sent you the fix.
    Can you please share your catchresponsive-breadcrumb.php file.

    Regards,
    Mahesh

    #94121
    Will
    Participant

    Here you go.

    <?php
    /**
    * The template for displaying the Breadcrumb
    *
    * @package Catch Themes
    * @subpackage Catch Responsive Pro
    * @since Catch Responsive 1.0
    */

    if ( ! defined( ‘CATCHRESPONSIVE_THEME_VERSION’ ) ) {
    header( ‘Status: 403 Forbidden’ );
    header( ‘HTTP/1.1 403 Forbidden’ );
    exit();
    }

    /**
    * Add breadcrumb.
    *
    * @action catchresponsive_after_header
    *
    * @since Catch Responsive 1.0
    */
    if( !function_exists( ‘catchresponsive_add_breadcrumb’ ) ) :

    function catchresponsive_add_breadcrumb() {
    $options = catchresponsive_get_theme_options(); // Get options

    if( isset ( $options[‘breadcumb_option’] ) && $options[‘breadcumb_option’] ) {
    $showOnHome = ( isset ( $options[‘breadcumb_onhomepage’] ) && $options[‘breadcumb_onhomepage’] ) ? ‘1’ : ‘0’;

    $delimiter = ‘<span class=”sep”>’. $options[‘breadcumb_seperator’] .'</span><!– .sep –>’; // delimiter between crumbs

    echo catchresponsive_custom_breadcrumbs( $showOnHome, $delimiter );
    }
    else
    return false;
    }

    endif;
    add_action( ‘catchresponsive_after_header’, ‘catchresponsive_add_breadcrumb’, 50 );

    /**
    * Breadcrumb Lists
    * Allows visitors to quickly navigate back to a previous section or the root page.
    *
    * Adopted from Dimox
    *
    * @since Catch Responsive 1.0
    */
    if( !function_exists( ‘catchresponsive_custom_breadcrumbs’ ) ) :

    function catchresponsive_custom_breadcrumbs( $showOnHome, $delimiter ) {

    /* === OPTIONS === */
    $text[‘home’] = __( ‘Home’, ‘catch-responsive’ ); // text for the ‘Home’ link
    $text[‘category’] = __( ‘%1$s Archive for %2$s’, ‘catch-responsive’ ); // text for a category page
    $text[‘search’] = __( ‘%1$s Search results for: %2$s’, ‘catch-responsive’ ); // text for a search results page
    $text[‘tag’] = __( ‘%1$s Posts tagged %2$s’, ‘catch-responsive’ ); // text for a tag page
    $text[‘author’] = __( ‘%1$s View all posts by %2$s’, ‘catch-responsive’ ); // text for an author page
    $text[‘404’] = __( ‘Error 404’, ‘catch-responsive’ ); // text for the 404 page

    $showCurrent = 1; // 1 – show current post/page title in breadcrumbs, 0 – don’t show
    $before = ‘<span class=”breadcrumb-current”>’; // tag before the current crumb
    $after = ‘</span>’; // tag after the current crumb
    /* === END OF OPTIONS === */

    global $post, $paged, $page;
    $homeLink = home_url( ‘/’ );
    $linkBefore = ‘<span class=”breadcrumb” typeof=”v:Breadcrumb”>’;
    $linkAfter = ‘</span>’;
    $linkAttr = ‘ rel=”v:url” property=”v:title”‘;
    $link = $linkBefore . ‘<a’ . $linkAttr . ‘ href=”%1$s”>%2$s ‘ . $delimiter . ‘‘ . $linkAfter;

    if( is_front_page() ) {

    if( $showOnHome ) {
    echo ‘<div id=”breadcrumb-list”>
    <div class=”wrapper”>’;

    echo $linkBefore . ‘‘ . $text[‘home’] . ‘‘ . $linkAfter;

    echo ‘</div><!– .wrapper –>
    </div><!– #breadcrumb-list –>’;
    }

    }
    else {
    echo ‘<div id=”breadcrumb-list”>
    <div class=”wrapper”>’;

    echo sprintf( $link, $homeLink, $text[‘home’] );

    if( is_home() ) {
    if( $showCurrent == 1 ) {
    echo $before . get_the_title( get_option( ‘page_for_posts’, true ) ) . $after;
    }

    }
    elseif( is_category() ) {
    $thisCat = get_category( get_query_var( ‘cat’ ), false );
    if( $thisCat->parent != 0 ) {
    $cats = get_category_parents( $thisCat->parent, true, false );
    $cats = str_replace( ‘<a’, $linkBefore . ‘<a’ . $linkAttr, $cats );
    $cats = str_replace( ‘‘, $delimiter .’‘ . $linkAfter, $cats );
    echo $cats;
    }
    echo $before . sprintf( $text[‘category’], ‘<span class=”archive-text”>’, ‘&nbsp</span>’ . single_cat_title( ”, false ) ) . $after;

    }
    elseif( is_search() ) {
    echo $before . sprintf( $text[‘search’], ‘<span class=”search-text”>’, ‘&nbsp</span>’ . get_search_query() ) . $after;

    }
    elseif( is_day() ) {
    echo sprintf( $link, get_year_link( get_the_time( ‘Y’ ) ), get_the_time( ‘Y’ ) ) ;
    echo sprintf( $link, get_month_link( get_the_time( ‘Y’ ), get_the_time( ‘m’ ) ), get_the_time( ‘F’ ) );
    echo $before . get_the_time( ‘d’ ) . $after;

    }
    elseif( is_month() ) {
    echo sprintf( $link, get_year_link( get_the_time( ‘Y’ ) ), get_the_time( ‘Y’ ) ) ;
    echo $before . get_the_time( ‘F’ ) . $after;

    }
    elseif( is_year() ) {
    echo $before . get_the_time( ‘Y’ ) . $after;

    }
    elseif( is_single() && !is_attachment() ) {
    if( get_post_type() != ‘post’ ) {
    $post_type = get_post_type_object( get_post_type() );
    $slug = $post_type->rewrite;
    printf( $link, $homeLink . ‘/’ . $slug[‘slug’] . ‘/’, $post_type->labels->singular_name );
    if( $showCurrent == 1 ) {
    echo $before . get_the_title() . $after;
    }
    }
    else {
    $cat = get_the_category();
    $cat = $cat[0];
    $cats = get_category_parents( $cat, true, ” );
    if( $showCurrent == 0 ) {
    $cats = preg_replace( “#^(.+)$#”, “$1”, $cats );
    }
    $cats = str_replace( ‘<a’, $linkBefore . ‘<a’ . $linkAttr, $cats );
    $cats = str_replace( ‘‘, $delimiter .’‘ . $linkAfter, $cats );
    echo $cats;
    if( $showCurrent == 1 ) {
    echo $before . get_the_title() . $after;
    }
    }
    }
    elseif( !is_single() && !is_page() && get_post_type() != ‘post’ && !is_404() ) {
    $post_type = get_post_type_object( get_post_type() );
    echo $before . $post_type->labels->singular_name . $after;
    }
    elseif( is_attachment() ) {
    $parent = get_post( $post->post_parent );
    $cat = get_the_category( $parent->ID );

    if( isset( $cat[0] ) ) {
    $cat = $cat[0];
    }

    if( $cat ) {
    $cats = get_category_parents( $cat, true );
    $cats = str_replace( ‘<a’, $linkBefore . ‘<a’ . $linkAttr, $cats );
    $cats = str_replace( ‘‘, $delimiter .’‘ . $linkAfter, $cats );
    echo $cats;
    }

    printf( $link, get_permalink( $parent ), $parent->post_title );
    if( $showCurrent == 1 ) {
    echo $before . get_the_title() . $after;
    }

    }
    elseif( is_page() && !$post->post_parent ) {
    if( $showCurrent == 1 ) {
    echo $before . get_the_title() . $after;
    }

    }
    elseif( is_page() && $post->post_parent ) {
    $parent_id = $post->post_parent;
    $breadcrumbs = array();
    while( $parent_id ) {
    $page_child = get_post( $parent_id );
    $breadcrumbs[] = sprintf( $link, get_permalink( $page_child->ID ), get_the_title( $page_child->ID ) );
    $parent_id = $page_child->post_parent;
    }
    $breadcrumbs = array_reverse( $breadcrumbs );
    for( $i = 0; $i < count( $breadcrumbs ); $i++ ) {
    echo $breadcrumbs[$i];
    }
    if( $showCurrent == 1 ) {
    echo $before . get_the_title() . $after;
    }

    }
    elseif( is_tag() ) {
    echo $before . sprintf( $text[‘tag’], ‘<span class=”tag-text”>’, ‘&nbsp</span>’ . single_tag_title( ”, false ) ) . $after;

    }
    elseif( is_author() ) {
    global $author;
    $userdata = get_userdata( $author );
    echo $before . sprintf( $text[‘author’], ‘<span class=”author-text”>’, ‘&nbsp</span>’ . $userdata->display_name ) . $after;

    }
    elseif( is_404() ) {
    echo $before . $text[‘404’] . $after;

    }
    if( get_query_var( ‘paged’ ) ) {
    if( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) {
    echo ‘ (‘;
    }
    echo sprintf( __( ‘Page %s’, ‘catch-responsive’ ), max( $paged, $page ) );
    if( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) {
    echo ‘)’;
    }
    }

    echo ‘</div><!– .wrapper –>
    </div><!– #breadcrumb-list –>’;
    }

    } // end catchresponsive_breadcrumb_lists
    endif;

    #94171
    Mahesh
    Keymaster

    @aaspedia: You are missing something in your code. Please find the complete code for catchresponsive_breadcrumb.php in the link below and replace the code in your file with this and check if this resolves the issue.
    http://goo.gl/iZp4ax

    Regards,
    Mahesh

    #94190
    Will
    Participant

    First, this is not my code, it’s Catchresponsive’s code that you have made modifications too.
    Your complete code http://goo.gl/iZp4ax you just sent still fails!
    This link http://fortlauderdalelawfirms.us/?p=1030&preview=true shows you how badly your code fails. It also compares the original breadcrumb code to your latest changes and what those changes are.
    I don’t think I’ve ever spent this amount of time and effort with any coder in the past that can’t fix their own software issues.

    #94401
    Mahesh
    Keymaster

    @aaspedia:

    Hi Will,

    Sorry for the late reply. Please check your email.

    Regards,
    Mahesh

Viewing 16 posts - 1 through 16 (of 16 total)
  • The topic ‘Breadcrumbs Script Files Missing’ is closed to new replies.