How to remove classes added to Woocommerce li.product?
Woocommerce adds the assigned product categories and attributes as custom classes to li.product
<li class="post-120 product type-product status-publish has-post-thumbnail
category1 category2 category3 category4 pa_one pa_two...">
We have assigned quite a lot of categories to each product and it slows down the site. Is there a way to remove those additional classes?
php wordpress woocommerce taxonomy-terms
add a comment |
Woocommerce adds the assigned product categories and attributes as custom classes to li.product
<li class="post-120 product type-product status-publish has-post-thumbnail
category1 category2 category3 category4 pa_one pa_two...">
We have assigned quite a lot of categories to each product and it slows down the site. Is there a way to remove those additional classes?
php wordpress woocommerce taxonomy-terms
and how does several classes slow down the site? did you make any perfomance tests?
– Samvel Aleqsanyan
Jan 31 '18 at 16:33
@SamvelAleqsanyan yes, it sounds weird but we are talking about hundreds of classes from assigned categories (hierarchies) and attributes added to each product. I changed <li <?php //post_class(); ?> class="product"> in content-product.php. That did the trick and immediately reduced loading times by about 5 seconds.
– gerryb
Feb 1 '18 at 13:39
add a comment |
Woocommerce adds the assigned product categories and attributes as custom classes to li.product
<li class="post-120 product type-product status-publish has-post-thumbnail
category1 category2 category3 category4 pa_one pa_two...">
We have assigned quite a lot of categories to each product and it slows down the site. Is there a way to remove those additional classes?
php wordpress woocommerce taxonomy-terms
Woocommerce adds the assigned product categories and attributes as custom classes to li.product
<li class="post-120 product type-product status-publish has-post-thumbnail
category1 category2 category3 category4 pa_one pa_two...">
We have assigned quite a lot of categories to each product and it slows down the site. Is there a way to remove those additional classes?
php wordpress woocommerce taxonomy-terms
php wordpress woocommerce taxonomy-terms
edited Feb 1 '18 at 13:42
asked Jan 31 '18 at 16:05
gerryb
33
33
and how does several classes slow down the site? did you make any perfomance tests?
– Samvel Aleqsanyan
Jan 31 '18 at 16:33
@SamvelAleqsanyan yes, it sounds weird but we are talking about hundreds of classes from assigned categories (hierarchies) and attributes added to each product. I changed <li <?php //post_class(); ?> class="product"> in content-product.php. That did the trick and immediately reduced loading times by about 5 seconds.
– gerryb
Feb 1 '18 at 13:39
add a comment |
and how does several classes slow down the site? did you make any perfomance tests?
– Samvel Aleqsanyan
Jan 31 '18 at 16:33
@SamvelAleqsanyan yes, it sounds weird but we are talking about hundreds of classes from assigned categories (hierarchies) and attributes added to each product. I changed <li <?php //post_class(); ?> class="product"> in content-product.php. That did the trick and immediately reduced loading times by about 5 seconds.
– gerryb
Feb 1 '18 at 13:39
and how does several classes slow down the site? did you make any perfomance tests?
– Samvel Aleqsanyan
Jan 31 '18 at 16:33
and how does several classes slow down the site? did you make any perfomance tests?
– Samvel Aleqsanyan
Jan 31 '18 at 16:33
@SamvelAleqsanyan yes, it sounds weird but we are talking about hundreds of classes from assigned categories (hierarchies) and attributes added to each product. I changed <li <?php //post_class(); ?> class="product"> in content-product.php. That did the trick and immediately reduced loading times by about 5 seconds.
– gerryb
Feb 1 '18 at 13:39
@SamvelAleqsanyan yes, it sounds weird but we are talking about hundreds of classes from assigned categories (hierarchies) and attributes added to each product. I changed <li <?php //post_class(); ?> class="product"> in content-product.php. That did the trick and immediately reduced loading times by about 5 seconds.
– gerryb
Feb 1 '18 at 13:39
add a comment |
2 Answers
2
active
oldest
votes
If you know php, You can edit the woocoommerce php template file to remove those additional classes.
If you opened the file, there is a php variable to be added additional classes and it is a array.
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
add a comment |
I would suggest applying a filter to the post_class function instead of editing the template as woocommerce updates these regularly and can be a pain to keep on top of them. To do this you could check to see if you in the product loop or if a product exists to also remove from the product page like this :
add_filter( 'post_class', function($classes){
$product = wc_get_product();
return ($product) ? array('product' 'or-any-class-you-want') : $classes; } , 9999 );
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f48546487%2fhow-to-remove-classes-added-to-woocommerce-li-product%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
If you know php, You can edit the woocoommerce php template file to remove those additional classes.
If you opened the file, there is a php variable to be added additional classes and it is a array.
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
add a comment |
If you know php, You can edit the woocoommerce php template file to remove those additional classes.
If you opened the file, there is a php variable to be added additional classes and it is a array.
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
add a comment |
If you know php, You can edit the woocoommerce php template file to remove those additional classes.
If you opened the file, there is a php variable to be added additional classes and it is a array.
If you know php, You can edit the woocoommerce php template file to remove those additional classes.
If you opened the file, there is a php variable to be added additional classes and it is a array.
answered Jan 31 '18 at 17:25
Jin Huang
161
161
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
add a comment |
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
You should provide the name of (and where to find) the file in question.
– CFP Support
Jan 31 '18 at 17:30
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
content-product.php
– Jin Huang
Jan 31 '18 at 17:45
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
@JinHuang saw your comment too late but you are right, content-product.php is where we changed this line <li <?php //post_class(); ?> class="product"> and that solved it.
– gerryb
Feb 1 '18 at 13:41
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
Ping me anytime if you need me :)
– Jin Huang
Feb 1 '18 at 17:53
add a comment |
I would suggest applying a filter to the post_class function instead of editing the template as woocommerce updates these regularly and can be a pain to keep on top of them. To do this you could check to see if you in the product loop or if a product exists to also remove from the product page like this :
add_filter( 'post_class', function($classes){
$product = wc_get_product();
return ($product) ? array('product' 'or-any-class-you-want') : $classes; } , 9999 );
add a comment |
I would suggest applying a filter to the post_class function instead of editing the template as woocommerce updates these regularly and can be a pain to keep on top of them. To do this you could check to see if you in the product loop or if a product exists to also remove from the product page like this :
add_filter( 'post_class', function($classes){
$product = wc_get_product();
return ($product) ? array('product' 'or-any-class-you-want') : $classes; } , 9999 );
add a comment |
I would suggest applying a filter to the post_class function instead of editing the template as woocommerce updates these regularly and can be a pain to keep on top of them. To do this you could check to see if you in the product loop or if a product exists to also remove from the product page like this :
add_filter( 'post_class', function($classes){
$product = wc_get_product();
return ($product) ? array('product' 'or-any-class-you-want') : $classes; } , 9999 );
I would suggest applying a filter to the post_class function instead of editing the template as woocommerce updates these regularly and can be a pain to keep on top of them. To do this you could check to see if you in the product loop or if a product exists to also remove from the product page like this :
add_filter( 'post_class', function($classes){
$product = wc_get_product();
return ($product) ? array('product' 'or-any-class-you-want') : $classes; } , 9999 );
answered Nov 21 '18 at 13:56
Katie
15114
15114
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f48546487%2fhow-to-remove-classes-added-to-woocommerce-li-product%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
and how does several classes slow down the site? did you make any perfomance tests?
– Samvel Aleqsanyan
Jan 31 '18 at 16:33
@SamvelAleqsanyan yes, it sounds weird but we are talking about hundreds of classes from assigned categories (hierarchies) and attributes added to each product. I changed <li <?php //post_class(); ?> class="product"> in content-product.php. That did the trick and immediately reduced loading times by about 5 seconds.
– gerryb
Feb 1 '18 at 13:39