לאור התקנות החדשות לקיים אירועים עם 250 איש, ורישום המשתתפים, כדאי שמישהו יפתח איזה פלטפורמה שתבצע רישום של המשתמשים, ואפשר למכור את זה לבעלי אולמות.
זה בטח יקרה, השאלה מי יפתח ראשון.
אני מניח שהדרך המומלצת תהיה עם זיהוי קולי, שלא כל נכנס ילחץ על המקשים ויהיה מקור הדבקה..., לי זה קצת מורכב להתממשק עם המערכות האלו, אבל מי שיודע זה לכאורה מוצר מתבקש כעת. מחר.
אולי יש כבר כזה דבר. לא ידוע לי.
אבי 203
-
זה הזמן לפתח תוכנה לרישום משתתפים באירועים עם הקלדה קולית -
פלטפורמה לתרומות עבור ספר תורה@יהודי-טוב יש משהו עם בסיס למה שאתה מחפש, אפשר להשלים את זה.
https://www.sodot-hakabala.co.il/blank-18 -
פתיחת קישור בחלון חדש. פתרון לcorvidואייי תודה. איזה נהדר!!
אכתוב על זה בפורום שלהם, הרבה משתמשים בעולם מחפשים פתרון לבעיה הזו. -
פתיחת קישור בחלון חדש. פתרון לcorvidבספריית corvid יש שם מגבלה שעד היום הם לא פתרו אותה, אין אפשרות להגדיר בקוד פתיחת קישורים מקומיים כלומר מתוך עמודי האתר, בכרטיסייה חדשה. הניווט בין דפי האתר הוא רק באותה הכרטיסייה והחלון.
לפעמים זה ממש נדרש, אז חשבתי על פתרון, הוא עובד טוב רק הכתובת שמופנית לא מדוייקת, לא מבין כ"כ ב HTML .באתר הוספתי קוד כזה
export function button114_click(event,$item) { let url = "www.malaya.co.il/items?mkt=" + $item('#mkt').text $w("#html4").postMessage(url) }
והוספתי רכיב HTML שמקבל את המידע הזה ופותח את הלינק כך:
<!doctype html> <html> <head> <script type="text/javascript"> function init () { window.onmessage = (event) => { if (event.data) { insertMessage(event.data); } } } function insertMessage(msg) { window.open(msg, '_blank'); } </script> </head> <body onload="init();" > </body> </html>
בכל אופן זה אכן פותח לי את הכתובת בכרטיסייה חדשה. אבל זה מוסיף עוד דברים לכתובת כך:
https://www-malaya-co-il.filesusr.com/html/www.malaya.co.il/items?mkt=02301כל זה נוסף מיותר: https://www-malaya-co-il.filesusr.com/html/
ואז כמובן לא נפתח הלינק. אשמח לעזרה. -
האם זה תקין לבנות עמודי מוצר עם פרמטר בלבד.כחלק מנסיונותי להאיץ טעינת אתר, בניתי את דפי המוצר בחנות, לא בתור דף דינמי עם URL שונה לכל מוצר, אלא כתובת אחת ורק הוספתי פרמטר, ובכל שינוי פרמטר אני משנה את תוכן הדף ממידע שכבר נטען בפעם הראשונה ונשמר במשתנה. אני די מרוצה מהתוצאה וממהירות הדף.
האם זה נכון לבנות כך. דוגמא של דף, הניווט בין מוצר למוצר לטעמי מהיר עכ"פ סביר.
https://www.malaya.co.il/items?mkt=420373אני חושש אולי זה יכול להזיק ל-SEO וכדו' הצלחתי למצוא בספרייה של corvid דרך לשנות את הכותרת, אבל לא את התמונה ויתר הנתונים בשביל שיתוף.
יש ב corvid אפשרות להתקין קובץ HTML על הדף, אבל הנתונים נמצאים במשתנה של javascript ולא יודע אם יש אפשרות לחבר משם.
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@yossiz ואווו איזה מבריק!!!! תודדדה
צדקת אני עכשיו גם מבין למה זה בעייתי.
כי בעצם בפעם הראשונה הוא מפרק את זה ל data3.items
אח"כ בפעם השנייה כבר זה מפורק והוא מנסה לשוא לפרק את זה שוב.
אז העברתי את זה לטעינה הראשונה. תודדדהאיבדתי את הריכוז בכולל היום, בגלל הדבר הזה...
אגב מה שעשיתי זה הדרך המקובלת לטעון דפי מוצרים, או שיש דרכים יותר נכונות ופשוטות, ומהירות?.
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@yossiz אמר בפונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.:
length
תודה רבה. גם על ה length, לא ידעתי שהיא מחשבת גם את זה.
הסבר:
כחלק מנסיונותי להאיץ את טעינת הדף, בניתי שבטעינת הדף מקבל 9 פריטים ולאחר מכן השרת שולח את הכל ושומר במשתנה, ואז כשגוללים לסוף הפריטים, אני מביא עוד תשע פריטים נוספים ומחבר אותם לקייימים. זה עובד נהדר, רק שהוא עוצר בפעם השנייה כנראה שזה מביא לו שוב את אותם ה9.
אני חישבתי את זה שבכל הפעלה של הפונקצייה אני מוסיף על משתנה sac +9 כך שכל פעם יתקדם ל9 הבאים, משהו בדרך אני טועה.
ושוב תודה רבהה// עם טעינת הדף הראשונה let data2; let data3; $w.onReady(async function () { // מקבל תשע פריטים ראשונים data3 = await wixData.query("muzarim") .descending("seder") // .skip(10) .limit(9) .find(); $w('#repeater10').data = data3.items; //פונקציית שיבוץ המידע ברפיטרים repiter() $w('#container').show() // מפעיל פונקציית דרך צד שרת שמביא לי את כל הפריטים ושומר במשתנה data2 data2 = await getTeamData2() }) // כאשר גוללים את הדף ומגיע לתחתית הפריטים ומתגלה אלמנט שנמצא בסוף, אני מנסה להוסיף בכל הפעלה של הפונקצייה הזו, עוד 9 פריטים הבאים, ולחבר אותם לקיימים. let sac; export async function box108_viewportEnter(event) { $w('#html1').show() console.log(sac); data3 = data3.items if (sac === undefined) { sac = 9 } console.log(sac); const count = data2.length; console.log(count); let sicum= count-sac if (sicum < 0) { $w('#sof').show() $w('#html1').hide() }else{ let data5 = [...data2]; let data8 = data5.splice(sac,9) data3 = [...data3 ,...data8 ]; console.log(data3); console.log(data5); console.log(data2); console.log(data8); $w("#repeater10").data = data3 sac = sac + 9 $w('#html1').hide() } }
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@yossiz אמר בפונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.:
const muzarim0 = [...data2]; muzarim0.splice(0, 10)
כבר כמה שעות על זה. איפה אני טועה??? תמיד בשלב השני, כלומר הוא טוען את ה9 השניים, נטען בסך הכל 18 ואז הוא עוצר. נסיתי הכל..
let sac; let data3 // let data3; export async function box108_viewportEnter(event) { $w('#html1').show() console.log(sac); data2 = data2.items if (sac === undefined) { sac=9 data3 = await getTeamData2() } console.log(sac); const count = data3.push(); console.log(count); let sicum= count-sac if (sicum < 0) { $w('#sof').show() $w('#html1').hide() }else{ let data5 = [...data3]; data5 = data5.splice(sac,9) data2 = [...data2 ,...data5 ]; console.log(data3); console.log(data5); console.log(data2); // concat $w("#repeater10").data = data2 sac = sac + 9 $w('#html1').hide() } //Add your code for this event here: }
-
עדכון מידע על כמות צפייה, במסד נתונים שמוגדר עשכון רק בהרשאת מנהליםיש לי מסד נתונים בפלטפורמת corvid שמכיל את כל מוצרי החנות, אני רוצה לאסוף מידע על צפייה במוצר, והכנסות לסל וכדו', והכי נח שזה ישמר באותו מסד נתונים עם המוצר, אלא שהמסד נתונים מוגדר כמובן בהרשאה של מנהל בלבד.
יש דרך לעקוף את ההרשאה, למשל דרך השרת, כלומר שהכניסה של המשתמש לעמוד תשלח הוראה לשרת להוסיף ערך מסויים או שזה לעולם יוגדר עדכון של משתמש שאינו מנהל.
תודה. -
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@יוסף-בן-שמעון @yossiz @WWW תודה רבה.
הצלחתי להשיג את מה שאני צריך מתוך כל מה שכתבתם. תודה רבה. -
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@yossiz אם אני מבין נכון, זה מגדיר מעתה את המשתנה רק בעשר פריטים, המשמעות של זה שזה מוחק לי את השאר, לשימוש עתידי, יש אפשרות רק הצגה של 10 מבלי למחוק את השאר, או שאני לא מבין נכון. כי בדיקה שעשיתי עכשיו זה הגדיר לי את המשתנה לכל הדף מעתה רק ל10 פריטים הללו.
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@יוסף-בן-שמעון עזר לי נהדר.
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.@yossiz הבנתי כלומר דבר כזה מוחק לי עשרה פריטים ומביא את השאר.
כלומר זה מוחק לי מהמשתנה בדף, שבשימושים הבאים הוא כבר יהיה פחות 10.const muzarim0= data2.splice(10); $w('#repeater1').data = muzarim0;
תודה זה גם שימושי וחשוב. אז לא הסברתי טוב, אני לא יודע איך לעשות שיציג רק עשר ראשונים למשל מבלי למחוק. אשמח לדוגמא איך מציגים רק חלק תודה
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.א. אין לי סיבה להוריד אחרי הפילטר, רק לא הצלחתי את האופצייה של להציג רק 10 ראשונים. אני מבין שאופציית ב. זה אפשרות שנייה יש אפשרות נוספת להשאיר רק עשר.
-
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.ואוווו ממש תודה.
אולי תשלים לי את השימוש בפילטר הזה, איך מגבילים את התוצאות?
אם אני רוצה לקחת למשל רק עשר פריטים.
כמו הפונקציית litim? -
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.צודק יש כמה שאין להם!
אמחק אותם. ואראה. תודה רבההה. -
פונקציית includes מחזירה לי שגיאה, פעם כן פעם לא.אני מנסה לעשות חיפוש על נתונים ששמרתי אותם במשתנה בטעינת הדף, כך:
let data2; let queryResults; $w.onReady(async function () { queryResults = await wixData.query("muzarim") .descending("seder") .limit(10) .find(); $w('#repeater1').data = queryResults.items; data2 = await getTeamData();
כלומר אני ממלא 10 פרטים לבנתיים, ומפעיל פונקצייה בשרת ששולחת לבנתיים את הכל ושומר במשתנה, ואני מנסה שכאשר מבצעים סינונים זה יסנן אם מכיל חלק מהמחרוזת, למשל אם אני מחפש מקט 123 יביא לי גם 12345. זה הקוד שכתבתי:
console.log(data2); const data9 = data2.filter(did => did.mkt.includes($w('#mktinput').value,)); $w('#repeater1').data = data9;
זה מדפיס לי את המשתנה עם כל הפריטים (מצורף צילום), לכאורה מראה שיש מידע, וזה גם עבד, פתאום לא עובד, ומחזיר לי את השגיאה הזו, זה קרה לי כמה פעמים וחזר מה יכול להיות? אולי זה לא כתוב נכון?
תודה. @dovid אשמח לעזרה
-
שיפור מהירות אתר, גישה נכונה לכל הפריטים/מוצרים.@dovid תודה. הספרייה של corvid מוגבלת כך שתמיד אני נעזר בספרייה הכללית, אלא שלא לפי הסדר, רק למה שאני נזקק, לא תמיד יש את הזמן ללמידה לפי הסדר, אבל מקבל את המלצתך, וקורא יותר בר זיק למשל..
בהקשר לשרשור הגעתי לדרך שממש משפרת את המהירות, אלא היות שהזכרון המקומי לא גדול, אז אני רוצה לצמצם את התוצאות רק להכרחי, בשלב של יצירת התוצאות מחדש MAP משהו לא תקין לי. אשמח לעזרה, בזה ובכללי על המבנה.
let queryResults; let queryResults3; let queryResults4; $w.onReady(async function () { queryResults = await wixData.query("muzarim") .descending("seder") .limit(10) .find(); $w('#repeater1').data = queryResults.items; // await repeater1_itemReady() console.log("1"); loadRemaining(); }); // var dataa = []; async function loadRemaining() { queryResults3 = await wixData.query("muzarim") .descending("seder") .skip(10) .find(); let data = $w('#repeater1').data; let data3 = await data.concat(queryResults3.items); console.log(data3); return data3.items.map((item) => { return { "_id": item._id, "sem": item.sem, "mkt": item.mkt, "imeg": item.imeg, "mehir": item.mehir, "link1": item["link-muzarim-sem"], "link2":item["link-muzarim-editor-_id"] }; } ); var myJSON = JSON.stringify(data3) memory.setItem("data3", myJSON) } export function repeater1_itemReady($item, itemData, index) { $item('#mehir').text = itemData.mehir; $item('#sem').text = itemData.sem; $item('#mkt').text = itemData.mkt; $item('#image9').src = itemData.imeg; $item('#button114').link = itemData["link-muzarim-sem"]; $item('#button102').link = itemData["link-muzarim-editor-_id"]; }
דבר נוסף אם אפשר לשאול, כשאני מושך בכל פעם את המידע, אני מבין שהסינון הוא כבר בצורה שונה והוא עובד לי טוב, אבל אני מרגיש כבול איתו, יכול להוסיף עוד תת מסנן, אבל זה לא מפורק לי כמו כל query, למשל הגבלת פריטים litim איך מוסיפים את זה? לשלב שני סינונים משני שדות קלט, (כלומר אם עושים שני חיפושים, למשל מגדר, וח"כ סוג, אני בד"כ עושה את זה 'אם השדה הזה ריק או כו' ומפעיל על שניהם את פונקציית הסינון) לא מצאתי הסברים על זה.
let key = event.key; if (key === "Enter") { let muzarim = memory.getItem("data3") var muzarim2 = JSON.parse(muzarim); const data = muzarim2.filter(d => d.mkt.includes($w('#mktinput').value)); $w('#repeater1').data = data; {
תודה בכל אופן.
-
נספח: האם גם לכם מתערבבות לאחרונה שיחות?גם לי זה קרה עם מספר מנוייד של בזק מנוייד לימות המשיח, חייגתי אליו דרך קו של סלקום והעביר לאדם פרטי...
-
שיפור מהירות אתר, גישה נכונה לכל הפריטים/מוצרים.אני מחפש דרכים לייעל את מהירות האתר.
אני ממש מנסה את הדברים עם 'שעון עצר' אבל הדרך ארוכה לכל נסיון ולא תמיד התוצאה ברורה, אשמח לתשובה ברורה.
יש לי חנות עם 40 מוצרים בערך. עד היום אני משתמש בשאילתה פשוטה עם סינון בכל עמוד קטגוריה, ואז משבץ את התוצאה ברפיטרים. ( Wix Corvid)
אני מנסה כמה דרכים לקצר את המהירות.-
בכניסה ראשונה לאתר שולח בקשה מצד לקוח לשרת להביא את כל הפריטים, ובשרת מבצע את השאילתה ומחזיר לדפדפן האם זה עדיף, או להשאיר את השאילתה רגיל. נשמע לי מיותר וכפול.
-
במקום לבקש בכל עמוד קטגוריה, את כל הפריטים עם סינון, אני שומר אותם בדפדפן (session או memory), ואז משבץ אותם. (עשיתי בדיקה, לקבל את memory השמור כבר, ולפרק אותו עם Json ולשבץ, לא ראיתי שזה ממהר את הטעינה. אולי אפילו להיפך.) (יש לזה גם מינוס שמוגבלת כמות הזיכרון, לבנתיים מספיק למה שיש)
3.במידה ועדיף בקשה אחת ולשמור אותה בדפדפן, אני מתקשה איך לסנן את המערך ששמור בזכרון. נסיתי דרך foritem ללא הצלחה. יתכן ולא כתבתי נכון. אני מצליח רק לסנן את הרפטרים עצמם, זה בהחלט מהיר מאוד ,אבל לא טוב בעמודי קטגוריות בסינון הראשוני, רק לתתי הסינונים אחרי שהכל כבר מופיע.
תודה
-