This topic has 16 replies, 3 voices, and was last updated 5 months, 3 weeks ago ago by Luca Rossi
Hi,
I added the promo text but then later removed it. It doesn’t show on the header builder but it does on the site. I can’t remove it at all, please can you let me know how to resolve this. Image is in the private content.
Hello, gcl,
Thank you for contacting us and for using XStore.
We are delighted to inform you that the issue you reported has been successfully resolved. The resolution involved removing the items that were added to the Promo Text widget in the Header Builder.
For your reference, we have provided images in the private content area.
Should you require any further assistance or have any questions, please do not hesitate to contact us. We are here to help.
Best regards,
The 8Theme Team
Thank you, I can see the promo text is removed however, I can’t see the promo text as an option to add elsewhere to the header.
The bottom header once resized cannot be fully expanded to the last block as can be seen in the screenshot.
Hello, gcl,
We are writing to provide you with updates and assistance regarding your recent inquiries:
1. We are pleased to confirm that the promo text widget is functioning correctly in your site and has been added to the top header of your site. You have the flexibility to adjust its position by dragging and dropping the widget according to your preferences. For your reference, please review the image provided in the private content area.
2. We are also happy to inform you that the issue with the bottom header menu has been successfully resolved by adjusting it to full container width. For further details, you may view the images in the private content area.
Additionally, it appears that there may be a caching issue on your end. We recommend clearing your browser’s cache and accessing the site with a fresh browser session to ensure that all updates are reflected correctly.
Should you require any further assistance or have additional questions, please do not hesitate to contact us. We are here to help.
Best Regards,
The 8Theme Team
Thanks, I cleared the cache and it’s fine. I just updated to the latest update you posted but the site is no longer functioning.
I cannot access the front or backend.
Hello,gcl,
To facilitate our support and ensure efficient service, we kindly request that you provide us with complete FTP access. Please submit the following details in the designated private content area:
– FTP Host
– FTP Username
– FTP Password
– FTP Port
– FTP Encryption Type
Should you require any assistance in creating these credentials, we recommend contacting your hosting provider for guidance.
Thank you for your cooperation.
Best regards,
8Theme’s Team
See private area
Dear @gcl,
We hope this message finds you well. We are currently experiencing difficulties connecting to your FTP account. For your reference, here is the link to the screenshot of the issue we encountered: https://prnt.sc/mGZbH158ezLZ.
Could you please verify the account details on your end?
Thank you for your attention to this matter.
Best regards,
The 8Theme Team
I have tested the ftp settings in private and it works on my end.
Please can you attend to this issue as a matter of urgency.
I’m very disappointed with the response time, I’ve just had to restore a backup because of how long it took. Please check attachment I upgraded to this version of the theme and it bricked the site.
Dear @gcl,
We hope this message finds you well. Upon reviewing the previous issue you encountered, it appears to be associated with the custom codes implemented under your child theme. We kindly suggest temporarily disabling all your custom codes and then proceeding with the update of the XStore theme and plugin once again:
// Adding the grouped product ID custom hidden field data in Cart object
add_filter( 'woocommerce_add_cart_item_data', 'save_custom_fields_data_to_cart', 20, 2 );
function save_custom_fields_data_to_cart( $cart_item_data, $product_id ) {
if( ! empty($_REQUEST['add-to-cart']) && $product_id != $_REQUEST['add-to-cart']
&& is_numeric($_REQUEST['add-to-cart']) ){
$group_prod = wc_get_product($_REQUEST['add-to-cart']);
if ( ! $group_prod->is_type( 'grouped' ) )
return $cart_item_data; // Exit
$cart_item_data['grouped_product'] = array(
'id' => $_REQUEST['add-to-cart'],
'name' => $group_prod->get_name(),
'link' => $group_prod->get_permalink(),
'visible' => $group_prod->is_visible(),
);
// Below statement make sure every add to cart action as unique line item
$cart_item_data['grouped_product']['unique_key'] = md5( microtime().rand() );
}
return $cart_item_data;
}
// Add the parent grouped product name to cart items names
add_filter( 'woocommerce_cart_item_name', 'custom_product_title_name', 20, 3 );
function custom_product_title_name( $cart_item_name, $cart_item, $cart_item_key ){
// The product object from cart item
$product = $cart_item['data'];
$product_permalink = $product->is_visible() ? $product->get_permalink( $cart_item ) : '';
// The parent product name and data
if( isset( $cart_item['grouped_product'] ) ){
$group_product = $cart_item['grouped_product'];
$group_prod_link = $product->is_visible() && is_cart() ? $group_product['link'] : '';
if ( ! $group_prod_link )
return $group_product['name'] . ' > ' . $product->get_name();
else
return sprintf(
'<a href="%s">%s</a> > <a href="%s">%s</a>',
esc_url( $group_prod_link ),
$group_product['name'],
esc_url( $product_permalink ),
$product->get_name()
);
}
else
return $cart_item_name;
}
// Save grouped product data in order item meta
add_action( 'woocommerce_checkout_create_order_line_item', 'added_grouped_order_item_meta', 20, 4 );
function added_grouped_order_item_meta( $item, $cart_item_key, $values, $order ) {
if( isset($values['grouped_product']) ){
$item_id = $item->get_id();
$grouped_data = $values['grouped_product'];
unset($grouped_data['unique_key']);
$item->update_meta_data( '_grouped_product', $grouped_data );
}
}
// Display grouped product linked names in order items (+ email notifications)
add_filter( 'woocommerce_order_item_name', 'custom_order_item_name', 20, 3 );
function custom_order_item_name( $item_name, $item, $is_visible ) {
$product = $item->get_product();
$product_id = $item->get_product_id();
$product_permalink = $is_visible ? $product->get_permalink( $item ) : '';
$grouped_data = wc_get_order_item_meta( $item->get_id(), '_grouped_product', true );
if( empty($grouped_data) ){
$item_name = $product_permalink ? sprintf(
'<a href="%s">%s</a>',
esc_url( $product_permalink),
$item->get_name()
) : $item->get_name();
} else {
$item_name = $product_permalink ? sprintf(
'<a href="%s">%s</a> > <a href="%s">%s</a>',
$grouped_data['link'],
$grouped_data['name'],
esc_url( $product_permalink) ,
$item->get_name()
) : $grouped_data['name'] . ' > ' . $item->get_name();
}
return $item_name;
}
// Display on backend order edit pages
add_action( 'woocommerce_before_order_itemmeta', 'backend_order_item_name_grouped', 20, 3 );
function backend_order_item_name_grouped( $item_id, $item, $product ){
if( ! ( is_admin() && $item->is_type('line_item') ) ) return;
$grouped_data = wc_get_order_item_meta( $item_id, '_grouped_product', true );
if( empty($grouped_data) ) return;
$product_link = admin_url( 'post.php?post=' . $grouped_data['id'] . '&action=edit' );
$grouped_name_html = '<a href="' . esc_url( $grouped_data['link'] ) . '" class="wc-order-item-name">' . esc_html( $grouped_data['name'] ) . '</a>';
echo '<br><br><div class="wc-order-item-name">
<small><strong>'.__('Grouped parent').':</strong></small><br>
' . $grouped_name_html . '
</div>';
}
/**
* @snippet Show SKU @ WooCommerce Cart
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @testedwith WooCommerce 5
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
// First, let's write the function that returns a given product SKU
function bbloomer_return_sku( $product ) {
$sku = $product->get_sku();
if ( ! empty( $sku ) ) {
return '<p>SKU: ' . $sku . '</p>';
} else {
return '';
}
}
// This adds the SKU under cart/checkout item name
add_filter( 'woocommerce_cart_item_name', 'bbloomer_sku_cart_checkout_pages', 9999, 3 );
function bbloomer_sku_cart_checkout_pages( $item_name, $cart_item, $cart_item_key ) {
$product = $cart_item['data'];
$item_name .= bbloomer_return_sku( $product );
return $item_name;
}
// This adds SKU under order item table name
add_action( 'woocommerce_order_item_meta_start', 'bbloomer_sku_thankyou_order_email_pages', 9999, 4 );
function bbloomer_sku_thankyou_order_email_pages( $item_id, $item, $order, $plain_text ) {
$product = $item->get_product();
echo bbloomer_return_sku( $product );
}
/**
* Hide loop read more buttons for out of stock items
if (!function_exists('woocommerce_template_loop_add_to_cart')) {
function woocommerce_template_loop_add_to_cart() {
global $product;
if ( ! $product->is_in_stock() || ! $product->is_purchasable() ) return;
wc_get_template('loop/add-to-cart.php');
}
}
*/
Thank you for your attention to this matter.
Best Regards,
The 8Theme Team
If I remove this code and use a plugin like Code Snippets to add the code would this work if I updated the Theme?
Would it be possible for you to send me the functions.php like it should be for the site not to break? I will upload this to the site and then update. I can then add the custom code using Code Snippets plugin.
Dear @gcl,
We are pleased to inform you that we have successfully applied your custom PHP codes on our local sites. Following the recent updates to the XStore theme and XStore Core plugin, everything is functioning smoothly without any complications.
To ensure the stability of your live website, we recommend setting up a staging site. This will allow you to safely update and test new changes without affecting the live environment. Once you have verified that the updates perform as expected on the staging site, you can confidently apply them to your live site.
Thank you for your attention to this matter. Should you have any questions or require further assistance, please do not hesitate to contact us.
Best Regards,
The 8Theme Team
Thank you
If you need anything else, please let us know.
Best Regards,
The 8Theme Team
The issue related to '‘Promo text cannot be removed from the header builder’' has been successfully resolved, and the topic is now closed for further responses