<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>&#8235;המכללה &#187; תגובות&#8236;</title>	<atom:link href="http://n2b.org/tag/%d7%aa%d7%92%d7%95%d7%91%d7%95%d7%aa/feed" rel="self" type="application/rss+xml" />
	<link>http://n2b.org</link>
	<description>&#8235;כי החיים זה לא מדע מדוייק&#8236;</description>	<lastBuildDate>Sun, 18 Jul 2010 11:30:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>&#8235;תגובות בעמוד ראשי, #3&#8236;</title>		<link>http://n2b.org/archives/680</link>
		<comments>http://n2b.org/archives/680#comments</comments>
		<pubDate>Thu, 12 Jun 2008 13:26:34 +0000</pubDate>
		<dc:creator>&#8235;~ניצן~&#8236;</dc:creator>				<category><![CDATA[וורדפרס]]></category>
		<category><![CDATA[עיצוב]]></category>
		<category><![CDATA[תגובות]]></category>
		<category><![CDATA[תוספים]]></category>
		<category><![CDATA[לייטבוקס]]></category>
		<category><![CDATA[האקים]]></category>

		<guid isPermaLink="false">http://n2b.org/?p=680</guid>
		<description><![CDATA[&#8235;בפוסט הקודם הדגמתי כיצד ניתן להשתמש בג'אווה סקריפט פשוט על מנת להציג את התגובות בתוך Div נסתר. כאמור, היה מדובר בפיתרון פשוט ללא כל אפקטים שעבור חלק מהערכות ייצר פיתרון מכוער למדי. לייטבוקס. לייטבוקס הוא ג'אווה סקריפט שמייצר שיכבת תוכן נוספת מעל לעמוד הבלוג. השימוש בפונקציה הזו הפך להיות די נפוץ בעיקר על מנת להציג [...]&#8236;]]></description>			<content:encoded><![CDATA[<div dir="rtl"><p>בפוסט הקודם הדגמתי כיצד ניתן להשתמש בג'אווה סקריפט פשוט על מנת להציג את התגובות בתוך Div נסתר. כאמור, היה מדובר בפיתרון פשוט ללא כל אפקטים שעבור חלק מהערכות ייצר פיתרון מכוער למדי.</p>
<p><a href='http://n2b.org/wp-content/uploads/2008/06/ibox.png' rel="lightbox[680]"><img src="http://n2b.org/wp-content/uploads/2008/06/ibox-300x194.png" alt="תגובות בחלונית iBox" title="ibox" width="300" height="194" class="alignnone size-medium wp-image-681" /></a><strong>לייטבוקס.</strong><br />
לייטבוקס הוא ג'אווה סקריפט שמייצר שיכבת תוכן נוספת מעל לעמוד הבלוג. השימוש בפונקציה הזו הפך להיות די נפוץ בעיקר על מנת להציג תמונות אבל ניתן בעזרתו להציג כמעט כל דבר כולל עמודים, אובייקטים נסתרים, סרטוני youtube וכן הלאה. </p>
<p>מבין עשרות הסקריפטים הקיימים לישומי לייטבוקס, אני מעדיף דווקא את iBox המציע גם תוסף לוורדפרס ומאפשר הטמעה קלה ופשוטה של הפונקציה הזו. </p>
<p><strong>הטמעה</strong><br />
הערה: מי שכבר ניסה להטמיע את הקוד בפוסט הקודם מומלץ שיסיר את הסקריפט הקודם. </p>
<p>ראשית, יש להוריד ולהתקין את התוסף של iBox <a href="http://labs.ibegin.com/ibox">מכאן</a><br />
לאחר ההתקנה וההפעלה, ממשיכים פחות או יותר כמו בפוסט הקודם – הטמעה של אובייקט נסתר בעמוד:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;div id=<span class="st0">&quot;comm-&lt;?php the_ID(); ?&gt;&quot;</span> style=<span class="st0">&quot;display: none; text-align:right&quot;</span>&gt; </div>
</li>
<li class="li1">
<div class="de1">&lt; ?php <span class="re0">$withcomments</span> = <span class="kw2">true</span>; comments_template<span class="br0">&#40;</span><span class="br0">&#41;</span>;?&gt; </div>
</li>
<li class="li1">
<div class="de1">&lt;/div&gt;</div>
</li>
</ol>
</div>
<p>וקריאה אליו ע&quot;י יצירת קישור שמפעיל את הלייטבוקס</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;a href=<span class="st0">&quot;#omm-&lt;?php the_ID(); ?&gt;&quot;</span> rel=”ibox”&gt;</div>
</li>
<li class="li1">
<div class="de1">הצג תגובות </div>
</li>
<li class="li1">
<div class="de1">&lt;/a&gt;</div>
</li>
</ol>
</div>
<p>זהו, מעכשיו בכל לחיצה על &quot;הצג תגובות&quot; יפתח לייטבוקס המציג את התגובות של הפוסט. האפקט פה הוא הרבה יותר מרשים מאשר אפקט הקפיצה של האלמנט המתחבא אבל ההערות נותרות בעינן – גם בשיטה הזו נטענות כל התגובות של כל הפוסטים אל תוך הדף וזה אומר שאם יש פוסטים עמוסים בתגובות זה יכול להאריך במיוחד את זמן הטעינה. </p>
<div id="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="nitzan@n2b.org" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Nitzan Brumer for תגובות בעמוד ראשי, #3" /><input type="hidden" name="currency_code" value="ILS" /><input type="hidden" name="amount" value="" /><input type="image" src="http://n2b.org/wp-content/plugins/buy-me-beer/icon_cafe.png" align="right" style="padding-left:10px;" alt="Buy me a coffee plase" title="Buy me a coffee plase" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=nitzan@n2b.org&amp;currency_code=ILS&amp;amount=&amp;return=&amp;item_name=Nitzan+Brumer+for+תגובות+בעמוד+ראשי,+#3" target="paypal">פוסטים טובים נכתבים עם שחר, כתיבה עם שחר מצריכה כוס קפה טובה. אפשר להסתכל על זה כהשקעה או כאמירת תודה. בבית הקפה פה ליד מוכרים כוס קפה ב 12 שקלים, או קפה ומאפה ב 21 שקלים. </a></div></div>]]></content:encoded>			<wfw:commentRss>http://n2b.org/archives/680/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>&#8235;תגובות בעמוד ראשי, #2&#8236;</title>		<link>http://n2b.org/archives/678</link>
		<comments>http://n2b.org/archives/678#comments</comments>
		<pubDate>Tue, 10 Jun 2008 12:34:37 +0000</pubDate>
		<dc:creator>&#8235;~ניצן~&#8236;</dc:creator>				<category><![CDATA[וורדפרס]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[עיצוב]]></category>
		<category><![CDATA[תגובות]]></category>
		<category><![CDATA[האקים]]></category>

		<guid isPermaLink="false">http://n2b.org/?p=678</guid>
		<description><![CDATA[&#8235;הפיתרון של הצגת תגובות בעזרת חלונית פופאפים הוא אומנם הפשוט ביותר כיוון שהוא פיתרון מובנה של וורדפרס, אבל לא כולם אוהבים פופאפים. בשורה התחתונה, זה עדיין מוציא את המשתמש מהעמוד מה גם שרוב המשתמשים פיתחו מיומנות בסגירה של חלונות קופצים. הפיתרון השני, הוא להציג את התגובות בתוך העמוד עצמו, זאת אפשר לעשות בעזרת שימוש ב [...]&#8236;]]></description>			<content:encoded><![CDATA[<div dir="rtl"><p>הפיתרון של הצגת תגובות בעזרת חלונית פופאפים הוא אומנם הפשוט ביותר כיוון שהוא פיתרון מובנה של וורדפרס, אבל לא כולם אוהבים פופאפים. בשורה התחתונה, זה עדיין מוציא את המשתמש מהעמוד מה גם שרוב המשתמשים פיתחו מיומנות בסגירה של חלונות קופצים. </p>
<p>הפיתרון השני, הוא להציג את התגובות בתוך העמוד עצמו, זאת אפשר לעשות בעזרת שימוש ב Div נסתר. עבור כל אובייקט ניתן להגדיר את המאפיין העיצובי: Display:none. המאפיין הזה אומר שאין להציג את האובייקט הרלוונטי. בצורה שכזו, ניתן לשלב תוכן בתוך הדף מבלי שהוא יוצג למשתמש (התוכן כן נטען, אבל לא מוצג). על מנת להציג את התוכן, נזדקק לג'אווה סקריפט שמשנה את מאפיין ה Display. וסוג של &quot;מתג&quot; שידליק ויכבה את האובייקט.</p>
<p><strong>הסקריפט</strong><br />
הסקריפט הוא יחסית פשוט – הוא מקבל כפרמטר את שם האובייקט, בודק מה מצב התצוגה שלו ומשנה אותו למצב ההופכי (מגלוי לנסתר ולהפך).</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;script language=<span class="st0">&quot;javascript&quot;</span>&gt; </div>
</li>
<li class="li1">
<div class="de1">&lt;!&#8211; </div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">var</span> displayDiv = <span class="st0">'none'</span>; </div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> showhide<span class="br0">&#40;</span>object_id<span class="br0">&#41;</span> <span class="br0">&#123;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>displayDiv == <span class="st0">'block'</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; displayDiv = <span class="st0">'none'</span>; </div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">else</span> <span class="br0">&#123;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; displayDiv = <span class="st0">'block'</span>; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>document.<span class="me1">all</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="co1">//IS IE 4 or 5 (or 6 beta) </span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">eval</span><span class="br0">&#40;</span> <span class="st0">&quot;document.all.&quot;</span> + object_id + <span class="st0">&quot;.style.display = displayDiv&quot;</span><span class="br0">&#41;</span>; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>document.<span class="me1">layers</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="co1">//IS NETSCAPE 4 or below </span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.<span class="me1">layers</span><span class="br0">&#91;</span>object_id<span class="br0">&#93;</span>.<span class="me1">display</span> = displayDiv; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> </div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>document.<span class="me1">getElementById</span> &amp;&amp;!document.<span class="me1">all</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; hza = document.<span class="me1">getElementById</span><span class="br0">&#40;</span>object_id<span class="br0">&#41;</span>; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; hza.<span class="me1">style</span>.<span class="me1">display</span> = displayDiv; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> </div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> </div>
</li>
<li class="li2">
<div class="de2"><span class="co1">//&#8211;&gt; </span></div>
</li>
<li class="li1">
<div class="de1">&lt;/script&gt; </div>
</li>
</ol>
</div>
<p><strong>הכנסת התגובות לעמוד.</strong><br />
כדי לקרוא לתגובות של פוסט מתוך עמוד צריך לקרוא להן מתוך הלופ שמציג את הפוסט, זה נעשה בצורה הבאה:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt; ?php <span class="re0">$withcomments</span> = <span class="kw2">true</span>; comments_template<span class="br0">&#40;</span><span class="br0">&#41;</span>;?&gt;</div>
</li>
</ol>
</div>
<p>היות ומדובר בעמוד הראשי שבו לא אמורות להופיע תגובות, חובה להגדיר את המשתנה הבוליאני  withcomments ומבלעדיו התגובות לא יוצגו בעמוד הראשי.</p>
<p><strong>עטיפה</strong><br />
על מנת להפעיל אובייקט נעטוף אותו בצורה הבאה:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;div id=&quot;divName&quot; style=&quot;display: none; text-align:right&quot;&gt;
</div>
</li>
<li class="li1">
<div class="de1">&lt; ?php $withcomments = true; comments_template();?&gt;
</div>
</li>
<li class="li1">
<div class="de1">&lt;/div&gt; </div>
</li>
</ol>
</div>
<p>והטריגר יוטמע בצורה הבאה:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;a href=&quot;#divName&quot; onclick=&quot;showhide('divName');&quot;&gt;הצג תגובות&lt;/a&gt;</div>
</li>
</ol>
</div>
<p>השילוב הזה אמור להציג בעמוד כיתוב &quot;הצג תגובות&quot; שבאירוע לחיצה יציג / יסתיר את התגובות.<br />
איך זה עובד?<br />
האירוע onClick אומר לדפדפן מה לעשות באירוע לחיצה. הקריאה href עם שם האובייקט אומרת למעשה לעמוד לקפוץ אל האזור שבו מוצג האובייקט. את האובייקט והטריגר ניתן להעמיד בכל מקום בדף והם יוצגו בהתאם למיקום בו הם הועמדו, הם לא חייבים להיות צמודים.</p>
<p>הפונקציה שאמורה להציג את התגובות משתמשת ב  getElementById על מנת לקבל ולקבע את המאפיינים של האובייקט.<br />
עבור כל Div בעמוד ניתן להגדיר מזהה בצורה הבאה:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;div id=”thisId”&gt;&lt;/div&gt;</div>
</li>
</ol>
</div>
<p>היות ויש מספר פוסטים בעמוד עבורם רוצים להציג את התגובות חובה לייצר עבור כל אובייקט מזהה יחודי, שימוש במזהה יחיד מספר פעמים היא טעות נפוצה שלא רק מונעת ואלידציה של עמוד אלא גם יכולה לייצר בעיות בדיוק במקרים שכאלה.<br />
היות והפוסטים בוורדפרס הם בעלי מספר מזהה ייחודי, נייצר את שמות האובייקטים בעזרת מספרי הפוסטים. על מנת לעשות את זה נשתמש בפונקציה של וורדפרס שמציגה את מזהה הפוסט.</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;div id=<span class="st0">&quot;comm-&lt;?php the_ID(); ?&gt;&quot;</span> style=<span class="st0">&quot;display: none; text-align:right&quot;</span>&gt; </div>
</li>
<li class="li1">
<div class="de1">&lt; ?php <span class="re0">$withcomments</span> = <span class="kw2">true</span>; comments_template<span class="br0">&#40;</span><span class="br0">&#41;</span>;?&gt; </div>
</li>
<li class="li1">
<div class="de1">&lt;/div&gt; </div>
</li>
</ol>
</div>
<p>ועל מנת לשלב בטריגר ובמעטפת:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;a href=<span class="st0">&quot;#omm-&lt;?php the_ID(); ?&gt;&quot;</span> onclick=<span class="st0">&quot;showhide('omm-&lt; ?php the_ID(); ?&gt;');&quot;</span>&gt; </div>
</li>
<li class="li1">
<div class="de1">הצג תגובות </div>
</li>
<li class="li1">
<div class="de1">&lt;/a&gt;</div>
</li>
</ol>
</div>
<p>ההשמה של הפונקציות הזו צריכה כאמור להיות בתוך הלופ של הצגת הפוסטים. </p>
<p><strong>ולסיום</strong></p>
<p>השיטה המתוארת פה מציגה במהירות ובפשטות את התגובות בעמוד הראשי, אין פה אפקטים מיוחדים (שניתן להוסיף בעזרת jQuary או scriptaculos) של גלישה והרחבה ואין פה עיצובים מתוחכמים (שגם ניתן להגדיר בעזרת קובץ ה Css). ברגע שתתבצע לחיצה על הצגת תגובות יוצגו התגובות והפוקוס יועבר אל אזור התגובות.</p>
<p>חשוב לציין – בשיטה הזו כל התגובות נטענות מראש אל תוך הדף ולכן מגדילה את נפח העמוד. אם מדובר במעט תגובות המציגות טקסט בלבד, זה אינו מהווה בעיה, אך אם מדובר בבלוג שיש לו פוסטים עם מספר רב של תגובות ובעבור כל תגובה מוצג גם ה Gravatar של המשתמש נפח העמוד עלול להיות מפלצתי וזמן הטעינה ארוך במיוחד.</p>
<p>במקרים כאלה, עדיף לעבור לשיטה הרביעית (עדיין לא פורסמה, זה יהפוך ללינקבילי ברגע שכן)</p>
<div id="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="nitzan@n2b.org" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Nitzan Brumer for תגובות בעמוד ראשי, #2" /><input type="hidden" name="currency_code" value="ILS" /><input type="hidden" name="amount" value="" /><input type="image" src="http://n2b.org/wp-content/plugins/buy-me-beer/icon_cafe.png" align="right" style="padding-left:10px;" alt="Buy me a coffee plase" title="Buy me a coffee plase" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=nitzan@n2b.org&amp;currency_code=ILS&amp;amount=&amp;return=&amp;item_name=Nitzan+Brumer+for+תגובות+בעמוד+ראשי,+#2" target="paypal">פוסטים טובים נכתבים עם שחר, כתיבה עם שחר מצריכה כוס קפה טובה. אפשר להסתכל על זה כהשקעה או כאמירת תודה. בבית הקפה פה ליד מוכרים כוס קפה ב 12 שקלים, או קפה ומאפה ב 21 שקלים. </a></div></div>]]></content:encoded>			<wfw:commentRss>http://n2b.org/archives/678/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>&#8235;תגובות בעמוד ראשי #1&#8236;</title>		<link>http://n2b.org/archives/661</link>
		<comments>http://n2b.org/archives/661#comments</comments>
		<pubDate>Sat, 07 Jun 2008 11:38:13 +0000</pubDate>
		<dc:creator>&#8235;~ניצן~&#8236;</dc:creator>				<category><![CDATA[וורדפרס]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[עיצוב]]></category>
		<category><![CDATA[תגובות]]></category>
		<category><![CDATA[האקים]]></category>

		<guid isPermaLink="false">http://n2b.org/?p=661</guid>
		<description><![CDATA[&#8235;פעם בכמה זמן יוצא לי להגיע אל בלוג חדש ובכל פעם אני מתעצבן על אותה הנקודה בדיוק. בעמוד הראשי מפורסמים הפוסטים האחרונים של הבלוג ובתחתית של כל עמוד שכזה מצוי קישור שמציג את מספר התגובות לפוסט. לחיצה על הלינק מעבירה את הקורא אל תוך עמוד הפוסט ישירות אל אזור התגובות. הבעיה מתחילה, כאשר רוצים לחזור [...]&#8236;]]></description>			<content:encoded><![CDATA[<div dir="rtl"><p>פעם בכמה זמן יוצא לי להגיע אל בלוג חדש ובכל פעם אני מתעצבן על אותה הנקודה בדיוק. בעמוד הראשי מפורסמים הפוסטים האחרונים של הבלוג ובתחתית של כל עמוד שכזה מצוי קישור שמציג את מספר התגובות לפוסט. לחיצה על הלינק מעבירה את הקורא אל תוך עמוד הפוסט ישירות אל אזור התגובות. הבעיה מתחילה, כאשר רוצים לחזור אחורה. פתאום מתברר שבכלל היה מעבר עמוד, ומי זוכר איפה בדיוק היה המיקום בדף הקודם ובכלל, כל השימושיות הזו היא מאוד לא נוחה / נכונה מבחינת ממשק משתמש. </p>
<p>בישראבלוג למשל, בתחתית של כל פוסט יש קישור לתגובות כאשר ניתן להציג אותן בתי דרכים &#8211; חלונית פופאפ קופצת או iFrame שנפתח מתחת לפוסט. כך או כך, הגולש נשאר באותו העמוד ולא נשלח לטייל ברחבי הבלוג. חשבתי שאני היחיד שזה מעצבן אותו, אבל לאחרונה גל מור שידרג את הבלוג שלו ו<a href="http://www.holesinthenet.co.il/?p=744">העלה </a>את אותה השאלה בדיוק &#8211; כיצד מאפשרים לגולש לראות את התגובות כבר בעמוד הראשי.</p>
<p>בשבועיים האחרונים אני מנסה למצוא פיתרון דומה לאותה השאלה, ניסיתי שלל איפמלמנטציות של לייטבוקסים, ג'אווה סקריפטים והתחכמויות ולבסוף מצאתי שתי דרכים שנראו לי אופטימליות. בעודי מנסה לשפר את אחת הדרכים נתקלתי בדרך השלישית שמובילה לדרך הרביעית. </p>
<p>אז איך עושים את זה? התשובה לכך, בצורה מפתיעה למדי, היא &#8211; פשוט מבקשים יפה מוורדפרס. מסתבר, שיש בוורדפרס פונקציה מובנית שתפקידה, לטפל בהצגה של תגובות בעזרת פופאפים. מדי פעם, בעודי מציץ בתיקיית הקבצים של ערכת עיצוב זו או אחרת נתקלתי לפעמים בקובץ בשם comments-popup.php שלא הצלחתי להבין כיצד משתמשים בו. מסתבר שהקובץ הזה נועד על מנת להציג את התגובות בחלונית פופאפ.<br />
בצורה מעצבנת למדי, התהליך שמתואר דווקא בפוסט הראשון בסידרה מציגה את הדרך השלישית. דרך שלו הייתי נתקל בה כבר בהתחלה היתה מקצרת מזמן את הדרך לפיתרון. </p>
<p>אז אלו הפוסטים המתוכננים בנושא, אני אהפוך אותם ללינקבילים ברגע שהם יתפרסמו.<br />
1. תגובות בעזרת פופאפ. (הפוסט הנוכחי)<br />
2. תגובות ב Div נסתר בעזרת JavaScrip &#8211; <a href="http://n2b.org/archives/678">קישור</a><br />
3. תגובות ב lightbox &#8211; שידרוג של שלב 2 בעזרת תוסף.<br />
4. Ajax? שילוב של דרגכים 1+3.</p>
<p><strong>אזהרה</strong>: השלבים הבאים דורשים התעסקות בקוד של הערכה. לא משהו מסובך יותר מהעתק והדבק אבל גם אלה, כשהם לא נעשים נכון יכולים לגרום לנזק.</p>
<p><strong>הכנת תשתית</strong><br />
למרות שמדובר בפונקציה מובנית, רוב מעצבי הערכות לא מכלילים אותה בערכה שלהם, לחילופין, הם מכניסים אותה לערכה בצורת הערה (מצב כבוי).  לצורך הפעלה של הפונקציה יש לערוך את הקובץ header.php ולחפש את הקריאה הבאה: </p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt; ?php wp_head<span class="br0">&#40;</span><span class="br0">&#41;</span>; <span class="kw2">?&gt;</span></div>
</li>
</ol>
</div>
<p>ולהוסיף ישר לפניה את השורה</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt; ?php comments_popup_script<span class="br0">&#40;</span>width,height<span class="br0">&#41;</span>; <span class="kw2">?&gt;</span></div>
</li>
</ol>
</div>
<p>כמובן שחשוב לבדוק שקובץ ההדר אינו מכיל את השורה המדוברת. חוץ מזה, וורדפרס עצמה נוטה להכניס רווחים בתוך הטקסט כדי שזה לא יהפוך ל php תקני. לכן צריך לבדוק שמוחקים אותם (יש רווח בין ה > לסימן שאלה למשל)</p>
<p>הפונקציה הזו, מייצרת למעשה את קוד הג'אווה סקריפט הנדרש להקפצת החלון, אבל בשביל שהיא תעבוד, צריכים לקרוא לה מתוך העמוד. </p>
<p><strong>הקריאה</strong></p>
<p>כל ערכה בנויה בצורה שונה, ולכן קצת קשה לנחש איזה קובץ צריך לערוך, אם כי הכלל הוא יחסית פשוט &#8211; אם קיים קובץ home.php אז יש לערוך אותו, אם אין קובץ שכזה, יש לערוך את index.php. בתוך הקובץ יש לחפש את הקריאה לתגובות בצורה הישנה. גם כאן, בכל ערכה זה יראה שונה, אבל המבנה הכללי הוא כזה:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">comments_popup_link<span class="br0">&#40;</span><span class="st0">'zero'</span>, <span class="st0">'one'</span>, <span class="st0">'more'</span><span class="br0">&#41;</span>;</div>
</li>
</ol>
</div>
<p>ולהחליף אותו ב:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">comments_popup_link<span class="br0">&#40;</span><span class="st0">'zero'</span>,<span class="st0">'one'</span>,<span class="st0">'more'</span>,<span class="st0">'popupcss'</span>,<span class="st0">'none'</span><span class="br0">&#41;</span>;</div>
</li>
</ol>
</div>
<p>יש פה מספר פרמטרים הניתנים להתאמה.<br />
<strong>zero, one, more </strong>הן הכתוביות שיוצגו עבור אפס תגובות, תגובה אחת או מספר תגובות. ניתן להחליף בכל כיתוב אחר. על מנת להציג את מספר התגובות אפשר להשתמש ב &quot;% תגובות&quot;.<br />
<strong>popupcss</strong> &#8211; זהו שם למחלקת ה css שאחראית על עיצוב הפופאפ.<br />
<strong>none</strong> &#8211; טקסט שיוצג כאשר התגובות לפוסט נעולות (לא ניתן להגיב).<br />
שני הפרמטרים האחרונים אינם בגדר חובה וניתן להשמיט אותם.</p>
<p>שני השלבים הללו ביחד מייצרים קישור לתגובות כפופאפ. אם מדלגים על השלב הראשון, הלינקים הללו יעבדו כמו לינקים רגילים לתגובות &#8211; כלומר, יעבירו את הגולש אל איזור התגובות של הפוסט הרלוונטי.</p>
<p><strong>הצגה וליטוש</strong><br />
על מנת להציג את הפופאפ, צריכה ערכת העיצוב להכיל קובץ יעודי לחלונית הפופאפ. חלק מערכות העיצוב מגיעות עם הקובץ הנדרש ( coments-popup.php) כשהוא כבר מותאם לעיצוב. בערכות הללו לרוב אין צורך לעשות כלום והפופאפ יעבוד היטב &quot;מהקופסא&quot;. בחלק אחר מהערכות  קיים הקובץ כתורשה מערכת העיצוב המקורית שממנה נלקחו הקבצים. במקרים שכאלה יופיע הפופאפ ללא עיצוב או עם עיצוב שאינו תואם את הלוק של הבלוג. בערכות שבהן אין קובץ שכזה, המערכת שולפת את הקובץ המצוי בערכת ברירת המחדל (קובריק שבתיקיה default).<br />
אם התיקיה של העיצוב הנוכחי אינה מכילה את הקובץ המדובר, רצוי להעתיקו מתיקיית ברירת המחדל. את הקובץ החדש ניתן לערוך כך שיהיה בנוי בצורה הרצויה מבחינת סידור האובייקטים. לאחר מכן, יש לייצר את העיצוב המתאים בקובץ ה CSS של הערכה. </p>
<p>מעכשיו, כל גולש שינסה להציג את התגובות יקבל אותן בחלון פופאפ מבלי שיאבד את מיקומו בעמוד הנוכחי. החיסרון העיקרי פה מצוי בעובדה שהתוכן מוצג בחלון פופאפ. לא בדקתי מה קורה פה עם חוסמי פופאפים למיניהם, אני מקווה שהם לא יהוו בעיה.</p>
<div id="buymebeer"><form action="https://www.paypal.com/cgi-bin/webscr" target="paypal" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="nitzan@n2b.org" /><input type="hidden" name="return" value="" /><input type="hidden" name="item_name" value="Nitzan Brumer for תגובות בעמוד ראשי #1" /><input type="hidden" name="currency_code" value="ILS" /><input type="hidden" name="amount" value="" /><input type="image" src="http://n2b.org/wp-content/plugins/buy-me-beer/icon_cafe.png" align="right" style="padding-left:10px;" alt="Buy me a coffee plase" title="Buy me a coffee plase" hspace="3" /></form><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;business=nitzan@n2b.org&amp;currency_code=ILS&amp;amount=&amp;return=&amp;item_name=Nitzan+Brumer+for+תגובות+בעמוד+ראשי+#1" target="paypal">פוסטים טובים נכתבים עם שחר, כתיבה עם שחר מצריכה כוס קפה טובה. אפשר להסתכל על זה כהשקעה או כאמירת תודה. בבית הקפה פה ליד מוכרים כוס קפה ב 12 שקלים, או קפה ומאפה ב 21 שקלים. </a></div></div>]]></content:encoded>			<wfw:commentRss>http://n2b.org/archives/661/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
