Home › Forums › WC Vendors Pro Support › Titile, Description, Keywords on domain.com/vendors/vendorname › Reply To: Titile, Description, Keywords on domain.com/vendors/vendorname
March 23, 2017 at 4:22 pm
#59798
Anonymous
Inactive
OK, one more point please))) =D
This code should work for Yoast… if you use ‘pv_shop_description’ and ‘pv_shop_name’ on vendors pages
// SEO Overwrite meta description for vendor pages
function overwrite_vendor_meta($desc) {
// Return the default value if we're not on a vendor shop page
if(!WCV_Vendors::is_vendor_page()) return $desc;
// Get the vendor description and return it
$vendor_shop = urldecode( get_query_var( 'vendor_shop' ) );
$vendor_id = WCV_Vendors::get_vendor_id( $vendor_shop );
$desc = get_user_meta( $vendor_id, 'pv_shop_description', true );
// Remove line breaks
$desc = str_replace(array("\r", "\n"), " ", strip_tags($desc));
// Remove extra spaces
$desc = preg_replace( '/\s+/', ' ', $desc );
// Escape special characters
$desc = htmlspecialchars($desc);
// Shorten it to 156 characters (153 + '...')
$desc = substr($desc ,0,153).'...';
return $desc;
}
add_filter( '_yoast_wpseo_metadesc', 'overwrite_vendor_meta', 10, 1);
// SEO Overwrite meta description for vendor pages
function overwrite_vendor_title($title) {
// Return the default value if we're not on a vendor shop page
if(!WCV_Vendors::is_vendor_page()) return $title;
// Get the vendor description and return it
$vendor_shop = urldecode( get_query_var( 'vendor_shop' ) );
$vendor_id = WCV_Vendors::get_vendor_id( $vendor_shop );
$title = get_user_meta( $vendor_id, 'pv_shop_name', true );
return $title;
}
add_filter( '_yoast_wpseo_title', 'overwrite_vendor_title', 10, 1);
Enjoy!