Esclusione Prodotti da cartsearch.... per kolasim... non funziona più....
Author: Stefano L.Ciao @KolAsim, dopo l'ultimo aggiornamento di WS5, il tuo script per nascondere i prodotti dal CartSearch non funziona più... ho provato a cambiare qualche riferimento degli oggetti all'interno dello script ma non sono riuscito a farlo funzionare...
questo il post della volta scorsa: https://helpcenter.websitex5.com/en/post/264856#comment10
GLI ARTICOLI CHE CONTENGONO * NEL NOME DELL' ARTICOLO SONO SEMPRE VISIBILI...
Questo è lo script che funzionava prima dell'aggiornamento:
<script>
$(document).ready(function () {//K>;
/** --- esclusione prodotti in cartsearch x WSx5 by KolAsim (21-5-2024) ---**/
styleK = '<style>#preloaderK {position:fixed;width:100%;height:100%;background-color:rgba(0,0,0,0.3);'+
'display:flex;justify-content:center;align-items:center;z-index:1000000;}'+
'#loaderK {border: 10px double LimeGreen;border-top: 10px double white;border-bottom-color:red;'+
'border-radius:50%;width:100px;height:100px;animation:spin 1s linear infinite;}'+
'@keyframes spin {0% { transform: rotate(0deg); }100% { transform: rotate(360deg); }}</style>';
preloaderK = '<div id="preloaderK"><div id="loaderK"></div></div>';
$("head").append(styleK);
$("body").prepend(preloaderK);
escludeK();
setTimeout(function(){ //K0>; // x eventuale chiusura supplementare preload a quella di avvio;
$("#preloaderK").fadeOut(500);
escludeK();
}, 3000); //K0<<;
});//K<<;
//--------f K1---------
window.onload = (event) => {//K1>;
escludeK()
chiudiPreloadK()
};//K1<<;
//--------f K2---------
function chiudiPreloadK(){//K2>;
setTimeout(function(){ //K3>;
$("#preloaderK").fadeOut(500)
}, 500); //K3<<;
} //K2<<;
//--------f K3---------
window.navigation.addEventListener("navigate", e => {//K3>;
$("#im-products").fadeOut("slow");
setTimeout(function(){ //K4>;
escludeK()
}, 1000); //K4<<;
});//K3<<;
//--------f K5---------
function escludeK(){//K5>;
/**K**/ chiaveK="*"; // =======etichetta identificativa per esclusione prodotto dalla lista====;
objectK =$( ".im-products-name" );
productK=[];
K =$( objectK ); kk=[];
for(var i = 0, TotK = K.length; i < TotK; i++){ //K6>;
kk[i] = $(K[i]).text(); if(kk[i].indexOf(chiaveK) != -1 ) {
$(K[i]).parent().hide()
}
} //K6<<;
$("#im-products").fadeIn("slow");
}//K5<<; escludeK();
</script>
Author
Scusami, il link della pagina è qui
Author
...anche lo script dell'iframe per l'aggiunta dell'intestazione e del piè di pagina, sempre nella pagina cartsearch non funziona più SU MOBILE...
Riporto lo script:
<script>
$(document).ready(function () {//K>;
/** -- iframe dinamico[267338] by KolAsim --**/
setTimeout(function(){ //K1>;
divIframeK='<div id="posizioneK" style="position:relative;width:1px;height:1px;"></div><br>'+
'<div id="divIframeK" style="position:relative;width:100%;height:600px;float:left"><div>';
$("main").append(divIframeK);
iframeK1='<iframe id="iframeK1" style="position:absolute;z-index:100;width:100%;height:280px;padding-top:35px;" src="../intestazione-cartsearch.html"></iframe>';
iframeK2='<iframe id="iframeK2" style="position:absolute;z-index:100;width:100%;height:100%;" src="../pie-di-pagina-cartsearch.html"></iframe>';
$("#imHeader").append(iframeK1);
$("#divIframeK").html(iframeK2);
$("#imContent").css("padding-top","280px");
$("#iframeK1, #iframeK2").on("load", function() {//K2>;
$("#iframeK1").contents().find("head").append('<style>#cookiescript_injected_wrapper,#cookiescript_badge,#chat-widget-container{display:none !important}</style>');
$("#iframeK2").contents().find("head").append('<style>#cookiescript_injected_wrapper,#cookiescript_badge,#chat-widget-container{display:none !important}</style>');
$("#iframeK1, #iframeK2").contents().find("body").append('<base target="_parent" />');
});//K2<<;
}, 3000); //K1<<;
});//K<<;
</script>
<script>
/** -- iframe elastico[267338] by KolAsim --**/
$(document).ready(function () {//K>;
setTimeout(function(){ //K1>;
iframeElasticoK();
}, 4000); //K1<<;
});//K<<;
window.onresize = function(){//K2>;
iframeElasticoK()
};//K2<<;
function iframeElasticoK(){//K3>;
hK =$('#iframeK2').contents().find("#imPage").height() ;
hK = hK + 50;
$("#divIframeK, #iframeK2").css("height", hK)
};//K3<<;
/** -- iframe elastico by KolAsim - END--**/
</script>
Che casino!
Author
che casino perchè Incomedia ogni volta che rilascia aggiornamenti (per altro a cose inutili, al posto di migliorare bug, implementare e arricchire...) va tutto fuori posto.
… per il primo codice di esclusione prodotti, correggi la variabile objectK che trovi in "K5>" in così:
objectK =$( ".im-cc-products-name" )
... nel ciclo/funzione "for" in "K>6" correggi questa stringa: $(K[i]).parent().hide()
... in così:
$(K[i]).parent().parent().parent().hide();
.
ciao
.
... per il secondo codice per iframe-dinamico+iframe_elastico forse io non ho capito; ... a me pare che funzioni, ...per esempio da questa pagina e cliccando su TUTTI I PRODOTTI mi si apre cartsearch con i due IFRAME:
https://www.cyclingpropassion.it/negozio-smart-tools-ciclismo.php
.
ciao
.
Author
Il nascondi articolo funziona alla grande... il secondo sia con safari, mozzilla e chrome lo visualizzo così:
link: https://www.cyclingpropassion.it/cartsearch/index.html
... putroppo non posso decifrare...
... sul mio PC, sino alla minima risoluzione di 320px(!), funziona sempre correttamente con EDGE, CHROME e FIREFOX, ed anche correttamente sul mio SmartPhone-Android-Chrome...
...
ciao
.
Author
strano... ma vedi correttamente la pagina del cartsearch o parli delle altre pagine dello shop?
.. si sì, ... cartsearch ... che è la destinazione da TUTTI I PRODOTTI...
... controllato su tutti i miei dispositivi, i(!) esclusi...
.
Author
anche eliminando tutti gli script il cartsearch da mobile non si vede più.... rotella che gira all'infinito. boh
... se non funziona anche senza codici EXTRA, potrebbe dipendere proprio da quei dispositivi i(!)...
... poi mi pare che ci sia qualche problema con l'ultimo aggiornamento in cartsearch, già sotto osservazione, ed in fase di sistemazione, mi pare sugli allineamenti...
.
Author
probabilemte con dispositivi i...... ci sono problemi... + problemi ws.... ok
... OK ... ciao ...
.
Author
per la cronaca era merito dell'aggiornamento IOS . Grazie per il tuo supporto Kol!
Author
una cosa che non fa su mobile è fare il refresh di visualizzazione quando selezioni i filtri nelle categorie: gli articoli nascosti restano visibili...
... prova con l'aggiungere questa combinazione:
<script>
$(document).ready(function () {//K>;
/* immagine x cartsearch-sidebar-chiusura + reload x Wx5 by KolAsim */
setTimeout(function(){//K1>;
stylecartsearchK = '<style>.to-close-sidebar{background:'+
'url(https://thumbs.dreamstime.com/t/click-here-button-click-here-computer-generated-web-button-icon-pure-white-background-119140063.jpg)'+
' no-repeat center; background-size:cover;cursor:pointer}</style>';
$("head").append(stylecartsearchK)
$(".to-close-sidebar").click(function(){//K2>;
location.reload();
});//K2<<;
}, 3000); //K1<<;
});//K<<;
</script>
.
Author
TOPPPP! Funziona... ho solo sostituito l'immagine del bottone Click Here con un immagine .png vuota perchè si vedeva nella tendina delle categorie...
... ho controllato ... OK ... ha funzionato ...
.
... la motivazione per l'immagine risale da qui:
https://helpcenter.websitex5.com/en/post/265482
.
Author
Ok chiaro, bella l'idea del pulsante!
Author
Altra domanda, è possibile non far visualizzare una categoria specifica (identificata con *) nella tendina del filtro? Ad esempio una categoria chiamata "Speciali *" ?
Chiedo perchè nell'utilizzo con mobile, avendo il traduttore automatico impostato su una lingua differente dall'originale, esempio Inglese, utilizzando il filtro rimangono visibili i prodotti nascosti con nome*, li nasconde solo facendo il refresh manuale della pagina..
Author
Mi correggo, quel difetto lo fa solamente con lo script del testo che mi hai indicato nel post precedente... ma con l'immagine funziona anche col traduttore... userò quindi l'immagine ;-)
... non so del traduttore, ... ma ho controllato adesso sul mio cellulare e l'esclusione ha funzionato...
Altra domanda, è possibile non far visualizzare una categoria specifica (identificata con *) nella tendina del filtro? Ad esempio una categoria chiamata "Speciali *" ?
... ... ...
... se ti interessa, ... sì ...
.
ciao
.
Author
Potrebbe sempre essere utile....
... OK ...
<script>
$(document).ready(function () {//K>;
/** -- nasconde filtro cartsearch x WSx5 - by KolAsim -- **/
setTimeout(function(){//K1>;
nascondefiltroK = $(".k-bot");
for(var i = 0, TotK = nascondefiltroK.length; i < TotK; i++){//K2>;
if($(nascondefiltroK[i]).find(".k-bot").text().indexOf("*")){//K3>;
$(nascondefiltroK[i]).hide()
};//K3<<;
};//K2<<;
}, 3000);//K1<<;
});//K<<;
</script>
.
Author
Una BOOMBA! Grazie! "Stiamo" (STAI) stravolgendo il CartSearch
... grazie anche a te per la ricerca di cose diverse non comuni ...